1# RUN: not llvm-mc -triple riscv32 -mattr=+experimental-b,experimental-zbs < %s 2>&1 | FileCheck %s
2
3# Too few operands
4bclr t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
5# Too few operands
6bset t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
7# Too few operands
8binv t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
9# Too few operands
10bext t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
11# Too few operands
12bclri t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
13# Immediate operand out of range
14bclri t0, t1, 32 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
15bclri t0, t1, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
16# Too few operands
17bseti t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
18# Immediate operand out of range
19bseti t0, t1, 32 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
20bseti t0, t1, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
21# Too few operands
22binvi t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
23# Immediate operand out of range
24binvi t0, t1, 32 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
25binvi t0, t1, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
26# Too few operands
27bexti t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
28# Immediate operand out of range
29bexti t0, t1, 32 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
30bexti t0, t1, -1 # CHECK: :[[@LINE]]:15: error: immediate must be an integer in the range [0, 31]
31