1# RUN: llvm-mc -triple=riscv32 -show-encoding --mattr=+zve32x --mattr=+zvkned %s \ 2# RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST 3# RUN: not llvm-mc -triple=riscv32 -show-encoding %s 2>&1 \ 4# RUN: | FileCheck %s --check-prefix=CHECK-ERROR 5# RUN: llvm-mc -triple=riscv32 -filetype=obj --mattr=+zve32x --mattr=+zvkned %s \ 6# RUN: | llvm-objdump -d --mattr=+zve32x --mattr=+zvkned --no-print-imm-hex - \ 7# RUN: | FileCheck %s --check-prefix=CHECK-INST 8# RUN: llvm-mc -triple=riscv32 -filetype=obj --mattr=+zve32x --mattr=+zvkned %s \ 9# RUN: | llvm-objdump -d - | FileCheck %s --check-prefix=CHECK-UNKNOWN 10 11vaesdf.vv v10, v9 12# CHECK-INST: vaesdf.vv v10, v9 13# CHECK-ENCODING: [0x77,0xa5,0x90,0xa2] 14# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 15# CHECK-UNKNOWN: a290a577 <unknown> 16 17vaesdf.vs v10, v9 18# CHECK-INST: vaesdf.vs v10, v9 19# CHECK-ENCODING: [0x77,0xa5,0x90,0xa6] 20# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 21# CHECK-UNKNOWN: a690a577 <unknown> 22 23vaesef.vv v10, v9 24# CHECK-INST: vaesef.vv v10, v9 25# CHECK-ENCODING: [0x77,0xa5,0x91,0xa2] 26# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 27# CHECK-UNKNOWN: a291a577 <unknown> 28 29vaesef.vs v10, v9 30# CHECK-INST: vaesef.vs v10, v9 31# CHECK-ENCODING: [0x77,0xa5,0x91,0xa6] 32# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 33# CHECK-UNKNOWN: a691a577 <unknown> 34 35vaesdm.vv v10, v9 36# CHECK-INST: vaesdm.vv v10, v9 37# CHECK-ENCODING: [0x77,0x25,0x90,0xa2] 38# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 39# CHECK-UNKNOWN: a2902577 <unknown> 40 41vaesdm.vs v10, v9 42# CHECK-INST: vaesdm.vs v10, v9 43# CHECK-ENCODING: [0x77,0x25,0x90,0xa6] 44# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 45# CHECK-UNKNOWN: a6902577 <unknown> 46 47vaesem.vv v10, v9 48# CHECK-INST: vaesem.vv v10, v9 49# CHECK-ENCODING: [0x77,0x25,0x91,0xa2] 50# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 51# CHECK-UNKNOWN: a2912577 <unknown> 52 53vaesem.vs v10, v9 54# CHECK-INST: vaesem.vs v10, v9 55# CHECK-ENCODING: [0x77,0x25,0x91,0xa6] 56# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 57# CHECK-UNKNOWN: a6912577 <unknown> 58 59vaeskf1.vi v10, v9, 1 60# CHECK-INST: vaeskf1.vi v10, v9, 1 61# CHECK-ENCODING: [0x77,0xa5,0x90,0x8a] 62# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 63# CHECK-UNKNOWN: 8a90a577 <unknown> 64 65vaeskf1.vi v10, v9, 31 66# CHECK-INST: vaeskf1.vi v10, v9, 31 67# CHECK-ENCODING: [0x77,0xa5,0x9f,0x8a] 68# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 69# CHECK-UNKNOWN: 8a9fa577 <unknown> 70 71vaeskf2.vi v10, v9, 2 72# CHECK-INST: vaeskf2.vi v10, v9, 2 73# CHECK-ENCODING: [0x77,0x25,0x91,0xaa] 74# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 75# CHECK-UNKNOWN: aa912577 <unknown> 76 77vaeskf2.vi v10, v9, 31 78# CHECK-INST: vaeskf2.vi v10, v9, 31 79# CHECK-ENCODING: [0x77,0xa5,0x9f,0xaa] 80# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 81# CHECK-UNKNOWN: aa9fa577 <unknown> 82 83vaesz.vs v10, v9 84# CHECK-INST: vaesz.vs v10, v9 85# CHECK-ENCODING: [0x77,0xa5,0x93,0xa6] 86# CHECK-ERROR: instruction requires the following: 'Zvkned' (Vector AES Encryption & Decryption (Single Round)){{$}} 87# CHECK-UNKNOWN: a693a577 <unknown> 88