1# RUN: llvm-mc -triple=riscv64 -show-encoding --mattr=+experimental-v %s \ 2# RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST 3# RUN: not llvm-mc -triple=riscv64 -show-encoding %s 2>&1 \ 4# RUN: | FileCheck %s --check-prefix=CHECK-ERROR 5# RUN: llvm-mc -triple=riscv64 -filetype=obj --mattr=+experimental-v %s \ 6# RUN: | llvm-objdump -d --mattr=+experimental-v - \ 7# RUN: | FileCheck %s --check-prefix=CHECK-INST 8# RUN: llvm-mc -triple=riscv64 -filetype=obj --mattr=+experimental-v %s \ 9# RUN: | llvm-objdump -d - | FileCheck %s --check-prefix=CHECK-UNKNOWN 10 11vmfeq.vv v8, v4, v20, v0.t 12# CHECK-INST: vmfeq.vv v8, v4, v20, v0.t 13# CHECK-ENCODING: [0x57,0x14,0x4a,0x60] 14# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 15# CHECK-UNKNOWN: 57 14 4a 60 <unknown> 16 17vmfeq.vv v8, v4, v20 18# CHECK-INST: vmfeq.vv v8, v4, v20 19# CHECK-ENCODING: [0x57,0x14,0x4a,0x62] 20# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 21# CHECK-UNKNOWN: 57 14 4a 62 <unknown> 22 23vmfeq.vf v8, v4, fa0, v0.t 24# CHECK-INST: vmfeq.vf v8, v4, fa0, v0.t 25# CHECK-ENCODING: [0x57,0x54,0x45,0x60] 26# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 27# CHECK-UNKNOWN: 57 54 45 60 <unknown> 28 29vmfeq.vf v8, v4, fa0 30# CHECK-INST: vmfeq.vf v8, v4, fa0 31# CHECK-ENCODING: [0x57,0x54,0x45,0x62] 32# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 33# CHECK-UNKNOWN: 57 54 45 62 <unknown> 34 35vmfne.vv v8, v4, v20, v0.t 36# CHECK-INST: vmfne.vv v8, v4, v20, v0.t 37# CHECK-ENCODING: [0x57,0x14,0x4a,0x70] 38# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 39# CHECK-UNKNOWN: 57 14 4a 70 <unknown> 40 41vmfne.vv v8, v4, v20 42# CHECK-INST: vmfne.vv v8, v4, v20 43# CHECK-ENCODING: [0x57,0x14,0x4a,0x72] 44# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 45# CHECK-UNKNOWN: 57 14 4a 72 <unknown> 46 47vmfne.vf v8, v4, fa0, v0.t 48# CHECK-INST: vmfne.vf v8, v4, fa0, v0.t 49# CHECK-ENCODING: [0x57,0x54,0x45,0x70] 50# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 51# CHECK-UNKNOWN: 57 54 45 70 <unknown> 52 53vmfne.vf v8, v4, fa0 54# CHECK-INST: vmfne.vf v8, v4, fa0 55# CHECK-ENCODING: [0x57,0x54,0x45,0x72] 56# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 57# CHECK-UNKNOWN: 57 54 45 72 <unknown> 58 59vmflt.vv v8, v4, v20, v0.t 60# CHECK-INST: vmflt.vv v8, v4, v20, v0.t 61# CHECK-ENCODING: [0x57,0x14,0x4a,0x6c] 62# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 63# CHECK-UNKNOWN: 57 14 4a 6c <unknown> 64 65vmflt.vv v8, v4, v20 66# CHECK-INST: vmflt.vv v8, v4, v20 67# CHECK-ENCODING: [0x57,0x14,0x4a,0x6e] 68# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 69# CHECK-UNKNOWN: 57 14 4a 6e <unknown> 70 71vmflt.vf v8, v4, fa0, v0.t 72# CHECK-INST: vmflt.vf v8, v4, fa0, v0.t 73# CHECK-ENCODING: [0x57,0x54,0x45,0x6c] 74# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 75# CHECK-UNKNOWN: 57 54 45 6c <unknown> 76 77vmflt.vf v8, v4, fa0 78# CHECK-INST: vmflt.vf v8, v4, fa0 79# CHECK-ENCODING: [0x57,0x54,0x45,0x6e] 80# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 81# CHECK-UNKNOWN: 57 54 45 6e <unknown> 82 83vmfle.vv v8, v4, v20, v0.t 84# CHECK-INST: vmfle.vv v8, v4, v20, v0.t 85# CHECK-ENCODING: [0x57,0x14,0x4a,0x64] 86# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 87# CHECK-UNKNOWN: 57 14 4a 64 <unknown> 88 89vmfle.vv v8, v4, v20 90# CHECK-INST: vmfle.vv v8, v4, v20 91# CHECK-ENCODING: [0x57,0x14,0x4a,0x66] 92# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 93# CHECK-UNKNOWN: 57 14 4a 66 <unknown> 94 95vmfle.vf v8, v4, fa0, v0.t 96# CHECK-INST: vmfle.vf v8, v4, fa0, v0.t 97# CHECK-ENCODING: [0x57,0x54,0x45,0x64] 98# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 99# CHECK-UNKNOWN: 57 54 45 64 <unknown> 100 101vmfle.vf v8, v4, fa0 102# CHECK-INST: vmfle.vf v8, v4, fa0 103# CHECK-ENCODING: [0x57,0x54,0x45,0x66] 104# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 105# CHECK-UNKNOWN: 57 54 45 66 <unknown> 106 107vmfgt.vf v8, v4, fa0, v0.t 108# CHECK-INST: vmfgt.vf v8, v4, fa0, v0.t 109# CHECK-ENCODING: [0x57,0x54,0x45,0x74] 110# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 111# CHECK-UNKNOWN: 57 54 45 74 <unknown> 112 113vmfgt.vf v8, v4, fa0 114# CHECK-INST: vmfgt.vf v8, v4, fa0 115# CHECK-ENCODING: [0x57,0x54,0x45,0x76] 116# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 117# CHECK-UNKNOWN: 57 54 45 76 <unknown> 118 119vmfge.vf v8, v4, fa0, v0.t 120# CHECK-INST: vmfge.vf v8, v4, fa0, v0.t 121# CHECK-ENCODING: [0x57,0x54,0x45,0x7c] 122# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 123# CHECK-UNKNOWN: 57 54 45 7c <unknown> 124 125vmfge.vf v8, v4, fa0 126# CHECK-INST: vmfge.vf v8, v4, fa0 127# CHECK-ENCODING: [0x57,0x54,0x45,0x7e] 128# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 129# CHECK-UNKNOWN: 57 54 45 7e <unknown> 130 131vmfgt.vv v8, v20, v4, v0.t 132# CHECK-INST: vmflt.vv v8, v4, v20, v0.t 133# CHECK-ENCODING: [0x57,0x14,0x4a,0x6c] 134# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 135# CHECK-UNKNOWN: 57 14 4a 6c <unknown> 136 137vmfgt.vv v8, v20, v4 138# CHECK-INST: vmflt.vv v8, v4, v20 139# CHECK-ENCODING: [0x57,0x14,0x4a,0x6e] 140# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 141# CHECK-UNKNOWN: 57 14 4a 6e <unknown> 142 143vmfge.vv v8, v20, v4, v0.t 144# CHECK-INST: vmfle.vv v8, v4, v20, v0.t 145# CHECK-ENCODING: [0x57,0x14,0x4a,0x64] 146# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 147# CHECK-UNKNOWN: 57 14 4a 64 <unknown> 148 149vmfge.vv v8, v20, v4 150# CHECK-INST: vmfle.vv v8, v4, v20 151# CHECK-ENCODING: [0x57,0x14,0x4a,0x66] 152# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 153# CHECK-UNKNOWN: 57 14 4a 66 <unknown> 154 155vmfeq.vv v0, v4, v20, v0.t 156# CHECK-INST: vmfeq.vv v0, v4, v20, v0.t 157# CHECK-ENCODING: [0x57,0x10,0x4a,0x60] 158# CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) 159# CHECK-UNKNOWN: 57 10 4a 60 <unknown> 160