Skip to content

Commit 00b07aa

Browse files
committed
[Hexagon][NFC] Switch regalloc-bad-undef.mir to use generated CHECKs
1 parent 7831c5e commit 00b07aa

File tree

1 file changed

+59
-6
lines changed

1 file changed

+59
-6
lines changed

llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir

Lines changed: 59 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 5
12
# RUN: llc -march=hexagon -enable-subreg-liveness -start-after machine-scheduler -stop-after stack-slot-coloring -o - %s | FileCheck %s
23

34
--- |
45
target triple = "hexagon"
56

6-
; Function Attrs: nounwind optsize
77
define void @main() #0 {
88
entry:
99
br label %for.body
@@ -142,6 +142,64 @@ frameInfo:
142142
hasVAStart: false
143143
hasMustTailInVarArgFunc: false
144144
body: |
145+
; CHECK-LABEL: name: main
146+
; CHECK: bb.0.entry:
147+
; CHECK-NEXT: successors: %bb.1(0x80000000)
148+
; CHECK-NEXT: {{ $}}
149+
; CHECK-NEXT: renamable $r20 = A2_tfrsi 524288
150+
; CHECK-NEXT: renamable $r17 = A2_tfrsi 0
151+
; CHECK-NEXT: renamable $d2 = S2_extractup undef renamable $d0, 6, 25
152+
; CHECK-NEXT: renamable $d0 = A2_tfrpi 2
153+
; CHECK-NEXT: renamable $d13 = A2_tfrpi -1
154+
; CHECK-NEXT: renamable $d13 = S2_asl_r_p_acc killed renamable $d13, killed renamable $d0, renamable $r4
155+
; CHECK-NEXT: S2_storerd_io %stack.0, 0, renamable $d2 :: (store (s64) into %stack.0)
156+
; CHECK-NEXT: {{ $}}
157+
; CHECK-NEXT: bb.1.for.body:
158+
; CHECK-NEXT: successors: %bb.3(0x40000000), %bb.2(0x40000000)
159+
; CHECK-NEXT: liveins: $d8:0x0000000000000001, $d13, $r20
160+
; CHECK-NEXT: {{ $}}
161+
; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit $r31, implicit $r30, implicit $r29
162+
; CHECK-NEXT: J2_call @lrand48, implicit-def dead $d0, implicit-def dead $d1, implicit-def dead $d2, implicit-def dead $d3, implicit-def dead $d4, implicit-def dead $d5, implicit-def dead $d6, implicit-def dead $d7, implicit-def dead $r28, implicit-def dead $r31, implicit-def dead $p0, implicit-def dead $p1, implicit-def dead $p2, implicit-def dead $p3, implicit-def dead $m0, implicit-def dead $m1, implicit-def dead $lc0, implicit-def dead $lc1, implicit-def dead $sa0, implicit-def dead $sa1, implicit-def dead $usr, implicit-def $usr_ovf, implicit-def dead $cs0, implicit-def dead $cs1, implicit-def dead $w0, implicit-def dead $w1, implicit-def dead $w2, implicit-def dead $w3, implicit-def dead $w4, implicit-def dead $w5, implicit-def dead $w6, implicit-def dead $w7, implicit-def dead $w8, implicit-def dead $w9, implicit-def dead $w10, implicit-def dead $w11, implicit-def dead $w12, implicit-def dead $w13, implicit-def dead $w14, implicit-def dead $w15, implicit-def dead $q0, implicit-def dead $q1, implicit-def dead $q2, implicit-def dead $q3, implicit-def $r0
163+
; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit-def dead $r31, implicit $r29
164+
; CHECK-NEXT: renamable $r18 = COPY $r0
165+
; CHECK-NEXT: renamable $r19 = S2_asr_i_r renamable $r18, 31
166+
; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit $r31, implicit $r30, implicit $r29
167+
; CHECK-NEXT: J2_call @lrand48, implicit-def dead $d0, implicit-def dead $d1, implicit-def dead $d2, implicit-def dead $d3, implicit-def dead $d4, implicit-def dead $d5, implicit-def dead $d6, implicit-def dead $d7, implicit-def dead $r28, implicit-def dead $r31, implicit-def dead $p0, implicit-def dead $p1, implicit-def dead $p2, implicit-def dead $p3, implicit-def dead $m0, implicit-def dead $m1, implicit-def dead $lc0, implicit-def dead $lc1, implicit-def dead $sa0, implicit-def dead $sa1, implicit-def dead $usr, implicit-def $usr_ovf, implicit-def dead $cs0, implicit-def dead $cs1, implicit-def dead $w0, implicit-def dead $w1, implicit-def dead $w2, implicit-def dead $w3, implicit-def dead $w4, implicit-def dead $w5, implicit-def dead $w6, implicit-def dead $w7, implicit-def dead $w8, implicit-def dead $w9, implicit-def dead $w10, implicit-def dead $w11, implicit-def dead $w12, implicit-def dead $w13, implicit-def dead $w14, implicit-def dead $w15, implicit-def dead $q0, implicit-def dead $q1, implicit-def dead $q2, implicit-def dead $q3, implicit-def $r0
168+
; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit-def dead $r31, implicit $r29
169+
; CHECK-NEXT: renamable $r16 = COPY $r0
170+
; CHECK-NEXT: renamable $d12 = S2_extractup renamable $d8, 22, 9
171+
; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit $r31, implicit $r30, implicit $r29
172+
; CHECK-NEXT: J2_call @lrand48, implicit-def dead $d0, implicit-def dead $d1, implicit-def dead $d2, implicit-def dead $d3, implicit-def dead $d4, implicit-def dead $d5, implicit-def dead $d6, implicit-def dead $d7, implicit-def dead $r28, implicit-def dead $r31, implicit-def dead $p0, implicit-def dead $p1, implicit-def dead $p2, implicit-def dead $p3, implicit-def dead $m0, implicit-def dead $m1, implicit-def dead $lc0, implicit-def dead $lc1, implicit-def dead $sa0, implicit-def dead $sa1, implicit-def dead $usr, implicit-def $usr_ovf, implicit-def dead $cs0, implicit-def dead $cs1, implicit-def dead $w0, implicit-def dead $w1, implicit-def dead $w2, implicit-def dead $w3, implicit-def dead $w4, implicit-def dead $w5, implicit-def dead $w6, implicit-def dead $w7, implicit-def dead $w8, implicit-def dead $w9, implicit-def dead $w10, implicit-def dead $w11, implicit-def dead $w12, implicit-def dead $w13, implicit-def dead $w14, implicit-def dead $w15, implicit-def dead $q0, implicit-def dead $q1, implicit-def dead $q2, implicit-def dead $q3, implicit-def $r0
173+
; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit-def dead $r31, implicit $r29
174+
; CHECK-NEXT: renamable $r1 = COPY renamable $r17
175+
; CHECK-NEXT: renamable $d0 = S2_extractup killed renamable $d0, 6, 25
176+
; CHECK-NEXT: renamable $d11 = A2_tfrpi -1
177+
; CHECK-NEXT: renamable $d1 = A2_tfrpi 2
178+
; CHECK-NEXT: renamable $d11 = S2_asl_r_p_acc killed renamable $d11, killed renamable $d1, killed renamable $r0
179+
; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit $r31, implicit $r30, implicit $r29
180+
; CHECK-NEXT: J2_call @lrand48, implicit-def dead $d0, implicit-def dead $d1, implicit-def dead $d2, implicit-def dead $d3, implicit-def dead $d4, implicit-def dead $d5, implicit-def dead $d6, implicit-def dead $d7, implicit-def dead $r28, implicit-def dead $r31, implicit-def dead $p0, implicit-def dead $p1, implicit-def dead $p2, implicit-def dead $p3, implicit-def dead $m0, implicit-def dead $m1, implicit-def dead $lc0, implicit-def dead $lc1, implicit-def dead $sa0, implicit-def dead $sa1, implicit-def dead $usr, implicit-def $usr_ovf, implicit-def dead $cs0, implicit-def dead $cs1, implicit-def dead $w0, implicit-def dead $w1, implicit-def dead $w2, implicit-def dead $w3, implicit-def dead $w4, implicit-def dead $w5, implicit-def dead $w6, implicit-def dead $w7, implicit-def dead $w8, implicit-def dead $w9, implicit-def dead $w10, implicit-def dead $w11, implicit-def dead $w12, implicit-def dead $w13, implicit-def dead $w14, implicit-def dead $w15, implicit-def dead $q0, implicit-def dead $q1, implicit-def dead $q2, implicit-def dead $q3
181+
; CHECK-NEXT: renamable $d2 = L2_loadrd_io %stack.0, 0 :: (load (s64) from %stack.0)
182+
; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def dead $r29, implicit-def dead $r30, implicit-def dead $r31, implicit $r29
183+
; CHECK-NEXT: renamable $d0 = S2_asl_r_p killed renamable $d11, killed renamable $r4
184+
; CHECK-NEXT: renamable $d1 = COPY renamable $d13
185+
; CHECK-NEXT: renamable $d1 = S2_lsr_i_p_and killed renamable $d1, killed renamable $d9, 9
186+
; CHECK-NEXT: renamable $d0 = S2_asl_i_p_and killed renamable $d0, killed renamable $d12, 42
187+
; CHECK-NEXT: S2_storerd_io undef renamable $r0, 0, killed renamable $d0 :: (store (s64) into `ptr undef`)
188+
; CHECK-NEXT: renamable $d0 = A2_tfrpi 0
189+
; CHECK-NEXT: renamable $p0 = C2_cmpeqp killed renamable $d1, killed renamable $d0
190+
; CHECK-NEXT: J2_jumpt killed renamable $p0, %bb.3, implicit-def dead $pc
191+
; CHECK-NEXT: J2_jump %bb.2, implicit-def dead $pc
192+
; CHECK-NEXT: {{ $}}
193+
; CHECK-NEXT: bb.2.if.end82:
194+
; CHECK-NEXT: successors: %bb.3(0x40000000), %bb.1(0x40000000)
195+
; CHECK-NEXT: liveins: $d8:0x0000000000000001, $d13, $r20
196+
; CHECK-NEXT: {{ $}}
197+
; CHECK-NEXT: renamable $r20 = A2_addi killed renamable $r20, -1
198+
; CHECK-NEXT: renamable $p0 = C2_cmpeqi renamable $r20, 0
199+
; CHECK-NEXT: J2_jumpf killed renamable $p0, %bb.1, implicit-def dead $pc
200+
; CHECK-NEXT: J2_jump %bb.3, implicit-def dead $pc
201+
; CHECK-NEXT: {{ $}}
202+
; CHECK-NEXT: bb.3.for.end:
145203
bb.0.entry:
146204
successors: %bb.1.for.body
147205
@@ -153,11 +211,6 @@ body: |
153211
%13 = S2_asl_r_p_acc %13, %47, %8.isub_lo
154212
%51 = A2_tfrpi 0
155213
156-
; CHECK: $d2 = S2_extractup undef renamable $d0, 6, 25
157-
; CHECK: $d0 = A2_tfrpi 2
158-
; CHECK: $d13 = A2_tfrpi -1
159-
; CHECK-NOT: undef $r4
160-
161214
bb.1.for.body:
162215
successors: %bb.3.for.end, %bb.2.if.end82
163216

0 commit comments

Comments
 (0)