[LLVMbugs] [Bug 24300] New: NVPTX: Bad machine code: Reading virtual register without a def

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Jul 29 07:46:47 PDT 2015


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

            Bug ID: 24300
           Summary: NVPTX: Bad machine code: Reading virtual register
                    without a def
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: PTX
          Assignee: unassignedbugs at nondot.org
          Reporter: tobias at grosser.es
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 14662
  --> https://llvm.org/bugs/attachment.cgi?id=14662&action=edit
Test case to reproduce the bug

The attached test case fails when running it through llc (243247).

The following error is printed:

----------------------------------------------------------------------
# Machine code for function hoge: Post SSA

BB#0: derived from LLVM BB %bb
    %vreg2<def> = IMOV64i 0; Int64Regs:%vreg2
    CBranch %vreg3<undef>, <BB#6>; Int1Regs:%vreg3
    GOTO <BB#1>
    Successors according to CFG: BB#1(16) BB#6(16)

BB#6: 
    Predecessors according to CFG: BB#0
    %vreg9<def> = COPY %vreg2; Int64Regs:%vreg9,%vreg2
    GOTO <BB#5>
    Successors according to CFG: BB#5

BB#1: derived from LLVM BB %bb1
    Predecessors according to CFG: BB#0
    CBranch %vreg4<undef>, <BB#3>; Int1Regs:%vreg4
    GOTO <BB#2>
    Successors according to CFG: BB#3(16) BB#2(16)

BB#2: derived from LLVM BB %bb2
    Predecessors according to CFG: BB#1 BB#3
    CBranch %vreg7, <BB#4>; Int1Regs:%vreg7
    Successors according to CFG: BB#4(16) BB#7(16)

BB#7: 
    Predecessors according to CFG: BB#2
    %vreg9<def> = COPY %vreg2; Int64Regs:%vreg9,%vreg2
    GOTO <BB#5>
    Successors according to CFG: BB#5

BB#3: derived from LLVM BB %bb3
    Predecessors according to CFG: BB#1
    GOTO <BB#2>
    Successors according to CFG: BB#2(16)

BB#4: derived from LLVM BB %bb5
    Predecessors according to CFG: BB#2
    %vreg9<def> = COPY %vreg2; Int64Regs:%vreg9,%vreg2
    Successors according to CFG: BB#5

BB#5: derived from LLVM BB %bb7
    Predecessors according to CFG: BB#4 BB#5 BB#6 BB#7
    %vreg0<def> = COPY %vreg9<kill>; Int64Regs:%vreg0,%vreg9
    %vreg1<def> = ADDi64ri %vreg0, 1; Int64Regs:%vreg1,%vreg0
    %vreg9<def> = COPY %vreg1; Int64Regs:%vreg9,%vreg1
    GOTO <BB#5>
    Successors according to CFG: BB#5

# End machine code for function hoge.

*** Bad machine code: Reading virtual register without a def ***
- function:    hoge
- basic block: BB#2 bb2 (0x621000005648)
- instruction: CBranch- operand 0:   %vreg7
LLVM ERROR: Found 1 machine code errors.
----------------------------------------------------------------------

The test case has been found by bugpoint while reducing another issue. It would
be great if we could _not_ crash, as this would allow allow me to reduce the
original bug.

-- 
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/20150729/2bdd5bba/attachment.html>


More information about the llvm-bugs mailing list