1 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=bonaire
-show-encoding
%s | FileCheck
-check-prefix
=GFX7
%s
2 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=tonga
-show-encoding
%s | FileCheck
-check-prefix
=GFX8
%s
3 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx908
-show-encoding
%s | FileCheck
-check-prefix
=GFX9
%s
4 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1010
-show-encoding
%s | FileCheck
-check-prefix
=GFX10PLUS
%s
5 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1100
-show-encoding
%s | FileCheck
-check-prefix
=GFX10PLUS
%s
6 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1200
-show-encoding
%s | FileCheck
-check-prefix
=GFX10PLUS
%s
8 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=bonaire
-show-encoding
%s
2>&1 | FileCheck
-check-prefix
=ERROR-PREGFX9
%s
--implicit-check-
not=error
:
9 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=tonga
-show-encoding
%s
2>&1 | FileCheck
-check-prefix
=ERROR-PREGFX9
%s
--implicit-check-
not=error
:
10 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx908
-show-encoding
%s
2>&1 | FileCheck
-check-prefix
=ERROR
%s
--implicit-check-
not=error
:
11 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1010
-show-encoding
%s
2>&1 | FileCheck
-check-prefix
=ERROR
%s
--implicit-check-
not=error
:
12 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1100
-show-encoding
%s
2>&1 | FileCheck
-check-prefix
=ERROR
%s
--implicit-check-
not=error
:
13 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1200
-show-encoding
%s
2>&1 | FileCheck
-check-prefix
=ERROR
%s
--implicit-check-
not=error
:
15 //==============================================================================
18 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,0)
19 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
20 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,0) ; encoding
: [0x00,0xe0,0x7a,0xd8,0x01,0x00,0x00,0x05]
21 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,0) ; encoding
: [0x00,0xe0,0xd4,0xd8,0x01,0x00,0x00,0x05]
23 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,5)
24 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
25 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,5) ; encoding
: [0x05,0xe0,0x7a,0xd8,0x01,0x00,0x00,0x05]
26 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,5) ; encoding
: [0x05,0xe0,0xd4,0xd8,0x01,0x00,0x00,0x05]
28 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,16)
29 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
30 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,16) ; encoding
: [0x10,0xe0,0x7a,0xd8,0x01,0x00,0x00,0x05]
31 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,16) ; encoding
: [0x10,0xe0,0xd4,0xd8,0x01,0x00,0x00,0x05]
33 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,31)
34 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
35 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,31) ; encoding
: [0x1f,0xe0,0x7a,0xd8,0x01,0x00,0x00,0x05]
36 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,31) ; encoding
: [0x1f,0xe0,0xd4,0xd8,0x01,0x00,0x00,0x05]
38 ds_swizzle_b32 v5
, v1 offset
:0xf000
39 // GFX7
: ds_swizzle_b32 v5
, v1 offset
:61440 ; encoding
: [0x00,0xf0,0xd4,0xd8,0x01,0x00,0x00,0x05]
40 // GFX8
: ds_swizzle_b32 v5
, v1 offset
:61440 ; encoding
: [0x00,0xf0,0x7a,0xd8,0x01,0x00,0x00,0x05]
41 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,0) ; encoding
: [0x00,0xf0,0x7a,0xd8,0x01,0x00,0x00,0x05]
42 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,0) ; encoding
: [0x00,0xf0,0xd4,0xd8,0x01,0x00,0x00,0x05]
45 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,32)
46 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
47 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: FFT swizzle must
be in the interval
[0,31]
49 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,-2)
50 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
51 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: FFT swizzle must
be in the interval
[0,31]
53 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
)
54 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
55 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: expected
a comma
57 ds_swizzle_b32 v5
, v1 offset
:swizzle
(FFT
,16,31)
58 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: FFT mode swizzle
not supported on this GPU
59 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: expected
a closing parentheses
61 //==============================================================================
64 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,0)
65 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
66 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,0) ; encoding
: [0x00,0xc0,0x7a,0xd8,0x01,0x00,0x00,0x05]
67 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,0) ; encoding
: [0x00,0xc0,0xd4,0xd8,0x01,0x00,0x00,0x05]
69 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,0)
70 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
71 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,0) ; encoding
: [0x00,0xc4,0x7a,0xd8,0x01,0x00,0x00,0x05]
72 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,0) ; encoding
: [0x00,0xc4,0xd4,0xd8,0x01,0x00,0x00,0x05]
74 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,1)
75 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
76 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,1) ; encoding
: [0x20,0xc0,0x7a,0xd8,0x01,0x00,0x00,0x05]
77 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,1) ; encoding
: [0x20,0xc0,0xd4,0xd8,0x01,0x00,0x00,0x05]
79 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,1)
80 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
81 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,1) ; encoding
: [0x20,0xc4,0x7a,0xd8,0x01,0x00,0x00,0x05]
82 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,1) ; encoding
: [0x20,0xc4,0xd4,0xd8,0x01,0x00,0x00,0x05]
84 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,31)
85 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
86 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,31) ; encoding
: [0xe0,0xc3,0x7a,0xd8,0x01,0x00,0x00,0x05]
87 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,31) ; encoding
: [0xe0,0xc3,0xd4,0xd8,0x01,0x00,0x00,0x05]
89 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,31)
90 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
91 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,31) ; encoding
: [0xe0,0xc7,0x7a,0xd8,0x01,0x00,0x00,0x05]
92 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1,31) ; encoding
: [0xe0,0xc7,0xd4,0xd8,0x01,0x00,0x00,0x05]
94 ds_swizzle_b32 v5
, v1 offset
:0xd000
95 // GFX7
: ds_swizzle_b32 v5
, v1 offset
:53248 ; encoding
: [0x00,0xd0,0xd4,0xd8,0x01,0x00,0x00,0x05]
96 // GFX8
: ds_swizzle_b32 v5
, v1 offset
:53248 ; encoding
: [0x00,0xd0,0x7a,0xd8,0x01,0x00,0x00,0x05]
97 // GFX9
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,0) ; encoding
: [0x00,0xd0,0x7a,0xd8,0x01,0x00,0x00,0x05]
98 // GFX10PLUS
: ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,0) ; encoding
: [0x00,0xd0,0xd4,0xd8,0x01,0x00,0x00,0x05]
101 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,2,31)
102 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
103 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: direction must
be 0 (left
) or 1 (right
)
105 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,-1,31)
106 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
107 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: direction must
be 0 (left
) or 1 (right
)
109 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,32)
110 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
111 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: number of threads to rotate must
be in the interval
[0,31]
113 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,-2)
114 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
115 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: number of threads to rotate must
be in the interval
[0,31]
117 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
)
118 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
119 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: expected
a comma
121 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0)
122 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
123 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: expected
a comma
125 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,1)
126 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
127 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: expected
a comma
129 ds_swizzle_b32 v5
, v1 offset
:swizzle
(ROTATE
,0,1,2)
130 // ERROR-PREGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: Rotate mode swizzle
not supported on this GPU
131 // ERROR
: :[[@LINE-
2]]:{{[0-9]+}}: error
: expected
a closing parentheses