[LLVMbugs] [Bug 20598] New: [AArch64] Assertion `!DefI.atEnd() && "Register has no defs"' in MachineTraceMetrics.cpp

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Aug 8 15:26:47 PDT 2014


            Bug ID: 20598
           Summary: [AArch64] Assertion `!DefI.atEnd() && "Register has no
                    defs"' in MachineTraceMetrics.cpp
           Product: tools
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: llc
          Assignee: unassignedbugs at nondot.org
          Reporter: apazos at codeaurora.org
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 12867
  --> http://llvm.org/bugs/attachment.cgi?id=12867&action=edit
reduced test case

Hi Gerolf and Andy,

r215151 seems to have broken SPEC2000/gcc, SPEC2006/gcc and some other
benchmarks with –O2 –g configuration.

We now hit the assertion:

MachineTraceMetrics.cpp:628: {anonymous}::DataDep::DataDep(const
llvm::MachineRegisterInfo*, unsigned int, unsigned int): Assertion
`!DefI.atEnd() && "Register has no defs"' failed.

Can you reproduce it on your side?

I also tried to reduce a test case, see attachment.

You can reproduce it with this command line:
llc  -O2 -mtriple=aarch64-none-linux-gnu test.ll

Can you please either revert the commit or fix it soon?

{anonymous}::DataDep::DataDep(const llvm::MachineRegisterInfo*, unsigned int,
unsigned int): Assertion `!DefI.atEnd() && "Register has no defs"' failed.
0  clang-3.6       0x0000000000f71cd2 llvm::sys::PrintStackTrace(_IO_FILE*) +
1  clang-3.6       0x0000000000f718f4
2  libpthread.so.0 0x00002b9547058cb0
3  libc.so.6       0x00002b9547cd7425 gsignal + 53
4  libc.so.6       0x00002b9547cdab8b abort + 379
5  libc.so.6       0x00002b9547cd00ee
6  libc.so.6       0x00002b9547cd0192
7  clang-3.6       0x0000000000a5a5ff
8  clang-3.6       0x0000000000a5ac83
const*) + 1507
9  clang-3.6       0x0000000000a60edc
llvm::MachineTraceMetrics::Ensemble::getTrace(llvm::MachineBasicBlock const*) +
10 clang-3.6       0x0000000000a1a549
11 clang-3.6       0x0000000000a1bf3b
12 clang-3.6       0x0000000000ca49df
llvm::FPPassManager::runOnFunction(llvm::Function&) + 655
13 clang-3.6       0x0000000000ca4ebb
llvm::FPPassManager::runOnModule(llvm::Module&) + 43
14 clang-3.6       0x0000000000ca51fd
llvm::legacy::PassManagerImpl::run(llvm::Module&) + 797
15 clang-3.6       0x000000000134c1b6
clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions
const&, clang::TargetOptions const&, clang::LangOptions const&,
llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::raw_ostream*) +
16 clang-3.6       0x000000000133f33f
17 clang-3.6       0x00000000017d35b3 clang::ParseAST(clang::Sema&, bool, bool)
+ 483
18 clang-3.6       0x000000000134014b clang::CodeGenAction::ExecuteAction() +
19 clang-3.6       0x00000000010dd176 clang::FrontendAction::Execute() + 118
20 clang-3.6       0x00000000010bd920
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 320
21 clang-3.6       0x000000000115fd0e
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 2014
22 clang-3.6       0x0000000000678fe8 cc1_main(char const**, char const**, char
const*, void*) + 1064
23 clang-3.6       0x000000000065aab6 main + 8070
24 libc.so.6       0x00002b9547cc276d __libc_start_main + 237
25 clang-3.6       0x0000000000676c35
Stack dump:
0.    Program arguments: clang -O2 -g <edited this line>
1.    <eof> parser at end of file
2.    Code generation
3.    Running pass 'Function Pass Manager' on module 'xxx'.
4.    Running pass 'Machine InstCombiner' on function '@xxx'
clang-3.6: error: unable to execute command: Aborted (core dumped)
clang-3.6: error: clang frontend command failed due to signal (use -v to see
clang version 3.6.0 
Target: aarch64--linux-gnu
Thread model: posix
clang-3.6: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and
associated run script.
clang-3.6: note: diagnostic msg: 


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/20140808/03aff9d5/attachment.html>

More information about the llvm-bugs mailing list