66 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2 < %s \2// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \4// RUN: | FileCheck %s --check-prefix=CHECK-ERROR5// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2 < %s \6// RUN: | llvm-objdump --no-print-imm-hex -d --mattr=+sme2 - \7// RUN: | FileCheck %s --check-prefix=CHECK-INST8// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2 < %s \9// RUN: | llvm-objdump --no-print-imm-hex -d --mattr=-sme2 - \10// RUN: | FileCheck %s --check-prefix=CHECK-UNKNOWN11// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2 < %s \12// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \13// RUN: | llvm-mc -triple=aarch64 -mattr=+sme2 -disassemble -show-encoding \14// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST15 16 17sqrshrn z0.b, {z0.s - z3.s}, #32 // 11000001-01100000-11011100-0000000018// CHECK-INST: sqrshrn z0.b, { z0.s - z3.s }, #3219// CHECK-ENCODING: [0x00,0xdc,0x60,0xc1]20// CHECK-ERROR: instruction requires: sme221// CHECK-UNKNOWN: c160dc00 <unknown>22 23sqrshrn z21.b, {z8.s - z11.s}, #11 // 11000001-01110101-11011101-0001010124// CHECK-INST: sqrshrn z21.b, { z8.s - z11.s }, #1125// CHECK-ENCODING: [0x15,0xdd,0x75,0xc1]26// CHECK-ERROR: instruction requires: sme227// CHECK-UNKNOWN: c175dd15 <unknown>28 29sqrshrn z23.b, {z12.s - z15.s}, #24 // 11000001-01101000-11011101-1001011130// CHECK-INST: sqrshrn z23.b, { z12.s - z15.s }, #2431// CHECK-ENCODING: [0x97,0xdd,0x68,0xc1]32// CHECK-ERROR: instruction requires: sme233// CHECK-UNKNOWN: c168dd97 <unknown>34 35sqrshrn z31.b, {z28.s - z31.s}, #1 // 11000001-01111111-11011111-1001111136// CHECK-INST: sqrshrn z31.b, { z28.s - z31.s }, #137// CHECK-ENCODING: [0x9f,0xdf,0x7f,0xc1]38// CHECK-ERROR: instruction requires: sme239// CHECK-UNKNOWN: c17fdf9f <unknown>40 41 42sqrshrn z0.h, {z0.d - z3.d}, #64 // 11000001-10100000-11011100-0000000043// CHECK-INST: sqrshrn z0.h, { z0.d - z3.d }, #6444// CHECK-ENCODING: [0x00,0xdc,0xa0,0xc1]45// CHECK-ERROR: instruction requires: sme246// CHECK-UNKNOWN: c1a0dc00 <unknown>47 48sqrshrn z21.h, {z8.d - z11.d}, #11 // 11000001-11110101-11011101-0001010149// CHECK-INST: sqrshrn z21.h, { z8.d - z11.d }, #1150// CHECK-ENCODING: [0x15,0xdd,0xf5,0xc1]51// CHECK-ERROR: instruction requires: sme252// CHECK-UNKNOWN: c1f5dd15 <unknown>53 54sqrshrn z23.h, {z12.d - z15.d}, #24 // 11000001-11101000-11011101-1001011155// CHECK-INST: sqrshrn z23.h, { z12.d - z15.d }, #2456// CHECK-ENCODING: [0x97,0xdd,0xe8,0xc1]57// CHECK-ERROR: instruction requires: sme258// CHECK-UNKNOWN: c1e8dd97 <unknown>59 60sqrshrn z31.h, {z28.d - z31.d}, #1 // 11000001-11111111-11011111-1001111161// CHECK-INST: sqrshrn z31.h, { z28.d - z31.d }, #162// CHECK-ENCODING: [0x9f,0xdf,0xff,0xc1]63// CHECK-ERROR: instruction requires: sme264// CHECK-UNKNOWN: c1ffdf9f <unknown>65 66