xref: /llvm-project/llvm/test/MC/RISCV/rvv/zvbb.s (revision b27f86b40b20942c0e809128214b43d6edde365a)
1# RUN: llvm-mc -triple=riscv32 -show-encoding --mattr=+zve32x --mattr=+zvbb %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=+zvbb %s \
6# RUN:        | llvm-objdump -d --mattr=+zve32x --mattr=+zvbb --no-print-imm-hex  - \
7# RUN:        | FileCheck %s --check-prefix=CHECK-INST
8# RUN: llvm-mc -triple=riscv32 -filetype=obj --mattr=+zve32x --mattr=+zvbb %s \
9# RUN:        | llvm-objdump -d - | FileCheck %s --check-prefix=CHECK-UNKNOWN
10
11vbrev.v v10, v9, v0.t
12# CHECK-INST: vbrev.v v10, v9, v0.t
13# CHECK-ENCODING: [0x57,0x25,0x95,0x48]
14# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
15# CHECK-UNKNOWN: 48952557 <unknown>
16
17vclz.v v10, v9, v0.t
18# CHECK-INST: vclz.v v10, v9, v0.t
19# CHECK-ENCODING: [0x57,0x25,0x96,0x48]
20# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
21# CHECK-UNKNOWN: 48962557 <unknown>
22
23vcpop.v v10, v9, v0.t
24# CHECK-INST: vcpop.v v10, v9, v0.t
25# CHECK-ENCODING: [0x57,0x25,0x97,0x48]
26# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
27# CHECK-UNKNOWN: 48972557 <unknown>
28
29vctz.v v10, v9, v0.t
30# CHECK-INST: vctz.v v10, v9, v0.t
31# CHECK-ENCODING: [0x57,0xa5,0x96,0x48]
32# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
33# CHECK-UNKNOWN: 4896a557 <unknown>
34
35vwsll.vv v10, v9, v8, v0.t
36# CHECK-INST: vwsll.vv v10, v9, v8, v0.t
37# CHECK-ENCODING: [0x57,0x05,0x94,0xd4]
38# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
39# CHECK-UNKNOWN: d4940557 <unknown>
40
41vwsll.vx v10, v9, a0, v0.t
42# CHECK-INST: vwsll.vx v10, v9, a0, v0.t
43# CHECK-ENCODING: [0x57,0x45,0x95,0xd4]
44# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
45# CHECK-UNKNOWN: d4954557 <unknown>
46
47vwsll.vi v10, v9, 29, v0.t
48# CHECK-INST: vwsll.vi v10, v9, 29, v0.t
49# CHECK-ENCODING: [0x57,0xb5,0x9e,0xd4]
50# CHECK-ERROR: instruction requires the following: 'Zvbb' (Vector basic bit-manipulation instructions){{$}}
51# CHECK-UNKNOWN: d49eb557 <unknown>
52