1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
|
// RUN: not llvm-mc -arch=amdgcn -mcpu=tonga %s 2>&1 | FileCheck -check-prefix=NOVI --implicit-check-not=error: %s
s_mov_b32 s1, s 1
// NOVI: error: invalid operand for instruction
s_mov_b32 s1, s[0 1
// NOVI: error: expected a closing square bracket
s_mov_b32 s1, s[0:0 1
// NOVI: error: expected a closing square bracket
s_mov_b32 s1, [s[0 1
// NOVI: error: expected a closing square bracket
s_mov_b32 s1, [s[0:1] 1
// NOVI: error: expected a single 32-bit register
s_mov_b32 s1, [s0, 1
// NOVI: error: expected a register or a list of registers
s_mov_b32 s1, s999 1
// NOVI: error: register index is out of range
s_mov_b32 s1, s[1:2] 1
// NOVI: error: invalid register alignment
s_mov_b32 s1, s[0:2] 1
// NOVI: error: invalid operand for instruction
s_mov_b32 s1, xnack_mask_lo 1
// NOVI: error: register not available on this GPU
s_mov_b32 s1, s s0
// NOVI: error: invalid operand for instruction
s_mov_b32 s1, s[0 s0
// NOVI: error: expected a closing square bracket
s_mov_b32 s1, s[0:0 s0
// NOVI: error: expected a closing square bracket
s_mov_b32 s1, [s[0 s0
// NOVI: error: expected a closing square bracket
s_mov_b32 s1, [s[0:1] s0
// NOVI: error: expected a single 32-bit register
s_mov_b32 s1, [s0, s0
// NOVI: error: registers in a list must have consecutive indices
s_mov_b32 s1, s999 s0
// NOVI: error: register index is out of range
s_mov_b32 s1, s[1:2] s0
// NOVI: error: invalid register alignment
s_mov_b32 s1, s[0:2] vcc_lo
// NOVI: error: invalid operand for instruction
s_mov_b32 s1, xnack_mask_lo s1
// NOVI: error: register not available on this GPU
exp mrt0 v1, v2, v3, v4000 off
// NOVI: error: register index is out of range
v_add_f64 v[0:1], v[0:1], v[0xF00000001:0x2]
// NOVI: error: invalid register index
v_add_f64 v[0:1], v[0:1], v[0x1:0xF00000002]
// NOVI: error: invalid register index
s_mov_b32 s1, s[0:-1]
// NOVI: error: invalid register index
s_mov_b64 s[10:11], [exec_lo,vcc_hi]
// NOVI: error: register does not fit in the list
s_mov_b64 s[10:11], [exec_hi,exec_lo]
// NOVI: error: register does not fit in the list
s_mov_b64 s[10:11], [exec_lo,exec_lo]
// NOVI: error: register does not fit in the list
s_mov_b64 s[10:11], [exec,exec_lo]
// NOVI: error: register does not fit in the list
s_mov_b64 s[10:11], [exec_lo,exec]
// NOVI: error: register does not fit in the list
s_mov_b64 s[10:11], [exec_lo,s0]
// NOVI: error: registers in a list must be of the same kind
s_mov_b64 s[10:11], [s0,exec_lo]
// NOVI: error: registers in a list must be of the same kind
s_mov_b64 s[10:11], [s0,exec]
// NOVI: error: registers in a list must be of the same kind
s_mov_b64 s[10:11], [s0,v1]
// NOVI: error: registers in a list must be of the same kind
s_mov_b64 s[10:11], [v0,s1]
// NOVI: error: registers in a list must be of the same kind
s_mov_b64 s[10:11], [s0,s0]
// NOVI: error: registers in a list must have consecutive indices
s_mov_b64 s[10:11], [s0,s2]
// NOVI: error: registers in a list must have consecutive indices
s_mov_b64 s[10:11], [s2,s1]
// NOVI: error: registers in a list must have consecutive indices
s_mov_b64 s[10:11], [a0,a2]
// NOVI: error: registers in a list must have consecutive indices
s_mov_b64 s[10:11], [a0,v1]
// NOVI: error: registers in a list must be of the same kind
s_mov_b64 s[10:11], [s
// NOVI: error: missing register index
s_mov_b64 s[10:11], s[1:0]
// NOVI: error: first register index should not exceed second index
s_mov_b64 s[10:11], [x0,s1]
// NOVI: error: invalid register name
s_mov_b64 s[10:11], [s,s1]
// NOVI: error: missing register index
s_mov_b64 s[10:11], [s01,s1]
// NOVI: error: registers in a list must have consecutive indices
s_mov_b64 s[10:11], [s0x]
// NOVI: error: invalid register index
s_mov_b64 s[10:11], [s[0:1],s[2:3]]
// NOVI: error: expected a single 32-bit register
s_mov_b64 s[10:11], [s0,s[2:3]]
// NOVI: error: expected a single 32-bit register
s_mov_b64 s[10:11], [s0
// NOVI: error: expected a comma or a closing square bracket
s_mov_b64 s[10:11], [s0,s1
// NOVI: error: expected a comma or a closing square bracket
s_mov_b64 s[10:11], s[1:0]
// NOVI: error: first register index should not exceed second index
|