1# RUN: not llvm-mc -triple riscv64 -mattr=+experimental-b,experimental-zbs < %s 2>&1 | FileCheck %s
2
3# Too few operands
4sbclrw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
5# Too few operands
6sbsetw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
7# Too few operands
8sbinvw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
9# Too few operands
10sbextw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
11# Too few operands
12sbclriw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
13# Immediate operand out of range
14sbclriw t0, t1, 32 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 31]
15sbclriw t0, t1, -1 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 31]
16# Too few operands
17sbsetiw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
18# Immediate operand out of range
19sbsetiw t0, t1, 32 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 31]
20sbsetiw t0, t1, -1 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 31]
21# Too few operands
22sbinviw t0, t1 # CHECK: :[[@LINE]]:1: error: too few operands for instruction
23# Immediate operand out of range
24sbinviw t0, t1, 32 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 31]
25sbinviw t0, t1, -1 # CHECK: :[[@LINE]]:17: error: immediate must be an integer in the range [0, 31]
26