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
5s_mov_b32 v1, s2
6// GCN: error: invalid operand for instruction
7
8s_mov_b32 s1, v0
9// GCN: error: invalid operand for instruction
10
11s_mov_b32 s[1:2], s0
12// GCN: error: invalid operand for instruction
13
14s_mov_b32 s0, s[1:2]
15// GCN: error: invalid operand for instruction
16
17s_mov_b32 s220, s0
18// GCN: error: invalid operand for instruction
19
20s_mov_b32 s0, s220
21// GCN: error: invalid operand for instruction
22
23s_mov_b64 s1, s[0:1]
24// GCN: error: invalid operand for instruction
25
26s_mov_b64 s[0:1], s1
27// GCN: error: invalid operand for instruction
28
29// Immediate greater than 32-bits
30s_mov_b32 s1, 0xfffffffff
31// GCN: error: invalid immediate: only 32-bit values are legal
32
33// Immediate greater than 32-bits
34s_mov_b64 s[0:1], 0xfffffffff
35// GCN: error: invalid immediate: only 32-bit values are legal
36
37s_mov_b64 s[0:1], 0xfffffffff
38// GCN: error: invalid immediate: only 32-bit values are legal
39
40s_mov_b64 s[0:1], 0xfffffffff
41// GCN: error: invalid immediate: only 32-bit values are legal
42
43s_mov_b64 s[0:1], 0x0000000200000000
44// GCN: error: invalid immediate: only 32-bit values are legal
45
46// FIXME: This shoudl probably say failed to parse.
47s_mov_b32 s
48// GCN: error: invalid operand for instruction
49// Out of range register
50
51s_mov_b32 s102, 1
52// VI: error: invalid operand for instruction
53// SI-NOT: error
54
55s_mov_b32 s103, 1
56// VI: error: invalid operand for instruction
57// SI-NOT: error
58
59s_mov_b64 s[102:103], -1
60// VI: error: invalid operand for instruction
61// SI-NOT: error
62