brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.6 KiB · 09d2a9a Raw
111 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve < %s \2// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme < %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=+sve < %s \8// RUN:        | llvm-objdump -d --mattr=+sve - | FileCheck %s --check-prefix=CHECK-INST9// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sve < %s \10// RUN:   | llvm-objdump -d --mattr=-sve - | FileCheck %s --check-prefix=CHECK-UNKNOWN11 12insr    z0.b, w013// CHECK-INST: insr    z0.b, w014// CHECK-ENCODING: [0x00,0x38,0x24,0x05]15// CHECK-ERROR: instruction requires: sve or sme16// CHECK-UNKNOWN: 05243800 <unknown>17 18insr    z0.h, w019// CHECK-INST: insr    z0.h, w020// CHECK-ENCODING: [0x00,0x38,0x64,0x05]21// CHECK-ERROR: instruction requires: sve or sme22// CHECK-UNKNOWN: 05643800 <unknown>23 24insr    z0.s, w025// CHECK-INST: insr    z0.s, w026// CHECK-ENCODING: [0x00,0x38,0xa4,0x05]27// CHECK-ERROR: instruction requires: sve or sme28// CHECK-UNKNOWN: 05a43800 <unknown>29 30insr    z0.d, x031// CHECK-INST: insr    z0.d, x032// CHECK-ENCODING: [0x00,0x38,0xe4,0x05]33// CHECK-ERROR: instruction requires: sve or sme34// CHECK-UNKNOWN: 05e43800 <unknown>35 36insr    z31.b, wzr37// CHECK-INST: insr    z31.b, wzr38// CHECK-ENCODING: [0xff,0x3b,0x24,0x05]39// CHECK-ERROR: instruction requires: sve or sme40// CHECK-UNKNOWN: 05243bff <unknown>41 42insr    z31.h, wzr43// CHECK-INST: insr    z31.h, wzr44// CHECK-ENCODING: [0xff,0x3b,0x64,0x05]45// CHECK-ERROR: instruction requires: sve or sme46// CHECK-UNKNOWN: 05643bff <unknown>47 48insr    z31.s, wzr49// CHECK-INST: insr    z31.s, wzr50// CHECK-ENCODING: [0xff,0x3b,0xa4,0x05]51// CHECK-ERROR: instruction requires: sve or sme52// CHECK-UNKNOWN: 05a43bff <unknown>53 54insr    z31.d, xzr55// CHECK-INST: insr    z31.d, xzr56// CHECK-ENCODING: [0xff,0x3b,0xe4,0x05]57// CHECK-ERROR: instruction requires: sve or sme58// CHECK-UNKNOWN: 05e43bff <unknown>59 60insr    z31.b, b3161// CHECK-INST: insr    z31.b, b3162// CHECK-ENCODING: [0xff,0x3b,0x34,0x05]63// CHECK-ERROR: instruction requires: sve or sme64// CHECK-UNKNOWN: 05343bff <unknown>65 66insr    z31.h, h3167// CHECK-INST: insr    z31.h, h3168// CHECK-ENCODING: [0xff,0x3b,0x74,0x05]69// CHECK-ERROR: instruction requires: sve or sme70// CHECK-UNKNOWN: 05743bff <unknown>71 72insr    z31.s, s3173// CHECK-INST: insr    z31.s, s3174// CHECK-ENCODING: [0xff,0x3b,0xb4,0x05]75// CHECK-ERROR: instruction requires: sve or sme76// CHECK-UNKNOWN: 05b43bff <unknown>77 78insr    z31.d, d3179// CHECK-INST: insr    z31.d, d3180// CHECK-ENCODING: [0xff,0x3b,0xf4,0x05]81// CHECK-ERROR: instruction requires: sve or sme82// CHECK-UNKNOWN: 05f43bff <unknown>83 84 85// --------------------------------------------------------------------------//86// Test compatibility with MOVPRFX instruction.87 88movprfx z31, z689// CHECK-INST: movprfx	z31, z690// CHECK-ENCODING: [0xdf,0xbc,0x20,0x04]91// CHECK-ERROR: instruction requires: sve or sme92// CHECK-UNKNOWN: 0420bcdf <unknown>93 94insr    z31.d, xzr95// CHECK-INST: insr	z31.d, xzr96// CHECK-ENCODING: [0xff,0x3b,0xe4,0x05]97// CHECK-ERROR: instruction requires: sve or sme98// CHECK-UNKNOWN: 05e43bff <unknown>99 100movprfx z4, z6101// CHECK-INST: movprfx	z4, z6102// CHECK-ENCODING: [0xc4,0xbc,0x20,0x04]103// CHECK-ERROR: instruction requires: sve or sme104// CHECK-UNKNOWN: 0420bcc4 <unknown>105 106insr    z4.d, d31107// CHECK-INST: insr	z4.d, d31108// CHECK-ENCODING: [0xe4,0x3b,0xf4,0x05]109// CHECK-ERROR: instruction requires: sve or sme110// CHECK-UNKNOWN: 05f43be4 <unknown>111