| # RUN: llvm-mc -triple=riscv64 -show-encoding --mattr=+experimental-v %s \ |
| # RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST |
| # RUN: not llvm-mc -triple=riscv64 -show-encoding %s 2>&1 \ |
| # RUN: | FileCheck %s --check-prefix=CHECK-ERROR |
| # RUN: llvm-mc -triple=riscv64 -filetype=obj --mattr=+experimental-v %s \ |
| # RUN: | llvm-objdump -d --mattr=+experimental-v - \ |
| # RUN: | FileCheck %s --check-prefix=CHECK-INST |
| # RUN: llvm-mc -triple=riscv64 -filetype=obj --mattr=+experimental-v %s \ |
| # RUN: | llvm-objdump -d - | FileCheck %s --check-prefix=CHECK-UNKNOWN |
| |
| vadd.vv v8, v4, v20, v0.t |
| # CHECK-INST: vadd.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x00] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 00 <unknown> |
| |
| vadd.vv v8, v4, v20 |
| # CHECK-INST: vadd.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x02] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 02 <unknown> |
| |
| vadd.vx v8, v4, a0, v0.t |
| # CHECK-INST: vadd.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x00] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 00 <unknown> |
| |
| vadd.vx v8, v4, a0 |
| # CHECK-INST: vadd.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x02] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 02 <unknown> |
| |
| vadd.vi v8, v4, 15, v0.t |
| # CHECK-INST: vadd.vi v8, v4, 15, v0.t |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x00] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 00 <unknown> |
| |
| vadd.vi v8, v4, 15 |
| # CHECK-INST: vadd.vi v8, v4, 15 |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x02] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 02 <unknown> |
| |
| vwaddu.vv v8, v4, v20, v0.t |
| # CHECK-INST: vwaddu.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xc0] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a c0 <unknown> |
| |
| vwaddu.vv v8, v4, v20 |
| # CHECK-INST: vwaddu.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xc2] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a c2 <unknown> |
| |
| vwaddu.vx v8, v4, a0, v0.t |
| # CHECK-INST: vwaddu.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xc0] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 c0 <unknown> |
| |
| vwaddu.vx v8, v4, a0 |
| # CHECK-INST: vwaddu.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xc2] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 c2 <unknown> |
| |
| vwadd.vv v8, v4, v20, v0.t |
| # CHECK-INST: vwadd.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xc4] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a c4 <unknown> |
| |
| vwadd.vv v8, v4, v20 |
| # CHECK-INST: vwadd.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xc6] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a c6 <unknown> |
| |
| vwadd.vx v8, v4, a0, v0.t |
| # CHECK-INST: vwadd.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xc4] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 c4 <unknown> |
| |
| vwadd.vx v8, v4, a0 |
| # CHECK-INST: vwadd.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xc6] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 c6 <unknown> |
| |
| vwaddu.wv v8, v4, v20, v0.t |
| # CHECK-INST: vwaddu.wv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xd0] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a d0 <unknown> |
| |
| vwaddu.wv v8, v4, v20 |
| # CHECK-INST: vwaddu.wv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xd2] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a d2 <unknown> |
| |
| vwaddu.wx v8, v4, a0, v0.t |
| # CHECK-INST: vwaddu.wx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xd0] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 d0 <unknown> |
| |
| vwaddu.wx v8, v4, a0 |
| # CHECK-INST: vwaddu.wx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xd2] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 d2 <unknown> |
| |
| vwadd.wv v8, v4, v20, v0.t |
| # CHECK-INST: vwadd.wv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xd4] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a d4 <unknown> |
| |
| vwadd.wv v8, v4, v20 |
| # CHECK-INST: vwadd.wv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0xd6] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a d6 <unknown> |
| |
| vwadd.wx v8, v4, a0, v0.t |
| # CHECK-INST: vwadd.wx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xd4] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 d4 <unknown> |
| |
| vwadd.wx v8, v4, a0 |
| # CHECK-INST: vwadd.wx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x64,0x45,0xd6] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 d6 <unknown> |
| |
| vadc.vvm v8, v4, v20, v0 |
| # CHECK-INST: vadc.vvm v8, v4, v20, v0 |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x40] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 40 <unknown> |
| |
| vadc.vvm v4, v4, v20, v0 |
| # CHECK-INST: vadc.vvm v4, v4, v20, v0 |
| # CHECK-ENCODING: [0x57,0x02,0x4a,0x40] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 02 4a 40 <unknown> |
| |
| vadc.vvm v8, v4, v8, v0 |
| # CHECK-INST: vadc.vvm v8, v4, v8, v0 |
| # CHECK-ENCODING: [0x57,0x04,0x44,0x40] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 44 40 <unknown> |
| |
| vadc.vxm v8, v4, a0, v0 |
| # CHECK-INST: vadc.vxm v8, v4, a0, v0 |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x40] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 40 <unknown> |
| |
| vadc.vim v8, v4, 15, v0 |
| # CHECK-INST: vadc.vim v8, v4, 15, v0 |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x40] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 40 <unknown> |
| |
| vmadc.vvm v8, v4, v20, v0 |
| # CHECK-INST: vmadc.vvm v8, v4, v20, v0 |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x44] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 44 <unknown> |
| |
| vmadc.vvm v4, v4, v20, v0 |
| # CHECK-INST: vmadc.vvm v4, v4, v20, v0 |
| # CHECK-ENCODING: [0x57,0x02,0x4a,0x44] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 02 4a 44 <unknown> |
| |
| vmadc.vvm v8, v4, v8, v0 |
| # CHECK-INST: vmadc.vvm v8, v4, v8, v0 |
| # CHECK-ENCODING: [0x57,0x04,0x44,0x44] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 44 44 <unknown> |
| |
| vmadc.vxm v8, v4, a0, v0 |
| # CHECK-INST: vmadc.vxm v8, v4, a0, v0 |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x44] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 44 <unknown> |
| |
| vmadc.vim v8, v4, 15, v0 |
| # CHECK-INST: vmadc.vim v8, v4, 15, v0 |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x44] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 44 <unknown> |
| |
| vmadc.vv v8, v4, v20 |
| # CHECK-INST: vmadc.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x46] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 46 <unknown> |
| |
| vmadc.vx v8, v4, a0 |
| # CHECK-INST: vmadc.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x46] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 46 <unknown> |
| |
| vmadc.vi v8, v4, 15 |
| # CHECK-INST: vmadc.vi v8, v4, 15 |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x46] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 46 <unknown> |
| |
| vsaddu.vv v8, v4, v20, v0.t |
| # CHECK-INST: vsaddu.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x80] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 80 <unknown> |
| |
| vsaddu.vv v8, v4, v20 |
| # CHECK-INST: vsaddu.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x82] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 82 <unknown> |
| |
| vsaddu.vx v8, v4, a0, v0.t |
| # CHECK-INST: vsaddu.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x80] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 80 <unknown> |
| |
| vsaddu.vx v8, v4, a0 |
| # CHECK-INST: vsaddu.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x82] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 82 <unknown> |
| |
| vsaddu.vi v8, v4, 15, v0.t |
| # CHECK-INST: vsaddu.vi v8, v4, 15, v0.t |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x80] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 80 <unknown> |
| |
| vsaddu.vi v8, v4, 15 |
| # CHECK-INST: vsaddu.vi v8, v4, 15 |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x82] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 82 <unknown> |
| |
| vsadd.vv v8, v4, v20, v0.t |
| # CHECK-INST: vsadd.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x84] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 84 <unknown> |
| |
| vsadd.vv v8, v4, v20 |
| # CHECK-INST: vsadd.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x04,0x4a,0x86] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 04 4a 86 <unknown> |
| |
| vsadd.vx v8, v4, a0, v0.t |
| # CHECK-INST: vsadd.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x84] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 84 <unknown> |
| |
| vsadd.vx v8, v4, a0 |
| # CHECK-INST: vsadd.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x44,0x45,0x86] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 44 45 86 <unknown> |
| |
| vsadd.vi v8, v4, 15, v0.t |
| # CHECK-INST: vsadd.vi v8, v4, 15, v0.t |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x84] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 84 <unknown> |
| |
| vsadd.vi v8, v4, 15 |
| # CHECK-INST: vsadd.vi v8, v4, 15 |
| # CHECK-ENCODING: [0x57,0xb4,0x47,0x86] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 b4 47 86 <unknown> |
| |
| vaadd.vv v8, v4, v20, v0.t |
| # CHECK-INST: vaadd.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0x24] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a 24 <unknown> |
| |
| vaadd.vv v8, v4, v20 |
| # CHECK-INST: vaadd.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0x26] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a 26 <unknown> |
| |
| vaadd.vx v8, v4, a0, v0.t |
| # CHECK-INST: vaadd.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x45,0x24] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 24 <unknown> |
| |
| vaadd.vx v8, v4, a0 |
| # CHECK-INST: vaadd.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x64,0x45,0x26] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 26 <unknown> |
| |
| vaaddu.vv v8, v4, v20, v0.t |
| # CHECK-INST: vaaddu.vv v8, v4, v20, v0.t |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0x20] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a 20 <unknown> |
| |
| vaaddu.vv v8, v4, v20 |
| # CHECK-INST: vaaddu.vv v8, v4, v20 |
| # CHECK-ENCODING: [0x57,0x24,0x4a,0x22] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 24 4a 22 <unknown> |
| |
| vaaddu.vx v8, v4, a0, v0.t |
| # CHECK-INST: vaaddu.vx v8, v4, a0, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x45,0x20] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 20 <unknown> |
| |
| vaaddu.vx v8, v4, a0 |
| # CHECK-INST: vaaddu.vx v8, v4, a0 |
| # CHECK-ENCODING: [0x57,0x64,0x45,0x22] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 45 22 <unknown> |
| |
| vwcvt.x.x.v v8, v4, v0.t |
| # CHECK-INST: vwcvt.x.x.v v8, v4, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x40,0xc4] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 40 c4 <unknown> |
| |
| vwcvt.x.x.v v8, v4 |
| # CHECK-INST: vwadd.vx v8, v4, zero |
| # CHECK-ENCODING: [0x57,0x64,0x40,0xc6] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 40 c6 <unknown> |
| |
| vwcvtu.x.x.v v8, v4, v0.t |
| # CHECK-INST: vwcvtu.x.x.v v8, v4, v0.t |
| # CHECK-ENCODING: [0x57,0x64,0x40,0xc0] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 40 c0 <unknown> |
| |
| vwcvtu.x.x.v v8, v4 |
| # CHECK-INST: vwaddu.vx v8, v4, zero |
| # CHECK-ENCODING: [0x57,0x64,0x40,0xc2] |
| # CHECK-ERROR: instruction requires the following: 'V' (Vector Instructions) |
| # CHECK-UNKNOWN: 57 64 40 c2 <unknown> |