From 3dc326ba83c8fc9a47f1cb9968ff15ba73913ce8 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Fri, 9 Oct 2009 06:21:52 +0000 Subject: Fix a logic error that caused non-rematable loop invariants loads to be licm'ed out of loop. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83622 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/MachineLICM.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'lib/CodeGen') diff --git a/lib/CodeGen/MachineLICM.cpp b/lib/CodeGen/MachineLICM.cpp index b5827aadcf..e60139cb92 100644 --- a/lib/CodeGen/MachineLICM.cpp +++ b/lib/CodeGen/MachineLICM.cpp @@ -326,8 +326,7 @@ bool MachineLICM::IsProfitableToHoist(MachineInstr &MI) { // FIXME: For now, only hoist re-materilizable instructions. LICM will // increase register pressure. We want to make sure it doesn't increase // spilling. - if (!TID.mayLoad() && (!TID.isRematerializable() || - !TII->isTriviallyReMaterializable(&MI))) + if (!TID.isRematerializable() || !TII->isTriviallyReMaterializable(&MI)) return false; // If result(s) of this instruction is used by PHIs, then don't hoist it. -- cgit v1.2.3-70-g09d2