1 # RUN: not llvm-mc -triple riscv32 -mattr=+a < %s 2>&1 | FileCheck %s
3 # Final operand must have parentheses
4 amoswap.w a1
, a2
, a3
# CHECK: :[[@LINE]]:19: error: expected '(' or optional integer offset
5 amomin.w a1
, a2
, 1 # CHECK: :[[@LINE]]:20: error: expected '(' after optional integer offset
6 amomin.w a1
, a2
, 1(a3
) # CHECK: :[[@LINE]]:18: error: optional integer offset must be 0
7 lr.w a4
, a5
# CHECK: :[[@LINE]]:10: error: expected '(' or optional integer offset
9 # Only .aq, .rl, and .aqrl suffixes are valid
10 amoxor.w.rlqa a2
, a3
, (a4
) # CHECK: :[[@LINE]]:1: error: unrecognized instruction mnemonic
11 amoor.w.aq.rl a4
, a5
, (a6
) # CHECK: :[[@LINE]]:1: error: unrecognized instruction mnemonic
12 amoor.w. a4
, a5
, (a6
) # CHECK: :[[@LINE]]:1: error: unrecognized instruction mnemonic
14 # lr only takes two operands
15 lr.w s0
, (s1
), s2
# CHECK: :[[@LINE]]:16: error: invalid operand for instruction
17 # Note: errors for use of RV64A instructions for RV32 are checked in