From: Artur Pilipenko Date: Wed, 22 Jun 2016 15:16:06 +0000 (+0000) Subject: Upgrade old memset/memcpy signatures (without isVolatile argument) in tests X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b2b7d8b579038b74b4423591adf774447dca71e4;p=llvm Upgrade old memset/memcpy signatures (without isVolatile argument) in tests We no longer have corresponding code in autoupgrade and the vast majority of the tests were fixed long time ago. Fix the remaining few. One of the verifier test cases is marked as XFAIL because it was passing only because the signature was incorrect. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273428 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll b/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll index c6eb6f0f0d7..65e5ed76213 100644 --- a/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll +++ b/test/CodeGen/X86/2007-10-15-CoalescerCrash.ll @@ -224,7 +224,7 @@ declare void @fancy_abort(i8*, i32, i8*) declare i8* @pool_alloc(%struct.alloc_pool_def*) -declare void @llvm.memset.i64(i8*, i8, i64, i32) +declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) declare void @link_block(%struct.basic_block_def*, %struct.basic_block_def*) diff --git a/test/CodeGen/X86/memset-2.ll b/test/CodeGen/X86/memset-2.ll index e9253d36ed4..21c28bdd900 100644 --- a/test/CodeGen/X86/memset-2.ll +++ b/test/CodeGen/X86/memset-2.ll @@ -1,8 +1,6 @@ ; NOTE: Assertions have been autogenerated by update_test_checks.py ; RUN: llc -mtriple=i386-apple-darwin -mcpu=yonah < %s | FileCheck %s -declare void @llvm.memset.i32(i8*, i8, i32, i32) nounwind - define fastcc void @t1() nounwind { ; CHECK-LABEL: t1: ; CHECK: ## BB#0: ## %entry diff --git a/test/CodeGen/X86/negate-add-zero.ll b/test/CodeGen/X86/negate-add-zero.ll index 06341dc7ba5..5911312053d 100644 --- a/test/CodeGen/X86/negate-add-zero.ll +++ b/test/CodeGen/X86/negate-add-zero.ll @@ -1133,4 +1133,4 @@ declare %"struct.std::basic_ostream >"* @_ZlsIdLi5EL declare %"struct.std::basic_ostream >"* @_ZlsIdLi5ELi6EERSoS0_RK15FixedMatrixBaseIT_XT0_EXT1_EE(%"struct.std::basic_ostream >"*, %"struct.FixedMatrixBase"*) -declare void @llvm.memset.i64(i8* nocapture, i8, i64, i32) nounwind +declare void @llvm.memset.p0i8.i64(i8* nocapture, i8, i64, i32, i1) nounwind diff --git a/test/Transforms/Inline/inline-invoke-tail.ll b/test/Transforms/Inline/inline-invoke-tail.ll index f4b80653d01..5a9edaca600 100644 --- a/test/Transforms/Inline/inline-invoke-tail.ll +++ b/test/Transforms/Inline/inline-invoke-tail.ll @@ -1,4 +1,4 @@ -; RUN: opt < %s -inline -S | not grep "tail call void @llvm.memcpy.i32" +; RUN: opt < %s -inline -S | not grep "tail call void @llvm.memcpy.p0i8.p0i8.i32" ; PR3550 define internal void @foo(i32* %p, i32* %q) { @@ -8,8 +8,6 @@ define internal void @foo(i32* %p, i32* %q) { ret void } -declare void @llvm.memcpy.i32(i8* nocapture, i8* nocapture, i32, i32) nounwind - define i32 @main() personality i32 (...)* @__gxx_personality_v0 { %a = alloca i32 ; [#uses=3] %b = alloca i32 ; [#uses=2] diff --git a/test/Verifier/2010-08-07-PointerIntrinsic.ll b/test/Verifier/2010-08-07-PointerIntrinsic.ll index 0c0121ddbc8..a502fab1223 100644 --- a/test/Verifier/2010-08-07-PointerIntrinsic.ll +++ b/test/Verifier/2010-08-07-PointerIntrinsic.ll @@ -2,6 +2,14 @@ ; CHECK: assembly parsed, but does not verify as correct ; PR7316 +; XFAIL: * +; The test case is buggy, it supposed to check that we reject memcpy with vector +; pointer arguments. Now we don't reject such memcpy and the test case would +; fail if it was correct. Because it used the wrong signature for memcpy (the +; last isVolatile argument was missing) it was rejected by the verifier and +; didn't fail. Fix the memcpy signature and mark it as an expected failure +; for now. + target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:32" target triple = "x86-unknown-unknown" @aa = global [32 x i8] zeroinitializer, align 1 @@ -13,9 +21,9 @@ L.0: %2 = bitcast [16 x i8]* %1 to [0 x i8]* %3 = getelementptr [16 x i8], [16 x i8]* @bb %4 = bitcast [16 x i8]* %3 to [0 x i8]* - call void @llvm.memcpy.i32([0 x i8]* %2, [0 x i8]* %4, i32 16, i32 1) + call void @llvm.memcpy.p0a0i8.p0a0i8.i32([0 x i8]* %2, [0 x i8]* %4, i32 16, i32 1, i1 false) br label %return return: ret void } -declare void @llvm.memcpy.i32([0 x i8]*, [0 x i8]*, i32, i32) nounwind +declare void @llvm.memcpy.p0a0i8.p0a0i8.i32([0 x i8]* nocapture, [0 x i8]* nocapture readonly, i32, i32, i1) nounwind