1 # RUN: not llvm-mc -triple riscv32 -mattr=+experimental-b,experimental-zbp < %s 2>&1 | FileCheck %s
4 gorc t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
6 grev t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
8 gorci t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
9 # Immediate operand out of range
10 gorci t0
, t1
, 32 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
11 gorci t0
, t1
, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
13 grevi t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
14 # Immediate operand out of range
15 grevi t0
, t1
, 32 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
16 grevi t0
, t1
, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
18 shfl t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
20 unshfl t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
22 shfli t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
23 # Immediate operand out of range
24 shfli t0
, t1
, 16 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 15]
25 shfli t0
, t1
, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 15]
27 unshfli t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
28 # Immediate operand out of range
29 unshfli t0
, t1
, 16 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 15]
30 unshfli t0
, t1
, -1 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 15]
32 pack t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
34 packu t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
36 packh t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
38 xperm.n t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
40 xperm.
b t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
42 xperm.h t0
, t1
# CHECK: :[[@LINE]]:1: error: too few operands for instruction
43 gorcw t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
44 grevw t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
45 gorciw t0
, t1
, 0 # CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
46 greviw t0
, t1
, 0 # CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
47 shflw t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
48 unshflw t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
49 packw t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
50 packuw t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set
51 xperm.w t0
, t1
, t2
# CHECK: :[[@LINE]]:1: error: instruction requires the following: RV64I Base Instruction Set