[LLVMbugs] [Bug 8051] New: Linear Scan Register Allocator crash / invalid memory usage

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Sep 1 07:37:31 PDT 2010


http://llvm.org/bugs/show_bug.cgi?id=8051

           Summary: Linear Scan Register Allocator crash / invalid memory
                    usage
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: baldrick at free.fr
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=5436)
 --> (http://llvm.org/bugs/attachment.cgi?id=5436)
testcase .ll

The attached testcase causes llc to crash:

$ llc -relocation-model=pic -disable-fp-elim linearscan.ll
llc: llvm/lib/CodeGen/RegAllocLinearScan.cpp:1177:
void<unnamed>::RALinScan::assignRegOrStackSlotAtInterval(llvm::LiveInterval*):
Assertion `false && "Ran out of registers during register allocation!"' failed.

Valgrind says:

Invalid read of size 4
  at 0xA57721: (anonymous
namespace)::RALinScan::assignRegOrStackSlotAtInterval(llvm::LiveInterval*)
(LiveInterval.h:281)
  by 0xA59F40: (anonymous
namespace)::RALinScan::assignRegOrStackSlotAtInterval(llvm::LiveInterval*)
(RegAllocLinearScan.cpp:1175)
  by 0xA5AE5E: (anonymous namespace)::RALinScan::linearScan()
(RegAllocLinearScan.cpp:564)
  by 0xA5BFC9: (anonymous
namespace)::RALinScan::runOnMachineFunction(llvm::MachineFunction&)
(RegAllocLinearScan.cpp:490)
  by 0xCBB68C: llvm::FPPassManager::runOnFunction(llvm::Function&)
(PassManager.cpp:1443)
  by 0xCBB78A: llvm::FPPassManager::runOnModule(llvm::Module&)
(PassManager.cpp:1463)
  by 0xCBB216: llvm::MPPassManager::runOnModule(llvm::Module&)
(PassManager.cpp:1517)
  by 0xCBB396: llvm::PassManagerImpl::run(llvm::Module&) (PassManager.cpp:1598)
  by 0x51A6AF: main (llc.cpp:325)
Address 0x5e8c928 is not stack'd, malloc'd or (recently) free'd
Conditional jump or move depends on uninitialised value(s)
  at 0xB13D22: llvm::LiveInterval::overlapsFrom(llvm::LiveInterval const&,
llvm::LiveRange const*) const (LiveInterval.cpp:129)
  by 0xA5776C: (anonymous
namespace)::RALinScan::assignRegOrStackSlotAtInterval(llvm::LiveInterval*)
(RegAllocLinearScan.cpp:1042)
  by 0xA59F40: (anonymous
namespace)::RALinScan::assignRegOrStackSlotAtInterval(llvm::LiveInterval*)
(RegAllocLinearScan.cpp:1175)
  by 0xA5AE5E: (anonymous namespace)::RALinScan::linearScan()
(RegAllocLinearScan.cpp:564)
  by 0xA5BFC9: (anonymous
namespace)::RALinScan::runOnMachineFunction(llvm::MachineFunction&)
(RegAllocLinearScan.cpp:490)
  by 0xCBB68C: llvm::FPPassManager::runOnFunction(llvm::Function&)
(PassManager.cpp:1443)
  by 0xCBB78A: llvm::FPPassManager::runOnModule(llvm::Module&)
(PassManager.cpp:1463)
  by 0xCBB216: llvm::MPPassManager::runOnModule(llvm::Module&)
(PassManager.cpp:1517)
  by 0xCBB396: llvm::PassManagerImpl::run(llvm::Module&) (PassManager.cpp:1598)
  by 0x51A6AF: main (llc.cpp:325)

...

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list