[llvm-commits] CVS: reopt/lib/TraceToFunction/TraceToFunction.cpp

Brian Gaeke gaeke at cs.uiuc.edu
Tue Oct 26 13:08:30 PDT 2004



Changes in directory reopt/lib/TraceToFunction:

TraceToFunction.cpp updated: 1.86 -> 1.87
---
Log message:

Fix a bug where spurious alternate entry points into a trace could be
generated if there were instructions like PHINodes that might use a
trace BasicBlock without also inducing an incoming CFG edge.


---
Diffs of the changes:  (+1 -1)

Index: reopt/lib/TraceToFunction/TraceToFunction.cpp
diff -u reopt/lib/TraceToFunction/TraceToFunction.cpp:1.86 reopt/lib/TraceToFunction/TraceToFunction.cpp:1.87
--- reopt/lib/TraceToFunction/TraceToFunction.cpp:1.86	Thu Sep  2 11:55:46 2004
+++ reopt/lib/TraceToFunction/TraceToFunction.cpp	Tue Oct 26 15:08:20 2004
@@ -596,7 +596,7 @@
          ui != ue; ++ui) {
       assert (isa<Instruction> (*ui)
               && "can't deal with non-Instruction Users of BasicBlocks");
-      if (!T.contains (cast<Instruction> (*ui)->getParent ()))
+      if ((!T.contains (cast<Instruction> (*ui)->getParent ())) && (isa<TerminatorInst> (*ui)))
         if (std::find (b.begin (), b.end (), Blk) == b.end ())
           b.push_back (Blk);
     }






More information about the llvm-commits mailing list