1// RUN: llvm-mc -arch=amdgcn -show-encoding %s | FileCheck %s
2// RUN: llvm-mc -arch=amdgcn -mcpu=SI -show-encoding %s | FileCheck %s
3
4// CHECK: v_nop ; encoding: [0x00,0x00,0x00,0x7e]
5v_nop
6
7// CHECK: v_mov_b32_e32 v1, v2 ; encoding: [0x02,0x03,0x02,0x7e]
8v_mov_b32 v1, v2
9
10// CHECK: v_readfirstlane_b32 s1, v2 ; encoding: [0x02,0x05,0x02,0x7e]
11v_readfirstlane_b32 s1, v2
12
13// CHECK: v_cvt_i32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x07,0x02,0x7e]
14v_cvt_i32_f64 v1, v[2:3]
15
16// CHECK: v_cvt_f64_i32_e32 v[1:2], v2 ; encoding: [0x02,0x09,0x02,0x7e]
17v_cvt_f64_i32 v[1:2], v2
18
19// CHECK: v_cvt_f32_i32_e32 v1, v2 ; encoding: [0x02,0x0b,0x02,0x7e]
20v_cvt_f32_i32 v1, v2
21
22// CHECK: v_cvt_f32_u32_e32 v1, v2 ; encoding: [0x02,0x0d,0x02,0x7e]
23v_cvt_f32_u32 v1, v2
24
25// CHECK: v_cvt_u32_f32_e32 v1, v2 ; encoding: [0x02,0x0f,0x02,0x7e
26v_cvt_u32_f32 v1, v2
27
28// CHECK: v_cvt_i32_f32_e32 v1, v2 ; encoding: [0x02,0x11,0x02,0x7e]
29v_cvt_i32_f32 v1, v2
30
31// CHECK: v_mov_fed_b32_e32 v1, v2 ; encoding: [0x02,0x13,0x02,0x7e]
32v_mov_fed_b32 v1, v2
33
34// CHECK: v_cvt_f16_f32_e32 v1, v2 ; encoding: [0x02,0x15,0x02,0x7e]
35v_cvt_f16_f32 v1, v2
36
37// CHECK: v_cvt_f32_f16_e32 v1, v2 ; encoding: [0x02,0x17,0x02,0x7e]
38v_cvt_f32_f16 v1, v2
39
40// CHECK: v_cvt_rpi_i32_f32_e32 v1, v2 ; encoding: [0x02,0x19,0x02,0x7e]
41v_cvt_rpi_i32_f32 v1, v2
42
43// CHECK: v_cvt_flr_i32_f32_e32 v1, v2 ; encoding: [0x02,0x1b,0x02,0x7e]
44v_cvt_flr_i32_f32 v1, v2
45
46// CHECK: v_cvt_off_f32_i4_e32 v1, v2 ; encoding: [0x02,0x1d,0x02,0x7e]
47v_cvt_off_f32_i4_e32 v1, v2
48
49// CHECK: v_cvt_f32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x1f,0x02,0x7e]
50v_cvt_f32_f64 v1, v[2:3]
51
52// CHECK: v_cvt_f64_f32_e32 v[1:2], v2 ; encoding: [0x02,0x21,0x02,0x7e]
53v_cvt_f64_f32 v[1:2], v2
54
55// CHECK: v_cvt_f32_ubyte0_e32 v1, v2 ; encoding: [0x02,0x23,0x02,0x7e]
56v_cvt_f32_ubyte0 v1, v2
57
58// CHECK: v_cvt_f32_ubyte1_e32 v1, v2 ; encoding: [0x02,0x25,0x02,0x7e]
59v_cvt_f32_ubyte1_e32 v1, v2
60
61// CHECK: v_cvt_f32_ubyte2_e32 v1, v2 ; encoding: [0x02,0x27,0x02,0x7e]
62v_cvt_f32_ubyte2 v1, v2
63
64// CHECK: v_cvt_f32_ubyte3_e32 v1, v2 ; encoding: [0x02,0x29,0x02,0x7e]
65v_cvt_f32_ubyte3 v1, v2
66
67// CHECK: v_cvt_u32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x2b,0x02,0x7e]
68v_cvt_u32_f64 v1, v[2:3]
69
70// CHECK: v_cvt_f64_u32_e32 v[1:2], v2 ; encoding: [0x02,0x2d,0x02,0x7e]
71v_cvt_f64_u32 v[1:2], v2
72
73// CHECK: v_fract_f32_e32 v1, v2 ; encoding: [0x02,0x41,0x02,0x7e]
74v_fract_f32 v1, v2
75
76// CHECK: v_trunc_f32_e32 v1, v2 ; encoding: [0x02,0x43,0x02,0x7e]
77v_trunc_f32 v1, v2
78
79// CHECK: v_ceil_f32_e32 v1, v2 ; encoding: [0x02,0x45,0x02,0x7e]
80v_ceil_f32 v1, v2
81
82// CHECK: v_rndne_f32_e32 v1, v2 ; encoding: [0x02,0x47,0x02,0x7e]
83v_rndne_f32 v1, v2
84
85// CHECK: v_floor_f32_e32 v1, v2 ; encoding: [0x02,0x49,0x02,0x7e]
86v_floor_f32_e32 v1, v2
87
88// CHECK: v_exp_f32_e32 v1, v2 ; encoding: [0x02,0x4b,0x02,0x7e]
89v_exp_f32 v1, v2
90
91// CHECK: v_log_clamp_f32_e32 v1, v2 ; encoding: [0x02,0x4d,0x02,0x7e]
92v_log_clamp_f32 v1, v2
93
94// CHECK: v_log_f32_e32 v1, v2 ; encoding: [0x02,0x4f,0x02,0x7e]
95v_log_f32 v1, v2
96
97// CHECK: v_rcp_clamp_f32_e32 v1, v2 ; encoding: [0x02,0x51,0x02,0x7e]
98v_rcp_clamp_f32 v1, v2
99
100// CHECK: v_rcp_legacy_f32_e32 v1, v2 ; encoding: [0x02,0x53,0x02,0x7e]
101v_rcp_legacy_f32 v1, v2
102
103// CHECK: v_rcp_f32_e32 v1, v2 ; encoding: [0x02,0x55,0x02,0x7e]
104v_rcp_f32 v1, v2
105
106// CHECK: v_rcp_iflag_f32_e32 v1, v2 ; encoding: [0x02,0x57,0x02,0x7e]
107v_rcp_iflag_f32 v1, v2
108
109// CHECK: v_rsq_clamp_f32_e32 v1, v2 ; encoding: [0x02,0x59,0x02,0x7e]
110v_rsq_clamp_f32 v1, v2
111
112// CHECK: v_rsq_legacy_f32_e32 v1, v2 ; encoding: [0x02,0x5b,0x02,0x7e]
113v_rsq_legacy_f32 v1, v2
114
115// CHECK: v_rsq_f32_e32 v1, v2 ; encoding: [0x02,0x5d,0x02,0x7e]
116v_rsq_f32_e32 v1, v2
117
118// CHECK: v_rcp_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x5f,0x02,0x7e]
119v_rcp_f64 v[1:2], v[2:3]
120
121// CHECK: v_rcp_clamp_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x61,0x02,0x7e]
122v_rcp_clamp_f64 v[1:2], v[2:3]
123
124// CHECK: v_rsq_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x63,0x02,0x7e]
125v_rsq_f64 v[1:2], v[2:3]
126
127// CHECK: v_rsq_clamp_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x65,0x02,0x7e]
128v_rsq_clamp_f64 v[1:2], v[2:3]
129
130// CHECK: v_sqrt_f32_e32 v1, v2 ; encoding: [0x02,0x67,0x02,0x7e]
131v_sqrt_f32 v1, v2
132
133// CHECK: v_sqrt_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x69,0x02,0x7e]
134v_sqrt_f64 v[1:2], v[2:3]
135
136// CHECK: v_sin_f32_e32 v1, v2 ; encoding: [0x02,0x6b,0x02,0x7e]
137v_sin_f32 v1, v2
138
139// CHECK: v_cos_f32_e32 v1, v2 ; encoding: [0x02,0x6d,0x02,0x7e]
140v_cos_f32 v1, v2
141
142// CHECK: v_not_b32_e32 v1, v2 ; encoding: [0x02,0x6f,0x02,0x7e]
143v_not_b32 v1, v2
144
145// CHECK: v_bfrev_b32_e32 v1, v2 ; encoding: [0x02,0x71,0x02,0x7e]
146v_bfrev_b32 v1, v2
147
148// CHECK: v_ffbh_u32_e32 v1, v2 ; encoding: [0x02,0x73,0x02,0x7e]
149v_ffbh_u32 v1, v2
150
151// CHECK: v_ffbl_b32_e32 v1, v2 ; encoding: [0x02,0x75,0x02,0x7e]
152v_ffbl_b32 v1, v2
153
154// CHECK: v_ffbh_i32_e32 v1, v2 ; encoding: [0x02,0x77,0x02,0x7e]
155v_ffbh_i32_e32 v1, v2
156
157// CHECK: v_frexp_exp_i32_f64_e32 v1, v[2:3] ; encoding: [0x02,0x79,0x02,0x7e]
158v_frexp_exp_i32_f64 v1, v[2:3]
159
160// CHECK: v_frexp_mant_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x7b,0x02,0x7e]
161v_frexp_mant_f64 v[1:2], v[2:3]
162
163// CHECK: v_fract_f64_e32 v[1:2], v[2:3] ; encoding: [0x02,0x7d,0x02,0x7e]
164v_fract_f64 v[1:2], v[2:3]
165
166// CHECK: v_frexp_exp_i32_f32_e32 v1, v2 ; encoding: [0x02,0x7f,0x02,0x7e]
167v_frexp_exp_i32_f32 v1, v2
168
169// CHECK: v_frexp_mant_f32_e32 v1, v2 ; encoding: [0x02,0x81,0x02,0x7e]
170v_frexp_mant_f32 v1, v2
171
172// CHECK: v_clrexcp ; encoding: [0x00,0x82,0x00,0x7e]
173v_clrexcp
174
175// CHECK: v_movreld_b32_e32 v1, v2 ; encoding: [0x02,0x85,0x02,0x7e]
176v_movreld_b32 v1, v2
177
178// CHECK: v_movrels_b32_e32 v1, v2 ; encoding: [0x02,0x87,0x02,0x7e]
179v_movrels_b32 v1, v2
180
181// CHECK: v_movrelsd_b32_e32 v1, v2 ; encoding: [0x02,0x89,0x02,0x7e]
182v_movrelsd_b32 v1, v2
183