[LLVMbugs] [Bug 17529] New: Assertion `!hasInterval(Reg) && "Interval already exists!"' failed.
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Wed Oct 9 17:17:26 PDT 2013
http://llvm.org/bugs/show_bug.cgi?id=17529
Bug ID: 17529
Summary: Assertion `!hasInterval(Reg) && "Interval already
exists!"' failed.
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Backend: PTX
Assignee: unassignedbugs at nondot.org
Reporter: maemarcus at gmail.com
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
As of r192159 NVPTX backend crashes on a reduced test case:
$ llc --version
LLVM (http://llvm.org/):
LLVM version 3.4svn
DEBUG build with assertions.
Built Oct 9 2013 (00:05:24).
Default target: x86_64-unknown-linux-gnu
Host CPU: core-avx-i
Registered Targets:
nvptx - NVIDIA PTX 32-bit
nvptx64 - NVIDIA PTX 64-bit
x86 - 32-bit X86: Pentium-Pro and above
x86-64 - 64-bit X86: EM64T and AMD64
$ opt bugpoint-reduced-simplified.bc -S -o -
; ModuleID = 'bugpoint-reduced-simplified.bc'
target datalayout =
"e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v16:16:16-v32:32:32-v64:64:64-v128:128:128-n16:32:64"
target triple = "nvptx64-nvidia-cuda"
; Function Attrs: nounwind
define ptx_device void @kernelgen_memcpy(i8* nocapture %dst) #0 {
entry:
br i1 undef, label %for.end, label %vector.body
vector.body: ; preds = %vector.body,
%entry
%index = phi i64 [ %index.next, %vector.body ], [ 0, %entry ]
%scevgep9 = getelementptr i8* %dst, i64 %index
%scevgep910 = bitcast i8* %scevgep9 to <4 x i8>*
store <4 x i8> undef, <4 x i8>* %scevgep910, align 1
%index.next = add i64 %index, 4
%0 = icmp eq i64 undef, %index.next
br i1 %0, label %middle.block, label %vector.body
middle.block: ; preds = %vector.body
br i1 undef, label %for.end, label %for.body.preheader1
for.body.preheader1: ; preds = %middle.block
%scevgep2 = getelementptr i8* %dst, i64 0
br label %for.body
for.body: ; preds = %for.body,
%for.body.preheader1
%lsr.iv3 = phi i8* [ %scevgep2, %for.body.preheader1 ], [ %scevgep4,
%for.body ]
store i8 undef, i8* %lsr.iv3, align 1
%scevgep4 = getelementptr i8* %lsr.iv3, i64 1
br label %for.body
for.end: ; preds = %middle.block,
%entry
ret void
}
attributes #0 = { nounwind "less-precise-fpmad"="false"
"no-frame-pointer-elim"="false" "no-infs-fp-math"="false"
"no-nans-fp-math"="false" "no-realign-stack" "stack-protector-buffer-size"="8"
"unsafe-fp-math"="false" "use-soft-float"="false" }
$ llc bugpoint-reduced-simplified.bc -o -
//
// Generated by LLVM NVPTX Back-End
//
.version 3.1
.target sm_20
.address_size 64
kernelgen-llc:
/home/marcusmae/rpmbuild/BUILD/llvm/build/include/llvm/CodeGen/LiveIntervalAnalysis.h:122:
llvm::LiveInterval& llvm::LiveIntervals::createEmptyInterval(unsigned int):
Assertion `!hasInterval(Reg) && "Interval already exists!"' failed.
0 libLLVM-3.4svn.so 0x00007fda48616945 llvm::sys::PrintStackTrace(_IO_FILE*) +
38
1 libLLVM-3.4svn.so 0x00007fda48616bc2
2 libLLVM-3.4svn.so 0x00007fda48616621
3 libpthread.so.0 0x00007fda46f0fcb0
4 libc.so.6 0x00007fda46248425 gsignal + 53
5 libc.so.6 0x00007fda4624bb8b abort + 379
6 libc.so.6 0x00007fda462410ee
7 libc.so.6 0x00007fda46241192
8 libLLVM-3.4svn.so 0x00007fda47ceafea
9 libLLVM-3.4svn.so 0x00007fda47ec54b7
10 libLLVM-3.4svn.so 0x00007fda47ec32fa
11 libLLVM-3.4svn.so 0x00007fda47da9c5d
llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 95
12 libLLVM-3.4svn.so 0x00007fda48017482
llvm::FPPassManager::runOnFunction(llvm::Function&) + 290
13 libLLVM-3.4svn.so 0x00007fda480175f2
llvm::FPPassManager::runOnModule(llvm::Module&) + 84
14 libLLVM-3.4svn.so 0x00007fda48017946
llvm::MPPassManager::runOnModule(llvm::Module&) + 556
15 libLLVM-3.4svn.so 0x00007fda48017f3c
llvm::PassManagerImpl::run(llvm::Module&) + 244
16 libLLVM-3.4svn.so 0x00007fda48018147 llvm::PassManager::run(llvm::Module&) +
39
17 kernelgen-llc 0x000000000040ee58
18 kernelgen-llc 0x000000000040df37 main + 237
19 libc.so.6 0x00007fda4623376d __libc_start_main + 237
20 kernelgen-llc 0x000000000040d859
Stack dump:
0. Program arguments: kernelgen-llc bugpoint-reduced-simplified.bc -o -
1. Running pass 'Function Pass Manager' on module
'bugpoint-reduced-simplified.bc'.
2. Running pass 'Eliminate PHI nodes for register allocation, intelligently'
on function '@kernelgen_memcpy'
Aborted (core dumped)
--
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/20131010/3719379a/attachment.html>
More information about the llvm-bugs
mailing list