brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.7 KiB · 00123ef Raw
200 lines · plain
1# RUN: llc -mtriple=amdgcn -mcpu=gfx803 -run-pass register-coalescer -verify-machineinstrs -o - %s | FileCheck --check-prefix=GCN %s2#3# This test gave "Use not jointly dominated by defs" when4# removePartialRedundancy attempted to prune and then re-extend a subrange.5#6# GCN: {{^body}}7 8---9name:            _amdgpu_ps_main10tracksRegLiveness: true11body:             |12  bb.0:13    successors: %bb.1, %bb.214 15    %21:vgpr_32 = nofpexcept V_TRUNC_F32_e32 undef %22:vgpr_32, implicit $mode, implicit $exec16    %23:vgpr_32 = nofpexcept V_CVT_U32_F32_e32 killed %21, implicit $mode, implicit $exec17    %108:vgpr_32 = V_LSHRREV_B32_e32 4, killed %23, implicit $exec18    undef %109.sub1:vreg_128 = COPY %10819    %28:sreg_32_xm0_xexec = S_BUFFER_LOAD_DWORD_IMM undef %29:sgpr_128, 3044, 0 :: (dereferenceable invariant load (s32))20    S_CMP_EQ_U32 killed %28, 0, implicit-def $scc21    S_CBRANCH_SCC0 %bb.2, implicit killed $scc22 23  bb.1:24    %138:vreg_128 = COPY killed %10925    S_BRANCH %bb.926 27  bb.2:28    successors: %bb.3, %bb.429 30    S_CBRANCH_SCC0 %bb.4, implicit undef $scc31 32  bb.3:33    %136:vreg_128 = COPY killed %10934    S_BRANCH %bb.535 36  bb.4:37    %136:vreg_128 = COPY killed %10938 39  bb.5:40    successors: %bb.6, %bb.841 42    %110:vreg_128 = COPY killed %13643    dead %32:sreg_32_xm0 = S_MOV_B32 044    %111:vreg_128 = COPY %11045    %111.sub3:vreg_128 = COPY undef %3246    S_CBRANCH_SCC1 %bb.8, implicit undef $scc47    S_BRANCH %bb.648 49  bb.6:50    %36:sreg_32_xm0_xexec = S_BUFFER_LOAD_DWORD_IMM undef %37:sgpr_128, 2708, 0 :: (dereferenceable invariant load (s32))51    %39:vgpr_32 = nnan arcp contract reassoc nofpexcept V_MAD_F32_e64 0, killed %110.sub1, 0, target-flags(amdgpu-gotprel32-lo) 0, 0, 0, 0, 0, implicit $mode, implicit $exec52    %40:vgpr_32 = nofpexcept V_MAD_F32_e64 0, %111.sub1, 0, target-flags(amdgpu-gotprel32-lo) 0, 0, 0, 0, 0, implicit $mode, implicit $exec53    %41:vgpr_32 = nofpexcept V_MUL_F32_e64 0, 0, 0, killed %40, 1, 0, implicit $mode, implicit $exec54    %43:vgpr_32 = nofpexcept V_MUL_F32_e32 0, %39, implicit $mode, implicit $exec55    %44:vgpr_32 = COPY killed %4356    %44:vgpr_32 = nofpexcept V_MAC_F32_e32 0, killed %41, %44, implicit $mode, implicit $exec57    %47:vgpr_32 = V_MOV_B32_e32 2143289344, implicit $exec58    %46:vgpr_32 = COPY killed %4759    %46:vgpr_32 = nofpexcept V_MAC_F32_e32 0, killed %39, %46, implicit $mode, implicit $exec60    undef %115.sub0:vreg_128 = COPY %4661    %115.sub1:vreg_128 = COPY killed %4662    %115.sub2:vreg_128 = COPY killed %4463    %50:sreg_64_xexec = V_CMP_NE_U32_e64 0, killed %36, implicit $exec64    dead %118:vgpr_32 = V_MOV_B32_e32 0, implicit $exec65    %137:vreg_128 = IMPLICIT_DEF66 67  bb.7:68    successors: %bb.7, %bb.869 70    %119:vreg_128 = COPY killed %13771    %121:vreg_128 = COPY killed %11972    %121.sub3:vreg_128 = COPY undef %3273    %56:vgpr_32 = nofpexcept V_ADD_F32_e32 %115.sub2, %121.sub2, implicit $mode, implicit $exec74    %59:vgpr_32 = nofpexcept V_ADD_F32_e32 %115.sub1, %121.sub1, implicit $mode, implicit $exec75    %62:vgpr_32 = nofpexcept V_ADD_F32_e32 %115.sub0, killed %121.sub0, implicit $mode, implicit $exec76    undef %117.sub0:vreg_128 = COPY killed %6277    %117.sub1:vreg_128 = COPY killed %5978    %117.sub2:vreg_128 = COPY killed %5679    %64:sreg_64 = S_AND_B64 $exec, %50, implicit-def dead $scc80    $vcc = COPY killed %6481    %137:vreg_128 = COPY killed %11782    S_CBRANCH_VCCNZ %bb.7, implicit killed $vcc83    S_BRANCH %bb.884 85  bb.8:86    dead %66:sreg_32_xm0_xexec = S_BUFFER_LOAD_DWORD_IMM undef %67:sgpr_128, 2704, 0 :: (dereferenceable invariant load (s32))87    %138:vreg_128 = COPY killed %11188 89  bb.9:90    %113:vreg_128 = COPY killed %13891    S_CBRANCH_SCC1 %bb.18, implicit undef $scc92    S_BRANCH %bb.1093 94  bb.10:95    S_CBRANCH_SCC1 %bb.12, implicit undef $scc96    S_BRANCH %bb.1197 98  bb.11:99 100  bb.12:101    successors: %bb.13, %bb.18102 103    S_CBRANCH_SCC1 %bb.18, implicit undef $scc104    S_BRANCH %bb.13105 106  bb.13:107    successors: %bb.14, %bb.17108 109    S_CBRANCH_SCC1 %bb.17, implicit undef $scc110    S_BRANCH %bb.14111 112  bb.14:113    S_CBRANCH_SCC1 %bb.16, implicit undef $scc114    S_BRANCH %bb.15115 116  bb.15:117 118  bb.16:119 120  bb.17:121 122  bb.18:123    S_CBRANCH_SCC1 %bb.26, implicit undef $scc124    S_BRANCH %bb.19125 126  bb.19:127    S_CBRANCH_SCC1 %bb.26, implicit undef $scc128    S_BRANCH %bb.20129 130  bb.20:131    S_CBRANCH_SCC1 %bb.25, implicit undef $scc132    S_BRANCH %bb.21133 134  bb.21:135    successors: %bb.22, %bb.24136 137    S_CBRANCH_SCC1 %bb.24, implicit undef $scc138    S_BRANCH %bb.22139 140  bb.22:141    successors: %bb.23, %bb.24142 143    S_CBRANCH_SCC1 %bb.24, implicit undef $scc144    S_BRANCH %bb.23145 146  bb.23:147 148  bb.24:149 150  bb.25:151 152  bb.26:153    S_CBRANCH_SCC1 %bb.33, implicit undef $scc154    S_BRANCH %bb.27155 156  bb.27:157    S_CBRANCH_SCC1 %bb.33, implicit undef $scc158    S_BRANCH %bb.28159 160  bb.28:161    dead %77:vgpr_32 = V_MOV_B32_e32 0, implicit $exec162    %78:vgpr_32 = nnan arcp contract reassoc nofpexcept V_MAD_F32_e64 0, killed %113.sub1, 0, target-flags(amdgpu-gotprel32-lo) 0, 0, 1065353216, 0, 0, implicit $mode, implicit $exec163    dead %80:sreg_32_xm0 = S_MOV_B32 0164    dead %82:vgpr_32 = nofpexcept V_MUL_F32_e32 killed %78, %78, implicit $mode, implicit $exec165    dead %126:vgpr_32 = V_MOV_B32_e32 2143289344, implicit $exec166    dead %125:vreg_128 = IMPLICIT_DEF167    dead %91:sreg_32_xm0 = S_MOV_B32 2143289344168    %96:sreg_64 = S_AND_B64 $exec, 0, implicit-def dead $scc169    %139:vreg_128 = IMPLICIT_DEF170 171  bb.29:172    successors: %bb.30, %bb.31173 174    dead %127:vreg_128 = COPY killed %139175    S_CBRANCH_SCC0 %bb.31, implicit undef $scc176 177  bb.30:178    S_BRANCH %bb.32179 180  bb.31:181    successors: %bb.32, %bb.34182 183    $vcc = COPY %96184    S_CBRANCH_VCCNZ %bb.34, implicit killed $vcc185    S_BRANCH %bb.32186 187  bb.32:188    dead %130:vreg_128 = IMPLICIT_DEF189    dead %128:vreg_128 = COPY undef %130190    %139:vreg_128 = IMPLICIT_DEF191    S_BRANCH %bb.29192 193  bb.33:194    S_ENDPGM 0195 196  bb.34:197    S_ENDPGM 0198 199...200