brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.5 KiB · 6cd9f1b Raw
57 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve2p2 < %s \2// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2p2 < %s \4// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST5// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \6// RUN:        | FileCheck %s --check-prefix=CHECK-ERROR7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sve2p2 < %s \8// RUN:        | llvm-objdump -d --mattr=+sve2p2 - | FileCheck %s --check-prefix=CHECK-INST9// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sve2p2 < %s \10// RUN:        | llvm-objdump -d --mattr=-sve2p2 - | FileCheck %s --check-prefix=CHECK-UNKNOWN11// Disassemble encoding and check the re-encoding (-show-encoding) matches.12// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve2p2 < %s \13// RUN:        | sed '/.text/d' | sed 's/.*encoding: //g' \14// RUN:        | llvm-mc -triple=aarch64 -mattr=+sve2p2 -disassemble -show-encoding \15// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST16 17// convert to half18 19fcvt    z0.h, p0/z, z0.s  // 01100100-10011010-10000000-0000000020// CHECK-INST: fcvt    z0.h, p0/z, z0.s21// CHECK-ENCODING: [0x00,0x80,0x9a,0x64]22// CHECK-ERROR: instruction requires: sme2p2 or sve2p223// CHECK-UNKNOWN: 649a8000 <unknown>24 25fcvt    z23.h, p3/z, z13.d  // 01100100-11011010-10001101-1011011126// CHECK-INST: fcvt    z23.h, p3/z, z13.d27// CHECK-ENCODING: [0xb7,0x8d,0xda,0x64]28// CHECK-ERROR: instruction requires: sme2p2 or sve2p229// CHECK-UNKNOWN: 64da8db7 <unknown>30 31// convert to single32 33fcvt    z0.s, p0/z, z0.h  // 01100100-10011010-10100000-0000000034// CHECK-INST: fcvt    z0.s, p0/z, z0.h35// CHECK-ENCODING: [0x00,0xa0,0x9a,0x64]36// CHECK-ERROR: instruction requires: sme2p2 or sve2p237// CHECK-UNKNOWN: 649aa000 <unknown>38 39fcvt    z31.s, p7/z, z31.d  // 01100100-11011010-11011111-1111111140// CHECK-INST: fcvt    z31.s, p7/z, z31.d41// CHECK-ENCODING: [0xff,0xdf,0xda,0x64]42// CHECK-ERROR: instruction requires: sme2p2 or sve2p243// CHECK-UNKNOWN: 64dadfff <unknown>44 45// convert to double46 47fcvt    z21.d, p5/z, z10.h  // 01100100-11011010-10110101-0101010148// CHECK-INST: fcvt    z21.d, p5/z, z10.h49// CHECK-ENCODING: [0x55,0xb5,0xda,0x64]50// CHECK-ERROR: instruction requires: sme2p2 or sve2p251// CHECK-UNKNOWN: 64dab555 <unknown>52 53fcvt    z31.d, p7/z, z31.s  // 01100100-11011010-11111111-1111111154// CHECK-INST: fcvt    z31.d, p7/z, z31.s55// CHECK-ENCODING: [0xff,0xff,0xda,0x64]56// CHECK-ERROR: instruction requires: sme2p2 or sve2p257// CHECK-UNKNOWN: 64daffff <unknown