1 // RUN
: llvm-mc
-arch
=amdgcn
-mcpu
=tonga
-show-encoding
%s | FileCheck
-check-prefix
=GCN
-check-prefix
=CIVI
-check-prefix
=VI
%s
4 // VI
: v_add_f16_e32 v1
, 0, v2 ; encoding
: [0x80,0x04,0x02,0x3e]
7 // VI
: v_add_f16_e32 v1
, 0, v2 ; encoding
: [0x80,0x04,0x02,0x3e]
10 // VI
: v_add_f16_e64 v1
, v2
, 0 ; encoding
: [0x01,0x00,0x1f,0xd1,0x02,0x01,0x01,0x00]
13 // VI
: v_add_f16_e64 v1
, v2
, 0 ; encoding
: [0x01,0x00,0x1f,0xd1,0x02,0x01,0x01,0x00]
15 v_add_f16 v1
, -0.0, v2
16 // VI
: v_add_f16_e32 v1
, 0x8000, v2 ; encoding
: [0xff,0x04,0x02,0x3e,0x00,0x80,0x00,0x00]
19 // VI
: v_add_f16_e32 v1
, 1.0, v2 ; encoding
: [0xf2,0x04,0x02,0x3e]
21 v_add_f16 v1
, -1.0, v2
22 // VI
: v_add_f16_e32 v1
, -1.0, v2 ; encoding
: [0xf3,0x04,0x02,0x3e]
24 v_add_f16 v1
, -0.5, v2
25 // VI
: v_add_f16_e32 v1
, -0.5, v2 ; encoding
: [0xf1,0x04,0x02,0x3e]
28 // VI
: v_add_f16_e32 v1
, 0.5, v2 ; encoding
: [0xf0,0x04,0x02,0x3e]
31 // VI
: v_add_f16_e32 v1
, 2.0, v2 ; encoding
: [0xf4,0x04,0x02,0x3e]
33 v_add_f16 v1
, -2.0, v2
34 // VI
: v_add_f16_e32 v1
, -2.0, v2 ; encoding
: [0xf5,0x04,0x02,0x3e]
37 // VI
: v_add_f16_e32 v1
, 4.0, v2 ; encoding
: [0xf6,0x04,0x02,0x3e]
39 v_add_f16 v1
, -4.0, v2
40 // VI
: v_add_f16_e32 v1
, -4.0, v2 ; encoding
: [0xf7,0x04,0x02,0x3e]
42 v_add_f16 v1
, 0.15915494, v2
43 // VI
: v_add_f16_e32 v1
, 0.15915494, v2 ; encoding
: [0xf8,0x04,0x02,0x3e]
45 v_add_f16 v1
, -0.15915494, v2
46 // VI
: v_add_f16_e32 v1
, 0xb118, v2 ; encoding
: [0xff,0x04,0x02,0x3e,0x18,0xb1,0x00,0x00]
49 // VI
: v_add_f16_e32 v1
, -1, v2 ; encoding
: [0xc1,0x04,0x02,0x3e]
53 // VI
: v_add_f16_e32 v1
, -2, v2 ; encoding
: [0xc2,0x04,0x02,0x3e]
56 // VI
: v_add_f16_e32 v1
, -3, v2 ; encoding
: [0xc3,0x04,0x02,0x3e]
59 // VI
: v_add_f16_e32 v1
, -16, v2 ; encoding
: [0xd0,0x04,0x02,0x3e]
62 // VI
: v_add_f16_e32 v1
, 1, v2 ; encoding
: [0x81,0x04,0x02,0x3e]
65 // VI
: v_add_f16_e32 v1
, 2, v2 ; encoding
: [0x82,0x04,0x02,0x3e]
68 // VI
: v_add_f16_e32 v1
, 3, v2 ; encoding
: [0x83,0x04,0x02,0x3e]
71 // VI
: v_add_f16_e32 v1
, 4, v2 ; encoding
: [0x84,0x04,0x02,0x3e]
74 // VI
: v_add_f16_e32 v1
, 15, v2 ; encoding
: [0x8f,0x04,0x02,0x3e]
77 // VI
: v_add_f16_e32 v1
, 16, v2 ; encoding
: [0x90,0x04,0x02,0x3e]
80 // VI
: v_add_f16_e32 v1
, 63, v2 ; encoding
: [0xbf,0x04,0x02,0x3e]
83 // VI
: v_add_f16_e32 v1
, 64, v2 ; encoding
: [0xc0,0x04,0x02,0x3e]
85 v_add_f16 v1
, 0x0001, v2
86 // VI
: v_add_f16_e32 v1
, 1, v2 ; encoding
: [0x81,0x04,0x02,0x3e]
88 v_add_f16 v1
, 0xffff, v2
89 // VI
: v_add_f16_e32 v1
, -1, v2 ; encoding
: [0xc1,0x04,0x02,0x3e]
92 // VI
: v_add_f16_e32 v1
, 0xffef, v2 ; encoding
: [0xff,0x04,0x02,0x3e,0xef,0xff,0x00,0x00]
95 // VI
: v_add_f16_e32 v1
, 0x41, v2 ; encoding
: [0xff,0x04,0x02,0x3e,0x41,0x00,0x00,0x00]
97 v_add_f16 v1
, 0x3c00, v2
98 // VI
: v_add_f16_e32 v1
, 1.0, v2 ; encoding
: [0xf2,0x04,0x02,0x3e]
100 v_add_f16 v1
, 0xbc00, v2
101 // VI
: v_add_f16_e32 v1
, -1.0, v2 ; encoding
: [0xf3,0x04,0x02,0x3e]
103 v_add_f16 v1
, 0x3800, v2
104 // VI
: v_add_f16_e32 v1
, 0.5, v2 ; encoding
: [0xf0,0x04,0x02,0x3e]
106 v_add_f16 v1
, 0xb800, v2
107 // VI
: v_add_f16_e32 v1
, -0.5, v2 ; encoding
: [0xf1,0x04,0x02,0x3e]
109 v_add_f16 v1
, 0x4000, v2
110 // VI
: v_add_f16_e32 v1
, 2.0, v2 ; encoding
: [0xf4,0x04,0x02,0x3e]
112 v_add_f16 v1
, 0xc000, v2
113 // VI
: v_add_f16_e32 v1
, -2.0, v2 ; encoding
: [0xf5,0x04,0x02,0x3e]
115 v_add_f16 v1
, 0x4400, v2
116 // VI
: v_add_f16_e32 v1
, 4.0, v2 ; encoding
: [0xf6,0x04,0x02,0x3e]
118 v_add_f16 v1
, 0xc400, v2
119 // VI
: v_add_f16_e32 v1
, -4.0, v2 ; encoding
: [0xf7,0x04,0x02,0x3e]
121 v_add_f16 v1
, 0x3118, v2
122 // VI
: v_add_f16_e32 v1
, 0.15915494, v2 ; encoding
: [0xf8,0x04,0x02,0x3e]
124 v_add_f16 v1
, -32768, v2
125 // VI
: v_add_f16_e32 v1
, 0x8000, v2 ; encoding
: [0xff,0x04,0x02,0x3e,0x00,0x80,0x00,0x00]
127 v_add_f16 v1
, 32767, v2
128 // VI
: v_add_f16_e32 v1
, 0x7fff, v2 ; encoding
: [0xff,0x04,0x02,0x3e,0xff,0x7f,0x00,0x00]
130 v_add_f16 v1
, 65535, v2
131 // VI
: v_add_f16_e32 v1
, -1, v2 ; encoding
: [0xc1,0x04,0x02,0x3e]
135 v_madmk_f16 v1
, v2
, 0x4280, v3
136 // VI
: v_madmk_f16 v1
, v2
, 0x4280, v3 ; encoding
: [0x02,0x07,0x02,0x48,0x80,0x42,0x00,0x00]
138 v_madmk_f16 v1
, v2
, 1.0, v3
139 // VI
: v_madmk_f16 v1
, v2
, 0x3c00, v3 ; encoding
: [0x02,0x07,0x02,0x48,0x00,0x3c,0x00,0x00]
141 v_madmk_f16 v1
, v2
, 1, v3
142 // VI
: v_madmk_f16 v1
, v2
, 0x1, v3 ; encoding
: [0x02,0x07,0x02,0x48,0x01,0x00,0x00,0x00]
144 v_madmk_f16 v1
, v2
, 64.0, v3
145 // VI
: v_madmk_f16 v1
, v2
, 0x5400, v3 ; encoding
: [0x02,0x07,0x02,0x48,0x00,0x54,0x00,0x00]
148 v_add_f16_e32 v1
, 64.0, v2