[LLVMbugs] [Bug 6879] New: intermittent ice: Why are we unswitching on a constant
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Mon Apr 19 20:03:51 PDT 2010
http://llvm.org/bugs/show_bug.cgi?id=6879
Summary: intermittent ice: Why are we unswitching on a constant
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: regehr at cs.utah.edu
CC: llvmbugs at cs.uiuc.edu, chenyang at cs.utah.edu
Created an attachment (id=4701)
--> (http://llvm.org/bugs/attachment.cgi?id=4701)
failure inducing C
This one is no fun! The bug only happens about 50% of the time, something
nondeterministic has crept into the execution. Valgrind seems to think it is a
use-after-free.
regehr at john-home:~/volatile/bugs/tmp314$ clang -O0 -S -emit-llvm small.c -o
small.bc -w
regehr at john-home:~/volatile/bugs/tmp314$ opt -O3 small.bcWARNING: You're
attempting to print out a bitcode file.
This is inadvisable as it may cause display problems. If
you REALLY want to taste LLVM bitcode first-hand, you
can force output with the `-f' option.
opt: LoopUnswitch.cpp:850:
void<unnamed>::LoopUnswitch::RewriteLoopBodyWithConditionConstant(llvm::Loop*,
llvm::Value*, llvm::Constant*, bool): Assertion `!isa<Constant>(LIC) && "Why
are we unswitching on a constant?"' failed.
0 opt 0x084d9af8
Stack dump:
0. Program arguments: opt -O3 small.bc
1. Running pass 'CallGraph Pass Manager' on module 'small.bc'.
2. Running pass 'Loop Pass Manager' on function '@func_39'
3. Running pass 'Unswitch loops' on basic block '%for.cond.i'
Aborted
regehr at john-home:~/volatile/bugs/tmp314$ clang -v
clang version 1.5 (trunk 101819)
Target: i386-pc-linux-gnu
Thread model: posix
--
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