[PATCH] [PR18800] Fix incorrect test case resulting in crash when running vector_memcpy.ll with -sroa

Karthik Bhat kv.bhat at samsung.com
Tue Mar 11 21:39:42 PDT 2014


  Fix another test case memset-aggregate-byte-leader.ll with similar issue.

Hi chandlerc, rafael,

http://llvm-reviews.chandlerc.com/D3050

CHANGE SINCE LAST DIFF
  http://llvm-reviews.chandlerc.com/D3050?vs=7761&id=7763#toc

Files:
  test/Transforms/ScalarRepl/vector_memcpy.ll
  test/Transforms/ScalarRepl/memset-aggregate-byte-leader.ll

Index: test/Transforms/ScalarRepl/vector_memcpy.ll
===================================================================
--- test/Transforms/ScalarRepl/vector_memcpy.ll
+++ test/Transforms/ScalarRepl/vector_memcpy.ll
@@ -9,7 +9,7 @@
 	store <16 x float> %A, <16 x float>* %tmp
 	%s = bitcast <16 x float>* %tmp to i8*
 	%s2 = bitcast <16 x float>* %tmp2 to i8*
-	call void @llvm.memcpy.i64(i8* %s2, i8* %s, i64 64, i32 16)
+	call void @llvm.memcpy.i64(i8* %s2, i8* %s, i64 64, i32 16, i1 false)
 	
 	%R = load <16 x float>* %tmp2
 	ret <16 x float> %R
@@ -19,12 +19,12 @@
 	%tmp2 = alloca <16 x float>, align 16
 
 	%s2 = bitcast <16 x float>* %tmp2 to i8*
-	call void @llvm.memset.i64(i8* %s2, i8 0, i64 64, i32 16)
+	call void @llvm.memset.i64(i8* %s2, i8 0, i64 64, i32 16, i1 false)
 	
 	%R = load <16 x float>* %tmp2
 	ret <16 x float> %R
 }
 
 
-declare void @llvm.memcpy.i64(i8* nocapture, i8* nocapture, i64, i32) nounwind
-declare void @llvm.memset.i64(i8* nocapture, i8, i64, i32) nounwind
+declare void @llvm.memcpy.i64(i8* nocapture, i8* nocapture, i64, i32, i1) nounwind
+declare void @llvm.memset.i64(i8* nocapture, i8, i64, i32, i1) nounwind
Index: test/Transforms/ScalarRepl/memset-aggregate-byte-leader.ll
===================================================================
--- test/Transforms/ScalarRepl/memset-aggregate-byte-leader.ll
+++ test/Transforms/ScalarRepl/memset-aggregate-byte-leader.ll
@@ -14,10 +14,10 @@
 	%L = alloca %struct.foo, align 2		; <%struct.foo*> [#uses=1]
 	%L2 = getelementptr %struct.foo* %L, i32 0, i32 0		; <i8*> [#uses=2]
 	%tmp13 = getelementptr %struct.foo* %P, i32 0, i32 0		; <i8*> [#uses=1]
-	call void @llvm.memcpy.i32( i8* %L2, i8* %tmp13, i32 2, i32 1 )
+	call void @llvm.memcpy.i32( i8* %L2, i8* %tmp13, i32 2, i32 1, i1 false)
 	%tmp5 = load i8* %L2		; <i8> [#uses=1]
 	%tmp56 = sext i8 %tmp5 to i32		; <i32> [#uses=1]
 	ret i32 %tmp56
 }
 
-declare void @llvm.memcpy.i32(i8*, i8*, i32, i32)
+declare void @llvm.memcpy.i32(i8*, i8*, i32, i32, i1)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3050.2.patch
Type: text/x-patch
Size: 2004 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140311/84a405ad/attachment.bin>


More information about the llvm-commits mailing list