diff options
| author | Chris Lattner <sabre@nondot.org> | 2010-11-18 07:49:32 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2010-11-18 07:49:32 +0000 |
| commit | bbb0f9661da98a040137452870cecd40f8e60cc7 (patch) | |
| tree | ed8b53db7074849c5344515e238e8680fc7f48ad /llvm/test/Transforms/MemCpyOpt | |
| parent | c274a834426bcca5ccfbfec52902836636eb1390 (diff) | |
| download | bcm5719-llvm-bbb0f9661da98a040137452870cecd40f8e60cc7.tar.gz bcm5719-llvm-bbb0f9661da98a040137452870cecd40f8e60cc7.zip | |
filecheckize, this is still not optimal, see PR8643
llvm-svn: 119693
Diffstat (limited to 'llvm/test/Transforms/MemCpyOpt')
| -rw-r--r-- | llvm/test/Transforms/MemCpyOpt/memcpy.ll | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/llvm/test/Transforms/MemCpyOpt/memcpy.ll b/llvm/test/Transforms/MemCpyOpt/memcpy.ll index e4cd0ef388d..7d69287280b 100644 --- a/llvm/test/Transforms/MemCpyOpt/memcpy.ll +++ b/llvm/test/Transforms/MemCpyOpt/memcpy.ll @@ -3,7 +3,7 @@ target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128" target triple = "i686-apple-darwin9" -define void @ccosl({ x86_fp80, x86_fp80 }* sret %agg.result, x86_fp80 %z.0, x86_fp80 %z.1) nounwind { +define void @test1({ x86_fp80, x86_fp80 }* sret %agg.result, x86_fp80 %z.0, x86_fp80 %z.1) nounwind { entry: %tmp2 = alloca { x86_fp80, x86_fp80 } ; <{ x86_fp80, x86_fp80 }*> [#uses=1] %memtmp = alloca { x86_fp80, x86_fp80 }, align 16 ; <{ x86_fp80, x86_fp80 }*> [#uses=2] @@ -14,6 +14,15 @@ entry: call void @llvm.memcpy.i32( i8* %tmp219, i8* %memtmp20, i32 32, i32 16 ) %agg.result21 = bitcast { x86_fp80, x86_fp80 }* %agg.result to i8* ; <i8*> [#uses=1] call void @llvm.memcpy.i32( i8* %agg.result21, i8* %tmp219, i32 32, i32 16 ) + +; Check that one of the memcpy's are removed. +;; FIXME: PR 8643 We should be able to eliminate the last memcpy here. + +; CHECK: @test1 +; CHECK: call void @ccoshl +; CHECK: call @llvm.memcpy +; CHECK-NOT: llvm.memcpy +; CHECK: ret void ret void } |

