Home | History | Annotate | Download | only in AArch64
      1 // RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+v8.4a < %s | FileCheck %s --check-prefix=CHECK
      2 // RUN: not llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=-v8.4a < %s 2>&1 | FileCheck %s --check-prefix=CHECK-ERROR
      3 
      4 //------------------------------------------------------------------------------
      5 // Armv8.4-A flag manipulation instructions
      6 //------------------------------------------------------------------------------
      7 
      8   cfinv
      9   setf8 w1
     10   setf8 wzr
     11   setf16 w1
     12   setf16 wzr
     13   rmif x1, #63, #15
     14   rmif xzr, #63, #15
     15 
     16 //CHECK:      cfinv                        // encoding: [0x1f,0x40,0x00,0xd5]
     17 //CHECK-NEXT: setf8 w1                     // encoding: [0x2d,0x08,0x00,0x3a]
     18 //CHECK-NEXT: setf8 wzr                    // encoding: [0xed,0x0b,0x00,0x3a]
     19 //CHECK-NEXT: setf16 w1                    // encoding: [0x2d,0x48,0x00,0x3a]
     20 //CHECK-NEXT: setf16 wzr                   // encoding: [0xed,0x4b,0x00,0x3a]
     21 //CHECK-NEXT: rmif x1, #63, #15            // encoding: [0x2f,0x84,0x1f,0xba]
     22 //CHECK-NEXT: rmif xzr, #63, #15           // encoding: [0xef,0x87,0x1f,0xba]
     23 
     24 //CHECK-ERROR:      error: instruction requires: armv8.4a
     25 //CHECK-ERROR-NEXT: cfinv
     26 //CHECK-ERROR-NEXT: ^
     27 //CHECK-ERROR-NEXT: error: instruction requires: armv8.4a
     28 //CHECK-ERROR-NEXT: setf8 w1
     29 //CHECK-ERROR-NEXT: ^
     30 //CHECK-ERROR-NEXT: error: instruction requires: armv8.4a
     31 //CHECK-ERROR-NEXT: setf8 wzr
     32 //CHECK-ERROR-NEXT: ^
     33 //CHECK-ERROR-NEXT: error: instruction requires: armv8.4a
     34 //CHECK-ERROR-NEXT: setf16 w1
     35 //CHECK-ERROR-NEXT: ^
     36 //CHECK-ERROR-NEXT: error: instruction requires: armv8.4a
     37 //CHECK-ERROR-NEXT: setf16 wzr
     38 //CHECK-ERROR-NEXT: ^
     39 //CHECK-ERROR-NEXT: error: instruction requires: armv8.4a
     40 //CHECK-ERROR-NEXT: rmif x1, #63, #15
     41 //CHECK-ERROR-NEXT: ^
     42 //CHECK-ERROR-NEXT: error: instruction requires: armv8.4a
     43 //CHECK-ERROR-NEXT: rmif xzr, #63, #15
     44 //CHECK-ERROR-NEXT: ^
     45