[llvm-commits] CVS: llvm/lib/Transforms/Scalar/LICM.cpp

Dan Gohman djg at cray.com
Tue Jun 5 09:06:19 PDT 2007



Changes in directory llvm/lib/Transforms/Scalar:

LICM.cpp updated: 1.104 -> 1.105
---
Log message:

Allow insertelement, extractelement, and shufflevector to be hoisted/sunk
by LICM.


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

 LICM.cpp |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)


Index: llvm/lib/Transforms/Scalar/LICM.cpp
diff -u llvm/lib/Transforms/Scalar/LICM.cpp:1.104 llvm/lib/Transforms/Scalar/LICM.cpp:1.105
--- llvm/lib/Transforms/Scalar/LICM.cpp:1.104	Sun Jun  3 19:32:21 2007
+++ llvm/lib/Transforms/Scalar/LICM.cpp	Tue Jun  5 11:05:55 2007
@@ -389,7 +389,9 @@
 
   // Otherwise these instructions are hoistable/sinkable
   return isa<BinaryOperator>(I) || isa<CastInst>(I) ||
-         isa<SelectInst>(I) || isa<GetElementPtrInst>(I) || isa<CmpInst>(I);
+         isa<SelectInst>(I) || isa<GetElementPtrInst>(I) || isa<CmpInst>(I) ||
+         isa<InsertElementInst>(I) || isa<ExtractElementInst>(I) ||
+         isa<ShuffleVectorInst>(I);
 }
 
 /// isNotUsedInLoop - Return true if the only users of this instruction are






More information about the llvm-commits mailing list