From ed9def75db9dbefd6b5a1f877d74fef8cc5fc720 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 5 Mar 2014 19:01:25 -0800 Subject: Don't emit redirects for llvm.memcpy.p0i8.p0i8.i32 and friends. We never reference these intrinsics by name, so we don't need redirects for them. --- test/CodeGen/JS/mem-intrinsics.ll | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'test/CodeGen') diff --git a/test/CodeGen/JS/mem-intrinsics.ll b/test/CodeGen/JS/mem-intrinsics.ll index 52b13f3336..995d70d535 100644 --- a/test/CodeGen/JS/mem-intrinsics.ll +++ b/test/CodeGen/JS/mem-intrinsics.ll @@ -16,6 +16,13 @@ define void @test_loop_memcpy(i8* %d, i8* %s) { ret void } +; CHECK: test_call_memcpy +; CHECK: memcpy(($d|0),($s|0),65536) +define void @test_call_memcpy(i8* %d, i8* %s) { + call void @llvm.memcpy.p0i8.p0i8.i32(i8* %d, i8* %s, i32 65536, i32 4, i1 false) + ret void +} + ; CHECK: test_unrolled_memset ; CHECK: HEAP32[$d+0>>2]=0|0;HEAP32[$d+4>>2]=0|0;HEAP32[$d+8>>2]=0|0;HEAP32[$d+12>>2]=0|0;HEAP32[$d+16>>2]=0|0;HEAP32[$d+20>>2]=0|0;HEAP32[$d+24>>2]=0|0;HEAP32[$d+28>>2]=0|0; define void @test_unrolled_memset(i8* %d, i8* %s) { @@ -30,6 +37,13 @@ define void @test_loop_memset(i8* %d, i8* %s) { ret void } +; CHECK: test_call_memset +; CHECK: memset(($d|0),0,65536) +define void @test_call_memset(i8* %d, i8* %s) { + call void @llvm.memset.p0i8.i32(i8* %d, i8 0, i32 65536, i32 4, i1 false) + ret void +} + ; Also, don't emit declarations for the intrinsic functions. ; CHECK-NOT: p0i8 -- cgit v1.2.3-70-g09d2