annotate llvm/test/CodeGen/AMDGPU/coalesce-identity-copies-undef-subregs.mir @ 236:c4bab56944e8 llvm-original

LLVM 16
author kono
date Wed, 09 Nov 2022 17:45:10 +0900
parents 79ff65ed7e25
children 1f2b6ac9f198
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 # RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx906 -verify-coalescing -verify-machineinstrs -start-before=simple-register-coalescing -stop-after=machine-scheduler -o - %s | FileCheck %s
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 # Tests that break due to the handling of partially undef registers
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 # when whole register identity copies are erased.
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 # Make sure there is no verifier error after
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 # RenameIndepependentSubregs processes this. The coalescer would
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 # remove the identity copy in %bb.1, and leave behind a dummy interval
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 # across bb.1 with no corresponding value anywhere in the function.
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 name: identity_copy_undef_subrange
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 ; CHECK-LABEL: name: identity_copy_undef_subrange
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
18 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
19 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
20 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
21 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
22 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
23 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
24 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
25 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
26 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
27 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
28 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
29 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
30 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
31 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
32 ; CHECK-NEXT: undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
33 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
36
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
38
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
41
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
45
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 killed %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
49
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
51
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 # Test another use of the register inside the block.
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 name: identity_copy_undef_subrange_other_uses0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 ; CHECK-LABEL: name: identity_copy_undef_subrange_other_uses0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
59 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
60 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
61 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
62 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
63 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
64 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
65 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
66 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
67 ; CHECK-NEXT: S_NOP 0, implicit undef %0.sub0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
68 ; CHECK-NEXT: S_NOP 0, implicit undef %0.sub0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
69 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
70 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
71 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
72 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
73 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
74 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
75 ; CHECK-NEXT: undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
76 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
79 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
80
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
82 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
83
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
84 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
85 S_NOP 0, implicit %0.sub0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
86 S_NOP 0, implicit %0.sub0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
87 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
88 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
89
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
90 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
91 undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 killed %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
92 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
93
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
94 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
95
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
96 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
97 name: second_identity_copy
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
98 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
99 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
100 ; CHECK-LABEL: name: second_identity_copy
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
101 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
102 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
103 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
104 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
105 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
106 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
107 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
108 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
109 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
110 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
111 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
112 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
113 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
114 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
115 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
116 ; CHECK-NEXT: undef %0.sub1:vreg_64 = nofpexcept V_MUL_F32_e32 0, %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
117 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
118 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
119 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
120
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
121 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
122
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
123 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
124 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
125
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
126 %0:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
127 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
128 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
129 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
130
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
131 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
132 undef %0.sub1:vreg_64 = nofpexcept V_MUL_F32_e32 0, killed %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
133 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
134
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
135 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
136
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
137 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
138 name: second_identity_copy_undef_lane_outblock
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
139 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
140 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
141 ; CHECK-LABEL: name: second_identity_copy_undef_lane_outblock
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
142 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
143 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
144 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
145 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
146 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
147 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
148 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
149 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
150 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
151 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
152 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
153 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
154 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
155 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
156 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
157 ; CHECK-NEXT: %0.sub1:vreg_64 = nofpexcept V_MUL_F32_e32 0, %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
158 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
159 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
160 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
161
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
162 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
163
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
164 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
165 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
166
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
167 %0:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
168 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
169 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
170 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
171
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
172 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
173 %0.sub1:vreg_64 = nofpexcept V_MUL_F32_e32 0, killed %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
174 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
175
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
176 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
177
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
178 # The same value number appears in multiple blocks
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
179 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
180 name: identity_copy_undef_subrange_null_vninfo_to_remove
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
181 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
182 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
183 ; CHECK-LABEL: name: identity_copy_undef_subrange_null_vninfo_to_remove
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
184 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
185 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
186 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
187 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
188 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
189 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
190 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
191 ; CHECK-NEXT: successors: %bb.3(0x40000000), %bb.2(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
192 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
193 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.3, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
194 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
195 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
196 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
197 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
198 ; CHECK-NEXT: S_NOP 0, implicit undef %0.sub0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
199 ; CHECK-NEXT: undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
200 ; CHECK-NEXT: S_BRANCH %bb.1
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
201 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
202 ; CHECK-NEXT: bb.3:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
203 ; CHECK-NEXT: S_NOP 0, implicit undef %0.sub0
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
204 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
205 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
206
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
207 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
208
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
209 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
210 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
211 S_CBRANCH_EXECNZ %bb.3, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
212
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
213 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
214 S_NOP 0, implicit %0.sub0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
215 undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 killed %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
216 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
217
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
218 bb.3:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
219 S_NOP 0, implicit %0.sub0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
220
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
221 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
222
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
223 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
224 name: undef_copy_self_loop0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
225 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
226 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
227 ; CHECK-LABEL: name: undef_copy_self_loop0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
228 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
229 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
230 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
231 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
232 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
233 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
234 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
235 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
236 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
237 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
238 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
239 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
240 ; CHECK-NEXT: S_NOP 0, implicit undef %0.sub0
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
241 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
242 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
243
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
244 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
245
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
246 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
247 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
248 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
249
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
250 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
251 S_NOP 0, implicit %0.sub0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
252
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
253 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
254
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
255 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
256 name: undef_copy_self_loop1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
257 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
258 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
259 ; CHECK-LABEL: name: undef_copy_self_loop1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
260 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
261 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
262 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
263 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
264 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
265 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
266 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
267 ; CHECK-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
268 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
269 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
270 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
271 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
272 ; CHECK-NEXT: S_NOP 0, implicit %0.sub1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
273 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
274 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
275
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
276 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
277
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
278 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
279 %0:vreg_64 = COPY %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
280 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
281
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
282 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
283 S_NOP 0, implicit %0.sub1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
284
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
285 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
286
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
287 # The coalescing of the %0 = %2 COPY in %bb.2 needs to prune the dead
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
288 # phi range across %bb.1 after it is erased.
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
289 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
290 name: prune_subrange_phi_value_0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
291 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
292 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
293 ; CHECK-LABEL: name: prune_subrange_phi_value_0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
294 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
295 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
296 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
297 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
298 ; CHECK-NEXT: undef %2.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
299 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
300 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
301 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
302 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
303 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
304 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
305 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
306 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
307 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
308 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
309 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
310 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
311 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
312
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
313 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
314
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
315 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
316 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
317
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
318 %1:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
319 %0:vreg_64 = COPY %1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
320 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
321 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
322
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
323 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
324 undef %2.sub1:vreg_64 = COPY %0.sub1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
325 %0:vreg_64 = COPY killed %2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
326 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
327
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
328 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
329
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
330 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
331 name: prune_subrange_phi_value_0_0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
332 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
333 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
334 ; CHECK-LABEL: name: prune_subrange_phi_value_0_0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
335 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
336 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
337 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
338 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
339 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
340 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
341 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
342 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
343 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
344 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
345 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
346 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
347 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
348 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
349 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
350 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
351 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
352 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
353
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
354 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
355
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
356 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
357 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
358
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
359 %1:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
360 %0:vreg_64 = COPY %1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
361 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
362 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
363
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
364 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
365 undef %0.sub1:vreg_64 = COPY %0.sub1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
366 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
367
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
368 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
369
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
370 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
371 name: prune_subrange_phi_value_0_1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
372 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
373 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
374 ; CHECK-LABEL: name: prune_subrange_phi_value_0_1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
375 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
376 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
377 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
378 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
379 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
380 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
381 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
382 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
383 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
384 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
385 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
386 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
387 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
388 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
389 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
390 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
391 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
392 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
393
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
394 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
395
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
396 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
397 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
398
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
399 %1:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
400 %0:vreg_64 = COPY %1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
401 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
402 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
403
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
404 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
405 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
406
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
407 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
408
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
409 # Variant of testcase that asserts since there wasn't already an
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
410 # incoming segment at the erased copy, and no valid end point.
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
411 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
412 name: prune_subrange_phi_value_1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
413 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
414 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
415 ; CHECK-LABEL: name: prune_subrange_phi_value_1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
416 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
417 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
418 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
419 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
420 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
421 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
422 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
423 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
424 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
425 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
426 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
427 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
428 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
429 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
430 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
431 ; CHECK-NEXT: undef %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
432 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
433 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
434 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
435
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
436 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
437
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
438 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
439 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
440
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
441 %0:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
442 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
443 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
444
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
445 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
446 undef %1.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 killed %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
447 %0:vreg_64 = COPY killed %1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
448 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
449
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
450 ...
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
451
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
452 ---
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
453 name: prune_subrange_phi_value_2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
454 tracksRegLiveness: true
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
455 body: |
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
456 ; CHECK-LABEL: name: prune_subrange_phi_value_2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
457 ; CHECK: bb.0:
236
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
458 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
459 ; CHECK-NEXT: liveins: $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
460 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
461 ; CHECK-NEXT: undef %0.sub1:vreg_64 = COPY $vgpr0
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
462 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
463 ; CHECK-NEXT: bb.1:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
464 ; CHECK-NEXT: successors: %bb.2(0x40000000), %bb.1(0x40000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
465 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
466 ; CHECK-NEXT: S_CBRANCH_EXECNZ %bb.1, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
467 ; CHECK-NEXT: S_BRANCH %bb.2
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
468 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
469 ; CHECK-NEXT: bb.2:
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
470 ; CHECK-NEXT: successors: %bb.1(0x80000000)
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
471 ; CHECK-NEXT: {{ $}}
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
472 ; CHECK-NEXT: %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 %0.sub1, implicit $mode, implicit $exec
c4bab56944e8 LLVM 16
kono
parents: 221
diff changeset
473 ; CHECK-NEXT: S_BRANCH %bb.1
221
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
474 bb.0:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
475 liveins: $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
476
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
477 undef %0.sub1:vreg_64 = COPY killed $vgpr0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
478
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
479 bb.1:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
480 successors: %bb.2, %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
481
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
482 %0:vreg_64 = COPY killed %0
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
483 S_CBRANCH_EXECNZ %bb.1, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
484 S_BRANCH %bb.2
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
485
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
486 bb.2:
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
487 %0.sub1:vreg_64 = nofpexcept V_CEIL_F32_e32 %0.sub1, implicit $mode, implicit $exec
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
488 S_BRANCH %bb.1
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
489
79ff65ed7e25 LLVM12 Original
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff changeset
490 ...