[llvm-bugs] [Bug 26706] New: PowerPC64: SEGV in llvm::LiveRange::join

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Feb 22 23:36:49 PST 2016


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

            Bug ID: 26706
           Summary: PowerPC64: SEGV in llvm::LiveRange::join
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: PowerPC
          Assignee: unassignedbugs at nondot.org
          Reporter: anton at samba.org
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

The following testcase:

long a;
int b, c, d;

void fn1(void)
{
    b = 0;

    for (; b <= 49; b++) {
        long *e = &c;
        a ^= c;
        *e = d;
    }
}

Built with clang -Os -S testcase.c

SEGVs in:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x3fffb7ff7e20 (LWP 42763)]
llvm::LiveRange::join (this=0x1298a630, Other=...,
LHSValNoAssignments=<optimised out>, RHSValNoAssignments=0x3fffffffbeb0,
NewVNInfo=...) at /home/anton/llvm/lib/CodeGen/LiveInterval.cpp:635
635        S.valno = NewVNInfo[RHSValNoAssignments[S.valno->id]];
(gdb) backtrace 
#0  llvm::LiveRange::join (this=0x1298a630, Other=...,
LHSValNoAssignments=<optimised out>, RHSValNoAssignments=0x3fffffffbeb0,
NewVNInfo=...) at /home/anton/llvm/lib/CodeGen/LiveInterval.cpp:635
#1  0x0000000010831b04 in (anonymous
namespace)::RegisterCoalescer::joinVirtRegs (this=0x1290b870, CP=...) at
/home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:2679
#2  0x000000001083208c in (anonymous
namespace)::RegisterCoalescer::joinIntervals (CP=..., this=0x1290b870) at
/home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:2699
#3  (anonymous namespace)::RegisterCoalescer::joinCopy (Again=<synthetic
pointer>, CopyMI=0x129734f0, this=0x1290b870) at
/home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:1414
#4  (anonymous namespace)::RegisterCoalescer::copyCoalesceWorkList
(this=0x1290b870, CurrList=...) at
/home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:2770
#5  0x0000000010834674 in (anonymous
namespace)::RegisterCoalescer::copyCoalesceInMBB (MBB=<optimised out>,
this=<optimised out>) at
/home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:2889
#6  (anonymous namespace)::RegisterCoalescer::joinAllIntervals
(this=0x1290b870) at /home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:2924
#7  (anonymous namespace)::RegisterCoalescer::runOnMachineFunction
(this=0x1290b870, fn=...) at
/home/anton/llvm/lib/CodeGen/RegisterCoalescer.cpp:2971
#8  0x00000000107a72b8 in llvm::MachineFunctionPass::runOnFunction
(this=0x1290b870, F=...) at
/home/anton/llvm/lib/CodeGen/MachineFunctionPass.cpp:43
#9  0x0000000010a4556c in llvm::FPPassManager::runOnFunction (this=0x128f95d0,
F=...) at /home/anton/llvm/lib/IR/LegacyPassManager.cpp:1550
#10 0x0000000010a45aac in llvm::FPPassManager::runOnModule (this=0x128f95d0,
M=...) at /home/anton/llvm/lib/IR/LegacyPassManager.cpp:1571
#11 0x0000000010a45054 in (anonymous namespace)::MPPassManager::runOnModule
(M=..., this=0x128d9af0) at /home/anton/llvm/lib/IR/LegacyPassManager.cpp:1627
#12 llvm::legacy::PassManagerImpl::run (this=0x128d9640, M=...) at
/home/anton/llvm/lib/IR/LegacyPassManager.cpp:1730
#13 0x0000000010a452dc in llvm::legacy::PassManager::run (this=<optimised out>,
M=...) at /home/anton/llvm/lib/IR/LegacyPassManager.cpp:1761
#14 0x0000000010f42bcc in (anonymous
namespace)::EmitAssemblyHelper::EmitAssembly (OS=0x128741e0, Action=<optimised
out>, this=0x3fffffffc9c8) at
/home/anton/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp:698
#15 clang::EmitBackendOutput (Diags=..., CGOpts=..., TOpts=..., LOpts=...,
TDesc=..., M=0x12874990, Action=<optimised out>, OS=0x128741e0) at
/home/anton/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp:710
#16 0x0000000011521974 in clang::BackendConsumer::HandleTranslationUnit
(this=0x12874380, C=...) at
/home/anton/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:178
#17 0x000000001183c8a8 in clang::ParseAST (S=..., PrintStats=<optimised out>,
SkipFunctionBodies=<optimised out>) at
/home/anton/llvm/tools/clang/lib/Parse/ParseAST.cpp:168
#18 0x000000001125cfd8 in clang::ASTFrontendAction::ExecuteAction
(this=0x12841720) at
/home/anton/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:539
#19 0x00000000115228f4 in clang::CodeGenAction::ExecuteAction (this=<optimised
out>) at /home/anton/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:835
#20 0x000000001125e8b8 in clang::FrontendAction::Execute (this=<optimised out>)
at /home/anton/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:439
#21 0x0000000011231720 in clang::CompilerInstance::ExecuteAction
(this=0x128401a0, Act=...) at
/home/anton/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp:840
#22 0x00000000112efbc8 in clang::ExecuteCompilerInvocation (Clang=0x128401a0)
at
/home/anton/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:227
#23 0x0000000010496208 in cc1_main (Argv=..., Argv0=0x3ffffffff447
"/home/anton/llvm.install/bin/clang-3.9", MainAddr=0x104941e0
<GetExecutablePath[abi:cxx11](char const*, bool)>)
    at /home/anton/llvm/tools/clang/tools/driver/cc1_main.cpp:116
#24 0x000000001046adb8 in ExecuteCC1Tool (Tool=..., argv=...) at
/home/anton/llvm/tools/clang/tools/driver/driver.cpp:301
#25 main (argc_=<optimised out>, argv_=<optimised out>) at
/home/anton/llvm/tools/clang/tools/driver/driver.cpp:366

-- 
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/20160223/5479890f/attachment.html>


More information about the llvm-bugs mailing list