1// RUN: not llvm-mc -triple aarch64 -filetype asm -o - %s 2>&1 | FileCheck %s 2 3.arch armv9-a+fp8 4.arch armv9-a+nofp8 5bf1cvtl v0.8h, v0.8b 6// CHECK: error: instruction requires: fp8 7// CHECK: bf1cvtl v0.8h, v0.8b 8 9.arch armv9-a+faminmax 10.arch armv9-a+nofaminmax 11famax v31.4h, v31.4h, v31.4h 12// CHECK: error: instruction requires: faminmax 13// CHECK: famax v31.4h, v31.4h, v31.4h 14 15.arch armv9-a+fp8fma 16.arch armv9-a+nofp8fma 17fmlalb v0.8h, v0.16b, v0.16b 18// CHECK: error: instruction requires: fp8fma 19// CHECK: fmlalb v0.8h, v0.16b, v0.16b 20 21.arch armv9-a+ssve-fp8fma 22.arch armv9-a+nossve-fp8fma 23fmlalb z23.h, z13.b, z0.b[7] 24// CHECK: error: instruction requires: ssve-fp8fma or (sve2 and fp8fma) 25// CHECK: fmlalb z23.h, z13.b, z0.b[7] 26 27.arch armv9-a+fp8dot2 28.arch armv9-a+nofp8dot2 29fdot v31.4h, v0.8b, v0.8b 30// CHECK: error: instruction requires: fp8dot2 31// CHECK: fdot v31.4h, v0.8b, v0.8b 32 33.arch armv9-a+fp8dot4 34.arch armv9-a+nofp8dot4 35fdot v0.2s, v0.8b, v31.8b 36// CHECK: error: instruction requires: fp8dot4 37// CHECK: fdot v0.2s, v0.8b, v31.8b 38 39.arch armv9-a+lut 40.arch armv9-a+nolut 41luti2 v30.8h, { v20.8h }, v31[7] 42// CHECK: error: instruction requires: lut 43// CHECK: luti2 v30.8h, { v20.8h }, v31[7] 44 45.arch armv9-a+sve2+lut 46.arch armv9-a+nosve2+nolut 47luti2 z0.h, { z0.h }, z0[0] 48// CHECK: error: instruction requires: lut sve2 or sme2 49// CHECK: luti2 z0.h, { z0.h }, z0[0] 50 51.arch armv9-a+sme-lutv2 52.arch armv9-a+nosme-lutv2 53luti4 { z0.b - z3.b }, zt0, { z0, z1 } 54// CHECK: error: instruction requires: sme-lutv2 55// CHECK: luti4 { z0.b - z3.b }, zt0, { z0, z1 } 56