revert r123146 which disabled code that wasn't the root cause
authorChris Lattner <sabre@nondot.org>
Wed, 12 Jan 2011 01:52:23 +0000 (01:52 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 12 Jan 2011 01:52:23 +0000 (01:52 +0000)
of the bootstrap miscompare issue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123299 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/MemCpyOptimizer.cpp
test/Transforms/MemCpyOpt/form-memset.ll

index 3327b760a4698912b5931131a661c8b2aef4a159..41e10ba858149632e1e053fa120ff162a57dd6d8 100644 (file)
@@ -391,8 +391,6 @@ Instruction *MemCpyOpt::tryMergingIntoMemset(Instruction *StartInst,
       
       Ranges.addStore(Offset, NextStore);
     } else {
-      break;
-      
       MemSetInst *MSI = cast<MemSetInst>(BI);
       
       if (MSI->isVolatile() || ByteVal != MSI->getValue() ||
index abb18cccdf9856242ce1c0a379920186004df25e..86fe6c4abd60bf6bffa085cd8017be6427b535ed 100644 (file)
@@ -173,24 +173,22 @@ entry:
   %0 = bitcast i32* %add.ptr to i8*
   tail call void @llvm.memset.p0i8.i64(i8* %0, i8 0, i64 11, i32 1, i1 false)
   ret void
-  ;; DISABLED
 ; CHECK: @test3
-; HECK-NOT: store
-; CHECK-NOT: call void @llvm.memset.p0i8.i64(i8* %1, i8 0, i64 15, i32 4, i1 false)
+; CHECK-NOT: store
+; CHECK: call void @llvm.memset.p0i8.i64(i8* %1, i8 0, i64 15, i32 4, i1 false)
 }
 
 ; store followed by memset, different offset scenario
 define void @test4(i32* nocapture %P) nounwind ssp {
 entry:
-  ;; DISABLED
   store i32 0, i32* %P, align 4
   %add.ptr = getelementptr inbounds i32* %P, i64 1
   %0 = bitcast i32* %add.ptr to i8*
   tail call void @llvm.memset.p0i8.i64(i8* %0, i8 0, i64 11, i32 1, i1 false)
   ret void
 ; CHECK: @test4
-; HECK-NOT: store
-; CHECK-NOT: call void @llvm.memset.p0i8.i64(i8* %1, i8 0, i64 15, i32 4, i1 false)
+; CHECK-NOT: store
+; CHECK: call void @llvm.memset.p0i8.i64(i8* %1, i8 0, i64 15, i32 4, i1 false)
 }
 
 declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind