121 lines · plain
1# RUN: not llvm-mc -triple xtensa %s 2>&1 | FileCheck %s2 3LBL0:4 5# Out of range immediates6 7# imm88addi a1, a2, 3009# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [-128, 127]10 11# imm812addi a1, a2, -12913# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [-128, 127]14 15# imm8_sh816addmi a1, a2, 3317# CHECK: :[[#@LINE-1]]:15: error: expected immediate in range [-32768, 32512], first 8 bits should be zero18 19# shimm1_3120slli a1, a2, 021# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [1, 31]22 23# uimm424srli a1, a2, 1625# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [0, 15]26 27# uimm528srai a2, a3, 3229# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [0, 31]30 31# imm1_1632extui a1, a3, 1, 1733# CHECK: :[[#@LINE-1]]:18: error: expected immediate in range [1, 16]34 35# offset8m836s8i a1, a2, 30037# CHECK: :[[#@LINE-1]]:13: error: expected immediate in range [0, 255]38 39# offset16m840l16si a1, a2, 51241# CHECK: :[[#@LINE-1]]:15: error: expected immediate in range [0, 510], first bit should be zero42 43# offset32m844l32i a1, a2, 102445# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [0, 1020], first 2 bits should be zero46 47# b4const48beqi a1, 257, LBL049# CHECK: :[[#@LINE-1]]:10: error: expected b4const immediate50 51# b4constu52bgeui a9, 32000, LBL053# CHECK: :[[#@LINE-1]]:11: error: expected b4constu immediate54 55# Invalid number of operands56addi a1, a257# CHECK: :[[#@LINE-1]]:1: error: too few operands for instruction58addi a1, a2, 4, 459# CHECK: :[[#@LINE-1]]:17: error: invalid operand for instruction60 61# Invalid mnemonics62aaa a10, a1263# CHECK: :[[#@LINE-1]]:1: error: unrecognized instruction mnemonic64 65# Invalid operand types66and sp, a2, 1067# CHECK: :[[#@LINE-1]]:13: error: invalid operand for instruction68addi sp, a1, a269# CHECK: :[[#@LINE-1]]:14: error: expected immediate in range [-128, 127]70 71# Check invalid register names for different formats72# Instruction format RRR73or r2, sp, a374# CHECK: :[[#@LINE-1]]:4: error: invalid operand for instruction75and a1, r10, a376# CHECK: :[[#@LINE-1]]:9: error: invalid operand for instruction77sub a1, sp, a10078# CHECK: :[[#@LINE-1]]:13: error: invalid operand for instruction79 80# Instruction format RRI881addi a101, sp, 1082# CHECK: :[[#@LINE-1]]:6: error: invalid operand for instruction83addi a1, r10, 1084# CHECK: :[[#@LINE-1]]:10: error: invalid operand for instruction85 86# Instruction format RSR87wsr.uregister a288# CHECK: :[[#@LINE-1]]:1: error: invalid register name89wsr a2, uregister90# CHECK: :[[#@LINE-1]]:9: error: invalid operand for instruction91 92# Instruction format BRI1293beqz b1, LBL094# CHECK: :[[#@LINE-1]]:6: error: invalid operand for instruction95# Instruction format BRI896bltui r7, 16, LBL097# CHECK: :[[#@LINE-1]]:7: error: invalid operand for instruction98 99# Instruction format CALLX100callx0 r10101# CHECK: :[[#@LINE-1]]:8: error: invalid operand for instruction102 103# Check invalid operands order for different formats104# Instruction format RRI8105addi a1, 10, a2106# CHECK: :[[#@LINE-1]]:10: error: invalid operand for instruction107 108# Instruction format RSR109wsr sar, a2110# CHECK: :[[#@LINE-1]]:5: error: invalid operand for instruction111 112# Instruction format BRI12113beqz LBL0, a2114# CHECK: :[[#@LINE-1]]:6: error: invalid operand for instruction115 116# Instruction format BRI8117bltui 16, a7, LBL0118# CHECK: :[[#@LINE-1]]:7: error: invalid operand for instruction119bltui a7, LBL0, 16120# CHECK: :[[#@LINE-1]]:19: error: unknown operand121