[llvm-bugs] [Bug 47492] New: Bad machine code: No live subrange at use after Greedy Register Allocator

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Sep 11 06:04:16 PDT 2020


https://bugs.llvm.org/show_bug.cgi?id=47492

            Bug ID: 47492
           Summary: Bad machine code: No live subrange at use after Greedy
                    Register Allocator
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Register Allocator
          Assignee: unassignedbugs at nondot.org
          Reporter: jay.foad at gmail.com
                CC: llvm-bugs at lists.llvm.org, quentin.colombet at gmail.com

Created attachment 23947
  --> https://bugs.llvm.org/attachment.cgi?id=23947&action=edit
test case

With the attached test case I get:

$ ~/llvm-debug/bin/llc -march=amdgcn -verify-machineinstrs ge.mir
-start-before=greedy
[...]
*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 844B     undef %433.sub0:vreg_128 = COPY %432.sub0:vreg_128
- operand 1:   %432.sub0:vreg_128
- interval:    %432 [256r,844r:0)  0 at 256r L0000000000000030 [256r,844r:0) 
0 at 256r weight:3.066802e-03
- at:          844B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 908B     undef %449.sub0:vreg_128 = COPY %448.sub0:vreg_128
- operand 1:   %448.sub0:vreg_128
- interval:    %448 [320r,908r:0)  0 at 320r L0000000000000030 [320r,908r:0) 
0 at 320r weight:3.066802e-03
- at:          908B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 920B     undef %453.sub0:vreg_128 = COPY %452.sub0:vreg_128
- operand 1:   %452.sub0:vreg_128
- interval:    %452 [336r,920r:0)  0 at 336r L0000000000000030 [336r,920r:0) 
0 at 336r weight:3.079268e-03
- at:          920B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 972B     undef %465.sub0:vreg_128 = COPY %464.sub0:vreg_128
- operand 1:   %464.sub0:vreg_128
- interval:    %464 [384r,972r:0)  0 at 384r L0000000000000030 [384r,972r:0) 
0 at 384r weight:3.066802e-03
- at:          972B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 984B     undef %469.sub0:vreg_128 = COPY %468.sub0:vreg_128
- operand 1:   %468.sub0:vreg_128
- interval:    %468 [400r,984r:0)  0 at 400r L0000000000000030 [400r,984r:0) 
0 at 400r weight:3.079268e-03
- at:          984B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 1036B    undef %481.sub0:vreg_128 = COPY %480.sub0:vreg_128
- operand 1:   %480.sub0:vreg_128
- interval:    %480 [464r,1036r:0)  0 at 464r L0000000000000030 [464r,1036r:0) 
0 at 464r weight:3.117284e-03
- at:          1036B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 1048B    undef %485.sub0:vreg_128 = COPY %484.sub0:vreg_128
- operand 1:   %484.sub0:vreg_128
- interval:    %484 [480r,1048r:0)  0 at 480r L0000000000000030 [480r,1048r:0) 
0 at 480r weight:3.130165e-03
- at:          1048B

*** Bad machine code: No live subrange at use ***
- function:    zextload_global_v64i16_to_v64i64
- basic block: %bb.0  (0x946b398) [0B;2848B)
- instruction: 1100B    undef %497.sub0:vreg_128 = COPY %496.sub0:vreg_128
- operand 1:   %496.sub0:vreg_128
- interval:    %496 [544r,1100r:0)  0 at 544r L0000000000000030 [544r,1100r:0) 
0 at 544r weight:3.169456e-03
- at:          1100B
LLVM ERROR: Found 8 machine code errors.
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash
backtrace.


The test case comes from test/CodeGen/AMDGPU/global-extload-i16.ll compiled
with D87502 applied.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200911/7950883d/attachment.html>


More information about the llvm-bugs mailing list