MultiSource/Applications/oggenc picked up a failure in the nightly run. It appears to be in the loop invariant code motion pass. Here's what happens: $ ~/llvm/Debug/bin/opt -licm bugpoint-reduced-simplified.bc WARNING: You're attempting to print out a bytecode file. This is inadvisable as it may cause display problems. If you REALLY want to taste LLVM bytecode first-hand, you can force output with the `-f' option. While deleting: uint %tmp16.i Use still stuck around after Def is destroyed: %exitcond155 = seteq uint 0, %tmp16.i ; <bool> [#uses=0] opt: Value.cpp:59: virtual llvm::Value::~Value(): Assertion `use_begin() == use_end() && "Uses remain when a value is destroyed!"' failed. /home/nicholas/llvm/Debug/bin/opt((anonymous namespace)::PrintStackTrace()+0x1a)[0x873245c] /home/nicholas/llvm/Debug/bin/opt((anonymous namespace)::SignalHandler(int)+0x110)[0x8732720] [0xffffe500] Aborted
Created attachment 385 [details] simplified testcase
Fixed. Testcase here: Transforms/LICM/2006-09-12-DeadUserOfSunkInstr.ll Patch here: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20060911/037730.html Thanks! -Chris
Verified. Thanks Chris!