1 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx900
%s
2>&1 | FileCheck
%s
--implicit-check-
not=error
: --strict-whitespace
3 scratch_load_ubyte v1
, v2
, off cpol
:2
4 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: not a valid operand.
5 // CHECK-NEXT
:{{^
}}scratch_load_ubyte v1
, v2
, off cpol
:2
8 scratch_load_ubyte v1
, v2
, off glc slc dlc
9 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: dlc modifier is
not supported on this GPU
10 // CHECK-NEXT
:{{^
}}scratch_load_ubyte v1
, v2
, off glc slc dlc
13 global_atomic_add v
[3:4], v5
, off slc glc
14 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: instruction must
not use glc
15 // CHECK-NEXT
:{{^
}}global_atomic_add v
[3:4], v5
, off slc glc
18 global_atomic_add v0
, v
[1:2], v2
, off glc
1
19 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
20 // CHECK-NEXT
:{{^
}}global_atomic_add v0
, v
[1:2], v2
, off glc
1
23 global_load_dword v3
, v
[0:1], off slc glc noglc
24 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: duplicate cache policy modifier
25 // CHECK-NEXT
:{{^
}}global_load_dword v3
, v
[0:1], off slc glc noglc
28 global_load_dword v3
, v
[0:1], off slc glc glc
29 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: duplicate cache policy modifier
30 // CHECK-NEXT
:{{^
}}global_load_dword v3
, v
[0:1], off slc glc glc
33 global_load_dword v3
, v
[0:1], off slc noglc noglc
34 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: duplicate cache policy modifier
35 // CHECK-NEXT
:{{^
}}global_load_dword v3
, v
[0:1], off slc noglc noglc
38 global_atomic_add v
[3:4], v5
, off slc noglc glc
39 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: duplicate cache policy modifier
40 // CHECK-NEXT
:{{^
}}global_atomic_add v
[3:4], v5
, off slc noglc glc
43 s_load_dword s1
, s
[2:3], 0xfc glc slc
44 // CHECK
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid cache policy for SMEM instruction
45 // CHECK-NEXT
:{{^
}}s_load_dword s1
, s
[2:3], 0xfc glc slc