1 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx900
-show-encoding
%s | FileCheck
%s
--check-prefix
=GFX9
2 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1010
-show-encoding
%s | FileCheck
%s
--check-prefix
=GFX10
4 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx900
%s
2>&1 | FileCheck
%s
-check-prefix
=NOGFX9
--implicit-check-
not=error
:
5 // RUN
: not llvm-mc
-triple
=amdgcn
-mcpu
=gfx1010
%s
2>&1 | FileCheck
%s
-check-prefix
=NOGFX10
--implicit-check-
not=error
:
7 //===----------------------------------------------------------------------===//
9 //===----------------------------------------------------------------------===//
11 v_pk_add_f16 v1
, 0, v2
12 // GFX9
: v_pk_add_f16 v1
, 0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x80,0x04,0x02,0x18]
13 // GFX10
: v_pk_add_f16 v1
, 0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x80,0x04,0x02,0x18]
15 v_pk_add_f16 v1
, 0.0, v2
16 // GFX9
: v_pk_add_f16 v1
, 0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x80,0x04,0x02,0x18]
17 // GFX10
: v_pk_add_f16 v1
, 0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x80,0x04,0x02,0x18]
19 v_pk_add_f16 v1
, v2
, 0
20 // GFX9
: v_pk_add_f16 v1
, v2
, 0 ; encoding
: [0x01,0x40,0x8f,0xd3,0x02,0x01,0x01,0x18]
21 // GFX10
: v_pk_add_f16 v1
, v2
, 0 ; encoding
: [0x01,0x40,0x0f,0xcc,0x02,0x01,0x01,0x18]
23 v_pk_add_f16 v1
, v2
, 0.0
24 // GFX9
: v_pk_add_f16 v1
, v2
, 0 ; encoding
: [0x01,0x40,0x8f,0xd3,0x02,0x01,0x01,0x18]
25 // GFX10
: v_pk_add_f16 v1
, v2
, 0 ; encoding
: [0x01,0x40,0x0f,0xcc,0x02,0x01,0x01,0x18]
27 v_pk_add_f16 v1
, 1.0, v2
28 // GFX9
: v_pk_add_f16 v1
, 1.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf2,0x04,0x02,0x18]
29 // GFX10
: v_pk_add_f16 v1
, 1.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf2,0x04,0x02,0x18]
31 v_pk_add_f16 v1
, -1.0, v2
32 // GFX9
: v_pk_add_f16 v1
, -1.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf3,0x04,0x02,0x18]
33 // GFX10
: v_pk_add_f16 v1
, -1.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf3,0x04,0x02,0x18]
35 v_pk_add_f16 v1
, -0.5, v2
36 // GFX9
: v_pk_add_f16 v1
, -0.5, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf1,0x04,0x02,0x18]
37 // GFX10
: v_pk_add_f16 v1
, -0.5, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf1,0x04,0x02,0x18]
39 v_pk_add_f16 v1
, 0.5, v2
40 // GFX9
: v_pk_add_f16 v1
, 0.5, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf0,0x04,0x02,0x18]
41 // GFX10
: v_pk_add_f16 v1
, 0.5, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf0,0x04,0x02,0x18]
43 v_pk_add_f16 v1
, 2.0, v2
44 // GFX9
: v_pk_add_f16 v1
, 2.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf4,0x04,0x02,0x18]
45 // GFX10
: v_pk_add_f16 v1
, 2.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf4,0x04,0x02,0x18]
47 v_pk_add_f16 v1
, -2.0, v2
48 // GFX9
: v_pk_add_f16 v1
, -2.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf5,0x04,0x02,0x18]
49 // GFX10
: v_pk_add_f16 v1
, -2.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf5,0x04,0x02,0x18]
51 v_pk_add_f16 v1
, 4.0, v2
52 // GFX9
: v_pk_add_f16 v1
, 4.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf6,0x04,0x02,0x18]
53 // GFX10
: v_pk_add_f16 v1
, 4.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf6,0x04,0x02,0x18]
55 v_pk_add_f16 v1
, -4.0, v2
56 // GFX9
: v_pk_add_f16 v1
, -4.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf7,0x04,0x02,0x18]
57 // GFX10
: v_pk_add_f16 v1
, -4.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf7,0x04,0x02,0x18]
59 v_pk_add_f16 v1
, 0.15915494, v2
60 // GFX9
: v_pk_add_f16 v1
, 0.15915494, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf8,0x04,0x02,0x18]
61 // GFX10
: v_pk_add_f16 v1
, 0.15915494, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf8,0x04,0x02,0x18]
63 v_pk_add_f16 v1
, -1, v2
64 // GFX9
: v_pk_add_f16 v1
, -1, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xc1,0x04,0x02,0x18]
65 // GFX10
: v_pk_add_f16 v1
, -1, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xc1,0x04,0x02,0x18]
67 v_pk_add_f16 v1
, -2, v2
68 // GFX9
: v_pk_add_f16 v1
, -2, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xc2,0x04,0x02,0x18]
69 // GFX10
: v_pk_add_f16 v1
, -2, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xc2,0x04,0x02,0x18]
71 v_pk_add_f16 v1
, -3, v2
72 // GFX9
: v_pk_add_f16 v1
, -3, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xc3,0x04,0x02,0x18]
73 // GFX10
: v_pk_add_f16 v1
, -3, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xc3,0x04,0x02,0x18]
75 v_pk_add_f16 v1
, -16, v2
76 // GFX9
: v_pk_add_f16 v1
, -16, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xd0,0x04,0x02,0x18]
77 // GFX10
: v_pk_add_f16 v1
, -16, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xd0,0x04,0x02,0x18]
79 v_pk_add_f16 v1
, 1, v2
80 // GFX9
: v_pk_add_f16 v1
, 1, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x81,0x04,0x02,0x18]
81 // GFX10
: v_pk_add_f16 v1
, 1, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x81,0x04,0x02,0x18]
83 v_pk_add_f16 v1
, 2, v2
84 // GFX9
: v_pk_add_f16 v1
, 2, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x82,0x04,0x02,0x18]
85 // GFX10
: v_pk_add_f16 v1
, 2, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x82,0x04,0x02,0x18]
87 v_pk_add_f16 v1
, 3, v2
88 // GFX9
: v_pk_add_f16 v1
, 3, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x83,0x04,0x02,0x18]
89 // GFX10
: v_pk_add_f16 v1
, 3, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x83,0x04,0x02,0x18]
91 v_pk_add_f16 v1
, 4, v2
92 // GFX9
: v_pk_add_f16 v1
, 4, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x84,0x04,0x02,0x18]
93 // GFX10
: v_pk_add_f16 v1
, 4, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x84,0x04,0x02,0x18]
95 v_pk_add_f16 v1
, 15, v2
96 // GFX9
: v_pk_add_f16 v1
, 15, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x8f,0x04,0x02,0x18]
97 // GFX10
: v_pk_add_f16 v1
, 15, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x8f,0x04,0x02,0x18]
99 v_pk_add_f16 v1
, 16, v2
100 // GFX9
: v_pk_add_f16 v1
, 16, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x90,0x04,0x02,0x18]
101 // GFX10
: v_pk_add_f16 v1
, 16, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x90,0x04,0x02,0x18]
103 v_pk_add_f16 v1
, 63, v2
104 // GFX9
: v_pk_add_f16 v1
, 63, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xbf,0x04,0x02,0x18]
105 // GFX10
: v_pk_add_f16 v1
, 63, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xbf,0x04,0x02,0x18]
107 v_pk_add_f16 v1
, 64, v2
108 // GFX9
: v_pk_add_f16 v1
, 64, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xc0,0x04,0x02,0x18]
109 // GFX10
: v_pk_add_f16 v1
, 64, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xc0,0x04,0x02,0x18]
111 v_pk_add_f16 v1
, 0x0001, v2
112 // GFX9
: v_pk_add_f16 v1
, 1, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0x81,0x04,0x02,0x18]
113 // GFX10
: v_pk_add_f16 v1
, 1, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0x81,0x04,0x02,0x18]
115 v_pk_add_f16 v1
, 0xffff, v2
116 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
117 // GFX10
: v_pk_add_f16 v1
, 0xffff, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0xff,0xff,0x00,0x00]
119 v_pk_add_f16 v1
, 0xffffffff, v2
120 // GFX9
: v_pk_add_f16 v1
, -1, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xc1,0x04,0x02,0x18]
121 // GFX10
: v_pk_add_f16 v1
, -1, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xc1,0x04,0x02,0x18]
123 v_pk_add_f16 v1
, 0x3c00, v2
124 // GFX9
: v_pk_add_f16 v1
, 1.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf2,0x04,0x02,0x18]
125 // GFX10
: v_pk_add_f16 v1
, 1.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf2,0x04,0x02,0x18]
127 v_pk_add_f16 v1
, 0xbc00, v2
128 // GFX9
: v_pk_add_f16 v1
, -1.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf3,0x04,0x02,0x18]
129 // GFX10
: v_pk_add_f16 v1
, -1.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf3,0x04,0x02,0x18]
131 v_pk_add_f16 v1
, 0x3800, v2
132 // GFX9
: v_pk_add_f16 v1
, 0.5, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf0,0x04,0x02,0x18]
133 // GFX10
: v_pk_add_f16 v1
, 0.5, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf0,0x04,0x02,0x18]
135 v_pk_add_f16 v1
, 0xb800, v2
136 // GFX9
: v_pk_add_f16 v1
, -0.5, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf1,0x04,0x02,0x18]
137 // GFX10
: v_pk_add_f16 v1
, -0.5, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf1,0x04,0x02,0x18]
139 v_pk_add_f16 v1
, 0x4000, v2
140 // GFX9
: v_pk_add_f16 v1
, 2.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf4,0x04,0x02,0x18]
141 // GFX10
: v_pk_add_f16 v1
, 2.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf4,0x04,0x02,0x18]
143 v_pk_add_f16 v1
, 0xc000, v2
144 // GFX9
: v_pk_add_f16 v1
, -2.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf5,0x04,0x02,0x18]
145 // GFX10
: v_pk_add_f16 v1
, -2.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf5,0x04,0x02,0x18]
147 v_pk_add_f16 v1
, 0x4400, v2
148 // GFX9
: v_pk_add_f16 v1
, 4.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf6,0x04,0x02,0x18]
149 // GFX10
: v_pk_add_f16 v1
, 4.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf6,0x04,0x02,0x18]
151 v_pk_add_f16 v1
, 0xc400, v2
152 // GFX9
: v_pk_add_f16 v1
, -4.0, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf7,0x04,0x02,0x18]
153 // GFX10
: v_pk_add_f16 v1
, -4.0, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf7,0x04,0x02,0x18]
155 v_pk_add_f16 v1
, 0x3118, v2
156 // GFX9
: v_pk_add_f16 v1
, 0.15915494, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xf8,0x04,0x02,0x18]
157 // GFX10
: v_pk_add_f16 v1
, 0.15915494, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xf8,0x04,0x02,0x18]
159 v_pk_add_f16 v1
, 65535, v2
160 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
161 // GFX10
: v_pk_add_f16 v1
, 0xffff, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0xff,0xff,0x00,0x00]
163 v_pk_add_f16 v1
, 4294967295, v2
164 // GFX9
: v_pk_add_f16 v1
, -1, v2 ; encoding
: [0x01,0x40,0x8f,0xd3,0xc1,0x04,0x02,0x18]
165 // GFX10
: v_pk_add_f16 v1
, -1, v2 ; encoding
: [0x01,0x40,0x0f,0xcc,0xc1,0x04,0x02,0x18]
167 //===----------------------------------------------------------------------===//
169 //===----------------------------------------------------------------------===//
171 v_pk_add_f16 v5
, v1
, 0x12345678
172 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
173 // GFX10
: v_pk_add_f16 v5
, v1
, 0x12345678 ; encoding
: [0x05,0x40,0x0f,0xcc,0x01,0xff,0x01,0x18,0x78,0x56,0x34,0x12]
175 v_pk_add_f16 v5
, 0x12345678, v2
176 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
177 // GFX10
: v_pk_add_f16 v5
, 0x12345678, v2 ; encoding
: [0x05,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0x78,0x56,0x34,0x12]
179 v_pk_add_f16 v5
, -256, v2
180 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
181 // GFX10
: v_pk_add_f16 v5
, 0xffffff00, v2 ; encoding
: [0x05,0x40,0x0f,0xcc,0xff,0x04,0x02,0x18,0x00,0xff,0xff,0xff]
183 v_pk_add_f16 v5
, v1
, 256
184 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
185 // GFX10
: v_pk_add_f16 v5
, v1
, 0x100 ; encoding
: [0x05,0x40,0x0f,0xcc,0x01,0xff,0x01,0x18,0x00,0x01,0x00,0x00]
187 v_pk_add_u16 v5
, v1
, 0x12345678
188 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
189 // GFX10
: v_pk_add_u16 v5
, v1
, 0x12345678 ; encoding
: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x78,0x56,0x34,0x12]
191 v_pk_add_u16 v5
, 0x12345678, v2
192 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
193 // GFX10
: v_pk_add_u16 v5
, 0x12345678, v2 ; encoding
: [0x05,0x40,0x0a,0xcc,0xff,0x04,0x02,0x18,0x78,0x56,0x34,0x12]
195 v_pk_add_u16 v5
, -256, v2
196 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
197 // GFX10
: v_pk_add_u16 v5
, 0xffffff00, v2 ; encoding
: [0x05,0x40,0x0a,0xcc,0xff,0x04,0x02,0x18,0x00,0xff,0xff,0xff]
199 v_pk_add_u16 v5
, v1
, 256
200 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
201 // GFX10
: v_pk_add_u16 v5
, v1
, 0x100 ; encoding
: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x00,0x01,0x00,0x00]
203 v_pk_add_f16 v5
, v1
, 0x123456780
204 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
205 // NOGFX10
: :[[@LINE-
2]]:{{[0-9]+}}: error
: invalid operand for instruction
207 v_pk_add_u16 v5
, v1
, 0x123456780
208 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
209 // NOGFX10
: :[[@LINE-
2]]:{{[0-9]+}}: error
: invalid operand for instruction
211 v_pk_fma_f16 v5
, 0xaf123456, v2
, v3
212 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
213 // GFX10
: v_pk_fma_f16 v5
, 0xaf123456, v2
, v3 ; encoding
: [0x05,0x40,0x0e,0xcc,0xff,0x04,0x0e,0x1c,0x56,0x34,0x12,0xaf]
215 v_pk_fma_f16 v5
, v1
, 0xaf123456, v3
216 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
217 // GFX10
: v_pk_fma_f16 v5
, v1
, 0xaf123456, v3 ; encoding
: [0x05,0x40,0x0e,0xcc,0x01,0xff,0x0d,0x1c,0x56,0x34,0x12,0xaf]
219 v_pk_fma_f16 v5
, v1
, v2
, 0xaf123456
220 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
221 // GFX10
: v_pk_fma_f16 v5
, v1
, v2
, 0xaf123456 ; encoding
: [0x05,0x40,0x0e,0xcc,0x01,0x05,0xfe,0x1b,0x56,0x34,0x12,0xaf]
223 v_pk_mad_i16 v5
, 0xaf123456, v2
, v3
224 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
225 // GFX10
: v_pk_mad_i16 v5
, 0xaf123456, v2
, v3 ; encoding
: [0x05,0x40,0x00,0xcc,0xff,0x04,0x0e,0x1c,0x56,0x34,0x12,0xaf]
227 v_pk_mad_i16 v5
, v1
, 0xaf123456, v3
228 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
229 // GFX10
: v_pk_mad_i16 v5
, v1
, 0xaf123456, v3 ; encoding
: [0x05,0x40,0x00,0xcc,0x01,0xff,0x0d,0x1c,0x56,0x34,0x12,0xaf]
231 v_pk_mad_i16 v5
, v1
, v2
, 0xaf123456
232 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
233 // GFX10
: v_pk_mad_i16 v5
, v1
, v2
, 0xaf123456 ; encoding
: [0x05,0x40,0x00,0xcc,0x01,0x05,0xfe,0x1b,0x56,0x34,0x12,0xaf]
235 v_pk_ashrrev_i16 v5
, 0x12345678, v2
236 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
237 // GFX10
: v_pk_ashrrev_i16 v5
, 0x12345678, v2 ; encoding
: [0x05,0x40,0x06,0xcc,0xff,0x04,0x02,0x18,0x78,0x56,0x34,0x12]
239 v_pk_ashrrev_i16 v5
, v1
, 0x12345678
240 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
241 // GFX10
: v_pk_ashrrev_i16 v5
, v1
, 0x12345678 ; encoding
: [0x05,0x40,0x06,0xcc,0x01,0xff,0x01,0x18,0x78,0x56,0x34,0x12]
243 //===----------------------------------------------------------------------===//
244 // Floating-point literals
(allowed if lossless conversion to
f16 is possible
)
245 //===----------------------------------------------------------------------===//
247 v_pk_add_f16 v5
, v1
, 0.1234
248 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
249 // GFX10
: v_pk_add_f16 v5
, v1
, 0x2fe6 ; encoding
: [0x05,0x40,0x0f,0xcc,0x01,0xff,0x01,0x18,0xe6,0x2f,0x00,0x00]
251 v_pk_add_u16 v5
, v1
, 0.1234
252 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
253 // GFX10
: v_pk_add_u16 v5
, v1
, 0x3dfcb924 ; encoding
: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x24,0xb9,0xfc,0x3d]
255 v_pk_fma_f16 v5
, 0.1234, v2
, v3
256 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
257 // GFX10
: v_pk_fma_f16 v5
, 0x2fe6, v2
, v3 ; encoding
: [0x05,0x40,0x0e,0xcc,0xff,0x04,0x0e,0x1c,0xe6,0x2f,0x00,0x00]
259 v_pk_fma_f16 v5
, v1
, 0.1234, v3
260 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
261 // GFX10
: v_pk_fma_f16 v5
, v1
, 0x2fe6, v3 ; encoding
: [0x05,0x40,0x0e,0xcc,0x01,0xff,0x0d,0x1c,0xe6,0x2f,0x00,0x00]
263 v_pk_fma_f16 v5
, v1
, v2
, 0.1234
264 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
265 // GFX10
: v_pk_fma_f16 v5
, v1
, v2
, 0x2fe6 ; encoding
: [0x05,0x40,0x0e,0xcc,0x01,0x05,0xfe,0x1b,0xe6,0x2f,0x00,0x00]
267 v_pk_mad_i16 v5
, 0.1234, v2
, v3
268 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
269 // GFX10
: v_pk_mad_i16 v5
, 0x3dfcb924, v2
, v3 ; encoding
: [0x05,0x40,0x00,0xcc,0xff,0x04,0x0e,0x1c,0x24,0xb9,0xfc,0x3d]
271 v_pk_mad_i16 v5
, v1
, 0.1234, v3
272 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
273 // GFX10
: v_pk_mad_i16 v5
, v1
, 0x3dfcb924, v3 ; encoding
: [0x05,0x40,0x00,0xcc,0x01,0xff,0x0d,0x1c,0x24,0xb9,0xfc,0x3d]
275 v_pk_mad_i16 v5
, v1
, v2
, 0.1234
276 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
277 // GFX10
: v_pk_mad_i16 v5
, v1
, v2
, 0x3dfcb924 ; encoding
: [0x05,0x40,0x00,0xcc,0x01,0x05,0xfe,0x1b,0x24,0xb9,0xfc,0x3d]
279 v_pk_add_f16 v5
, v1
, 123456.0
280 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: invalid operand for instruction
281 // NOGFX10
: :[[@LINE-
2]]:{{[0-9]+}}: error
: invalid operand for instruction
283 v_pk_add_u16 v5
, v1
, 123456.0
284 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: literal operands are
not supported
285 // GFX10
: v_pk_add_u16 v5
, v1
, 0x47f12000 ; encoding
: [0x05,0x40,0x0a,0xcc,0x01,0xff,0x01,0x18,0x00,0x20,0xf1,0x47]
287 //===----------------------------------------------------------------------===//
289 //===----------------------------------------------------------------------===//
291 // FIXME
: v_pk_fmac_f16 cannot
be promoted to VOP3 so
'_e32' suffix is
not valid
292 v_pk_fmac_f16 v5
, 0x12345678, v2
293 // NOGFX9
: :[[@LINE-
1]]:{{[0-9]+}}: error
: instruction
not supported on this GPU
294 // GFX10
: v_pk_fmac_f16 v5
, 0x12345678, v2 ; encoding
: [0xff,0x04,0x0a,0x78,0x78,0x56,0x34,0x12]