87 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=-sme2 - | 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 17firstp x0, p0, p0.b // 00100101-00100001-10000000-0000000018// CHECK-INST: firstp x0, p0, p0.b19// CHECK-ENCODING: [0x00,0x80,0x21,0x25]20// CHECK-ERROR: instruction requires: sme2p2 or sve2p221// CHECK-UNKNOWN: 25218000 <unknown>22 23firstp x23, p11, p13.b // 00100101-00100001-10101101-1011011124// CHECK-INST: firstp x23, p11, p13.b25// CHECK-ENCODING: [0xb7,0xad,0x21,0x25]26// CHECK-ERROR: instruction requires: sme2p2 or sve2p227// CHECK-UNKNOWN: 2521adb7 <unknown>28 29firstp xzr, p15, p15.b // 00100101-00100001-10111101-1111111130// CHECK-INST: firstp xzr, p15, p15.b31// CHECK-ENCODING: [0xff,0xbd,0x21,0x25]32// CHECK-ERROR: instruction requires: sme2p2 or sve2p233// CHECK-UNKNOWN: 2521bdff <unknown>34 35firstp x0, p0, p0.h // 00100101-01100001-10000000-0000000036// CHECK-INST: firstp x0, p0, p0.h37// CHECK-ENCODING: [0x00,0x80,0x61,0x25]38// CHECK-ERROR: instruction requires: sme2p2 or sve2p239// CHECK-UNKNOWN: 25618000 <unknown>40 41firstp x23, p11, p13.h // 00100101-01100001-10101101-1011011142// CHECK-INST: firstp x23, p11, p13.h43// CHECK-ENCODING: [0xb7,0xad,0x61,0x25]44// CHECK-ERROR: instruction requires: sme2p2 or sve2p245// CHECK-UNKNOWN: 2561adb7 <unknown>46 47firstp xzr, p15, p15.h // 00100101-01100001-10111101-1111111148// CHECK-INST: firstp xzr, p15, p15.h49// CHECK-ENCODING: [0xff,0xbd,0x61,0x25]50// CHECK-ERROR: instruction requires: sme2p2 or sve2p251// CHECK-UNKNOWN: 2561bdff <unknown>52 53firstp x0, p0, p0.s // 00100101-10100001-10000000-0000000054// CHECK-INST: firstp x0, p0, p0.s55// CHECK-ENCODING: [0x00,0x80,0xa1,0x25]56// CHECK-ERROR: instruction requires: sme2p2 or sve2p257// CHECK-UNKNOWN: 25a18000 <unknown>58 59firstp x23, p11, p13.s // 00100101-10100001-10101101-1011011160// CHECK-INST: firstp x23, p11, p13.s61// CHECK-ENCODING: [0xb7,0xad,0xa1,0x25]62// CHECK-ERROR: instruction requires: sme2p2 or sve2p263// CHECK-UNKNOWN: 25a1adb7 <unknown>64 65firstp xzr, p15, p15.s // 00100101-10100001-10111101-1111111166// CHECK-INST: firstp xzr, p15, p15.s67// CHECK-ENCODING: [0xff,0xbd,0xa1,0x25]68// CHECK-ERROR: instruction requires: sme2p2 or sve2p269// CHECK-UNKNOWN: 25a1bdff <unknown>70 71firstp x0, p0, p0.d // 00100101-11100001-10000000-0000000072// CHECK-INST: firstp x0, p0, p0.d73// CHECK-ENCODING: [0x00,0x80,0xe1,0x25]74// CHECK-ERROR: instruction requires: sme2p2 or sve2p275// CHECK-UNKNOWN: 25e18000 <unknown>76 77firstp x23, p11, p13.d // 00100101-11100001-10101101-1011011178// CHECK-INST: firstp x23, p11, p13.d79// CHECK-ENCODING: [0xb7,0xad,0xe1,0x25]80// CHECK-ERROR: instruction requires: sme2p2 or sve2p281// CHECK-UNKNOWN: 25e1adb7 <unknown>82 83firstp xzr, p15, p15.d // 00100101-11100001-10111101-1111111184// CHECK-INST: firstp xzr, p15, p15.d85// CHECK-ENCODING: [0xff,0xbd,0xe1,0x25]86// CHECK-ERROR: instruction requires: sme2p2 or sve2p287// CHECK-UNKNOWN: 25e1bdff <unknown>