xref: /llvm-project/llvm/test/CodeGen/AMDGPU/madak-inline-constant.mir (revision 9e9907f1cfa424366fba58d9520f9305b537cec9)
1# RUN: llc -mtriple=amdgcn -run-pass peephole-opt -verify-machineinstrs -o - %s | FileCheck -check-prefix=GCN %s
2
3
4# GCN-LABEL: bb.0:
5# GCN:  S_MOV_B32 1082130432
6# GCN:  %3:vgpr_32 = V_MADAK_F32 1082130432, killed %0, 1092616192, implicit $mode, implicit $exec
7
8---
9name:            test src1-inlined
10body:             |
11  bb.0:
12    liveins: $vgpr0, $sgpr0_sgpr1
13
14    %0:vgpr_32 = COPY $vgpr0
15    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
16    %18:sreg_32 = S_MOV_B32 1082130432
17    %19:vgpr_32 = V_MAC_F32_e64 0, killed %0, 0, killed %18, 0, %17, 0, 0, implicit $mode, implicit $exec
18
19...
20
21
22# GCN-LABEL: bb.0:
23# GCN:  S_MOV_B32 1082130432
24# GCN:  %3:vgpr_32 = V_MADAK_F32 1082130432, killed %0, 1092616192, implicit $mode, implicit $exec
25
26---
27name:            test src0-inlined
28body:             |
29  bb.0:
30    liveins: $vgpr0, $sgpr0_sgpr1
31
32    %0:vgpr_32 = COPY $vgpr0
33    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
34    %18:sreg_32 = S_MOV_B32 1082130432
35    %19:vgpr_32 = V_MAC_F32_e64 0, killed %18, 0, killed %0, 0, %17, 0, 0, implicit $mode, implicit $exec
36
37...
38
39# GCN-LABEL: bb.0:
40# GCN:  S_MOV_B32 1082130432
41# GCN:  %3:vgpr_32 = V_MADAK_F32 killed %0, killed %0, 1092616192, implicit $mode, implicit $exec
42
43---
44name:            test none-inlined
45body:             |
46  bb.0:
47    liveins: $vgpr0, $sgpr0_sgpr1
48
49    %0:vgpr_32 = COPY $vgpr0
50    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
51    %18:sreg_32 = S_MOV_B32 1082130432
52    %19:vgpr_32 = V_MAC_F32_e64 0, killed %0, 0, killed %0, 0, %17, 0, 0, implicit $mode, implicit $exec
53
54...
55
56# GCN-LABEL: bb.0:
57# GCN:  V_MOV_B32_e32 1082130432
58# GCN:  %3:vgpr_32 = V_MADAK_F32 1082130432, killed %0, 1092616192, implicit $mode, implicit $exec
59
60---
61name:            test src1-2vgprs-inlined
62body:             |
63  bb.0:
64    liveins: $vgpr0, $sgpr0_sgpr1
65
66    %0:vgpr_32 = COPY $vgpr0
67    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
68    %18:vgpr_32 = V_MOV_B32_e32 1082130432, implicit $exec
69    %19:vgpr_32 = V_MAC_F32_e64 0, killed %0, 0, killed %18, 0, %17, 0, 0, implicit $mode, implicit $exec
70
71...
72
73
74# GCN-LABEL: bb.0:
75# GCN:  V_MOV_B32_e32 1082130432
76# GCN:  %3:vgpr_32 = V_MADAK_F32 1082130432, killed %0, 1092616192, implicit $mode, implicit $exec
77
78---
79name:            test src0-2vgprs-inlined
80body:             |
81  bb.0:
82    liveins: $vgpr0, $sgpr0_sgpr1
83
84    %0:vgpr_32 = COPY $vgpr0
85    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
86    %18:vgpr_32 = V_MOV_B32_e32 1082130432, implicit $exec
87    %19:vgpr_32 = V_MAC_F32_e64 0, killed %18, 0, killed %0, 0, %17, 0, 0, implicit $mode, implicit $exec
88
89...
90
91# GCN-LABEL: bb.0:
92# GCN:  S_MOV_B32 1082130432
93# GCN:  V_MADAK_F32 1082130432, killed $vgpr1, 1092616192, implicit $mode, implicit $exec
94
95---
96name:            test src0-phys-vgpr
97body:             |
98  bb.0:
99    liveins: $vgpr0, $sgpr0_sgpr1
100
101
102    $vgpr1 = COPY $vgpr0
103    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
104    %18:sgpr_32 = S_MOV_B32 1082130432
105    %19:vgpr_32 = V_MAC_F32_e64 0, killed $vgpr1, 0, killed %18, 0, %17, 0, 0, implicit $mode, implicit $exec
106
107...
108
109# GCN-LABEL: bb.0:
110# GCN:  S_MOV_B32 1082130432
111# GCN:  V_MADAK_F32 1082130432, killed $vgpr0, 1092616192, implicit $mode, implicit $exec
112
113---
114name:            test src1-phys-vgpr
115body:             |
116  bb.0:
117    liveins: $vgpr0, $sgpr0_sgpr1
118
119
120    %0:vgpr_32 = COPY $vgpr0
121    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
122    %18:sgpr_32 = S_MOV_B32 1082130432
123    %19:vgpr_32 = V_MAC_F32_e64 0, killed %18, 0, killed $vgpr0, 0, %17, 0, 0, implicit $mode, implicit $exec
124
125...
126
127# GCN-LABEL: bb.0:
128# GCN:  V_MOV_B32_e32 1092616192, implicit $exec
129# GCN:  V_MAC_F32_e64 0, killed $sgpr2, 0, killed %0, 0, %1, 0, 0, implicit $mode, implicit $exec
130
131---
132name:            test src0-phys-sgpr
133body:             |
134  bb.0:
135    liveins: $vgpr0, $sgpr0_sgpr1, $sgpr2
136
137
138    %0:vgpr_32 = COPY $vgpr0
139    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
140    %19:vgpr_32 = V_MAC_F32_e64 0, killed $sgpr2, 0, killed %0, 0, %17, 0, 0, implicit $mode, implicit $exec
141
142...
143
144# GCN-LABEL: bb.0:
145# GCN:  V_MOV_B32_e32 1092616192, implicit $exec
146# GCN:  V_MAC_F32_e64 0, killed %0, 0, killed $sgpr2, 0, %1, 0, 0, implicit $mode, implicit $exec
147
148---
149name:            test src1-phys-sgpr
150body:             |
151  bb.0:
152    liveins: $vgpr0, $sgpr0_sgpr1, $sgpr2
153
154
155    %0:vgpr_32 = COPY $vgpr0
156    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
157    %19:vgpr_32 = V_MAC_F32_e64 0, killed %0, 0, killed $sgpr2, 0, %17, 0, 0, implicit $mode, implicit $exec
158
159...
160
161# GCN-LABEL: bb.0:
162# GCN:  $sgpr2 = S_MOV_B32 1082130432
163# GCN:  V_MADAK_F32 1082130432, killed %0, 1092616192, implicit $mode, implicit $exec
164
165---
166name:            test src1-phys-sgpr-move
167body:             |
168  bb.0:
169    liveins: $vgpr0, $sgpr0_sgpr1
170
171
172    %0:vgpr_32 = COPY $vgpr0
173    %17:vgpr_32 = V_MOV_B32_e32 1092616192, implicit $exec
174    $sgpr2 = S_MOV_B32 1082130432
175    %19:vgpr_32 = V_MAC_F32_e64 0, killed %0, 0, killed $sgpr2, 0, %17, 0, 0, implicit $mode, implicit $exec
176
177...
178