2 # RUN: not llvm-mc -triple=riscv64 -riscv-no-aliases < %s -o /dev/null 2>&1 | FileCheck %s
3 # RUN: not llvm-mc -triple=riscv64 < %s 2>&1 -o /dev/null | FileCheck %s
5 li t5
, 0x10000000000000000 # CHECK: :[[@LINE]]:8: error: unknown operand
6 li t4
, foo
# CHECK: :[[@LINE]]:8: error: operand must be a constant 64-bit integer
8 rdinstreth x29
# CHECK: :[[@LINE]]:1: error: instruction use requires an option to be enabled
9 rdcycleh x27
# CHECK: :[[@LINE]]:1: error: instruction use requires an option to be enabled
10 rdtimeh x28
# CHECK: :[[@LINE]]:1: error: instruction use requires an option to be enabled
12 sll x2
, x3
, 64 # CHECK: :[[@LINE]]:13: error: immediate must be an integer in the range [0, 63]
13 srl x2
, x3
, 64 # CHECK: :[[@LINE]]:13: error: immediate must be an integer in the range [0, 63]
14 sra x2
, x3
, 64 # CHECK: :[[@LINE]]:13: error: immediate must be an integer in the range [0, 63]
16 sll x2
, x3
, -1 # CHECK: :[[@LINE]]:13: error: immediate must be an integer in the range [0, 63]
17 srl x2
, x3
, -2 # CHECK: :[[@LINE]]:13: error: immediate must be an integer in the range [0, 63]
18 sra x2
, x3
, -3 # CHECK: :[[@LINE]]:13: error: immediate must be an integer in the range [0, 63]
20 sllw x2
, x3
, 32 # CHECK: :[[@LINE]]:14: error: immediate must be an integer in the range [0, 31]
21 srlw x2
, x3
, 32 # CHECK: :[[@LINE]]:14: error: immediate must be an integer in the range [0, 31]
22 sraw x2
, x3
, 32 # CHECK: :[[@LINE]]:14: error: immediate must be an integer in the range [0, 31]
24 sllw x2
, x3
, -1 # CHECK: :[[@LINE]]:14: error: immediate must be an integer in the range [0, 31]
25 srlw x2
, x3
, -2 # CHECK: :[[@LINE]]:14: error: immediate must be an integer in the range [0, 31]
26 sraw x2
, x3
, -3 # CHECK: :[[@LINE]]:14: error: immediate must be an integer in the range [0, 31]