1 // RUN: not llvm-mc -arch=amdgcn %s 2>&1 | FileCheck -check-prefix=GCN %s 2 // RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti %s 2>&1 | FileCheck -check-prefix=GCN -check-prefix=SI %s 3 // RUN: not llvm-mc -arch=amdgcn -mcpu=tonga %s 2>&1 | FileCheck -check-prefix=GCN -check-prefix=VI %s 4 5 s_mov_b32 v1, s2 6 // GCN: error: invalid operand for instruction 7 8 s_mov_b32 s1, v0 9 // GCN: error: invalid operand for instruction 10 11 s_mov_b32 s[1:2], s0 12 // GCN: error: not a valid operand 13 14 s_mov_b32 s0, s[1:2] 15 // GCN: error: not a valid operand 16 17 s_mov_b32 s220, s0 18 // GCN: error: not a valid operand 19 20 s_mov_b32 s0, s220 21 // GCN: error: not a valid operand 22 23 s_mov_b64 s1, s[0:1] 24 // GCN: error: invalid operand for instruction 25 26 s_mov_b64 s[0:1], s1 27 // GCN: error: invalid operand for instruction 28 29 // Immediate greater than 32-bits 30 s_mov_b32 s1, 0xfffffffff 31 // GCN: error: invalid immediate: only 32-bit values are legal 32 33 // Immediate greater than 32-bits 34 s_mov_b64 s[0:1], 0xfffffffff 35 // GCN: error: invalid immediate: only 32-bit values are legal 36 37 s_mov_b64 s[0:1], 0x0000000200000000 38 // GCN: error: invalid immediate: only 32-bit values are legal 39 40 // FIXME: This shoudl probably say failed to parse. 41 s_mov_b32 s 42 // GCN: error: not a valid operand 43 // Out of range register 44 45 s_mov_b32 s102, 1 46 // VI: error: not a valid operand 47 // SI: s_mov_b32 s102, 1 48 49 s_mov_b32 s103, 1 50 // VI: error: not a valid operand 51 // SI: s_mov_b32 s103, 1 52 53 s_mov_b64 s[102:103], -1 54 // VI: error: not a valid operand 55 // SI: s_mov_b64 s[102:103], -1 56