46 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve2p2,+f16mm < %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=+sve2p2,+f16mm < %s \6// RUN: | llvm-objdump -d --mattr=+sve2p2,+f16mm --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-INST7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sve2p2,+f16mm < %s \8// RUN: | llvm-objdump -d --mattr=-sve2p2,-f16mm --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-UNKNOWN9// Disassemble encoding and check the re-encoding (-show-encoding) matches.10// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sve2p2,+f16mm < %s \11// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \12// RUN: | llvm-mc -triple=aarch64 -mattr=+sve2p2,+f16mm -disassemble -show-encoding \13// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST14 15fmmla z0.h, z0.h, z0.h16// CHECK-INST: fmmla z0.h, z0.h, z0.h17// CHECK-ENCODING: encoding: [0x00,0xe0,0xa0,0x64]18// CHECK-ERROR: instruction requires: f16mm sve2p219// CHECK-UNKNOWN: 64a0e000 <unknown>20 21fmmla z10.h, z10.h, z10.h22// CHECK-INST: fmmla z10.h, z10.h, z10.h23// CHECK-ENCODING: encoding: [0x4a,0xe1,0xaa,0x64]24// CHECK-ERROR: instruction requires: f16mm sve2p225// CHECK-UNKNOWN: 64aae14a <unknown>26 27fmmla z21.h, z21.h, z21.h28// CHECK-INST: fmmla z21.h, z21.h, z21.h29// CHECK-ENCODING: encoding: [0xb5,0xe2,0xb5,0x64]30// CHECK-ERROR: instruction requires: f16mm sve2p231// CHECK-UNKNOWN: 64b5e2b5 <unknown>32 33fmmla z31.h, z31.h, z31.h34// CHECK-INST: fmmla z31.h, z31.h, z31.h35// CHECK-ENCODING: encoding: [0xff,0xe3,0xbf,0x64]36// CHECK-ERROR: instruction requires: f16mm sve2p237// CHECK-UNKNOWN: 64bfe3ff <unknown>38 39movprfx z0, z740fmmla z0.h, z1.h, z2.h41// CHECK-INST: movprfx z0, z742// CHECK-INST: fmmla z0.h, z1.h, z2.h43// CHECK-ENCODING: encoding: [0x20,0xe0,0xa2,0x64]44// CHECK-ERROR: instruction requires: f16mm sve2p245// CHECK-UNKNOWN: 64a2e020 <unknown>46