summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/FunctionAttrs
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2019-08-03 14:28:34 +0000
committerTim Northover <tnorthover@apple.com>2019-08-03 14:28:34 +0000
commita009a60a917bc30940422bcef73f8270566d78db (patch)
tree585c11f151ecd35dd07677ae76c12aee922c9a7f /llvm/test/Transforms/FunctionAttrs
parent6bf861298a117f82f453021bc355a1fe38ca818b (diff)
downloadbcm5719-llvm-a009a60a917bc30940422bcef73f8270566d78db.tar.gz
bcm5719-llvm-a009a60a917bc30940422bcef73f8270566d78db.zip
IR: print value numbers for unnamed function arguments
For consistency with normal instructions and clarity when reading IR, it's best to print the %0, %1, ... names of function arguments in definitions. Also modifies the parser to accept IR in that form for obvious reasons. llvm-svn: 367755
Diffstat (limited to 'llvm/test/Transforms/FunctionAttrs')
-rw-r--r--llvm/test/Transforms/FunctionAttrs/align.ll28
-rw-r--r--llvm/test/Transforms/FunctionAttrs/comdat-ipo.ll4
-rw-r--r--llvm/test/Transforms/FunctionAttrs/dereferenceable.ll24
-rw-r--r--llvm/test/Transforms/FunctionAttrs/liveness.ll2
-rw-r--r--llvm/test/Transforms/FunctionAttrs/naked_functions.ll2
-rw-r--r--llvm/test/Transforms/FunctionAttrs/noalias_returned.ll8
-rw-r--r--llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll32
-rw-r--r--llvm/test/Transforms/FunctionAttrs/nosync.ll78
-rw-r--r--llvm/test/Transforms/FunctionAttrs/nounwind.ll6
-rw-r--r--llvm/test/Transforms/FunctionAttrs/readnone.ll8
-rw-r--r--llvm/test/Transforms/FunctionAttrs/willreturn.ll56
11 files changed, 124 insertions, 124 deletions
diff --git a/llvm/test/Transforms/FunctionAttrs/align.ll b/llvm/test/Transforms/FunctionAttrs/align.ll
index f40e6f254dc..d762d516d9a 100644
--- a/llvm/test/Transforms/FunctionAttrs/align.ll
+++ b/llvm/test/Transforms/FunctionAttrs/align.ll
@@ -7,27 +7,27 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
; TEST 1
-; ATTRIBUTOR: define align 8 i32* @test1(i32* returned align 8)
-define i32* @test1(i32* align 8) #0 {
+; ATTRIBUTOR: define align 8 i32* @test1(i32* returned align 8 %0)
+define i32* @test1(i32* align 8 %0) #0 {
ret i32* %0
}
; TEST 2
-; ATTRIBUTOR: define i32* @test2(i32* returned)
-define i32* @test2(i32*) #0 {
+; ATTRIBUTOR: define i32* @test2(i32* returned %0)
+define i32* @test2(i32* %0) #0 {
ret i32* %0
}
; TEST 3
-; ATTRIBUTOR: define align 4 i32* @test3(i32* align 8, i32* align 4, i1)
-define i32* @test3(i32* align 8, i32* align 4, i1) #0 {
+; ATTRIBUTOR: define align 4 i32* @test3(i32* align 8 %0, i32* align 4 %1, i1 %2)
+define i32* @test3(i32* align 8 %0, i32* align 4 %1, i1 %2) #0 {
%ret = select i1 %2, i32* %0, i32* %1
ret i32* %ret
}
; TEST 4
-; ATTRIBUTOR: define align 32 i32* @test4(i32* align 32, i32* align 32, i1)
-define i32* @test4(i32* align 32, i32* align 32, i1) #0 {
+; ATTRIBUTOR: define align 32 i32* @test4(i32* align 32 %0, i32* align 32 %1, i1 %2)
+define i32* @test4(i32* align 32 %0, i32* align 32 %1, i1 %2) #0 {
%ret = select i1 %2, i32* %0, i32* %1
ret i32* %ret
}
@@ -82,8 +82,8 @@ define i32* @test6_2() #0 {
@a2 = common global i8 0, align 16
; Function Attrs: nounwind readnone ssp uwtable
-define internal i8* @f1(i8* readnone) local_unnamed_addr #0 {
-; ATTRIBUTOR: define internal nonnull align 8 i8* @f1(i8* nonnull readnone align 8)
+define internal i8* @f1(i8* readnone %0) local_unnamed_addr #0 {
+; ATTRIBUTOR: define internal nonnull align 8 i8* @f1(i8* nonnull readnone align 8 %0)
%2 = icmp eq i8* %0, null
br i1 %2, label %3, label %5
@@ -98,8 +98,8 @@ define internal i8* @f1(i8* readnone) local_unnamed_addr #0 {
}
; Function Attrs: nounwind readnone ssp uwtable
-define internal i8* @f2(i8* readnone) local_unnamed_addr #0 {
-; ATTRIBUTOR: define internal nonnull align 8 i8* @f2(i8* nonnull readnone align 8)
+define internal i8* @f2(i8* readnone %0) local_unnamed_addr #0 {
+; ATTRIBUTOR: define internal nonnull align 8 i8* @f2(i8* nonnull readnone align 8 %0)
%2 = icmp eq i8* %0, null
br i1 %2, label %5, label %3
@@ -120,8 +120,8 @@ define internal i8* @f2(i8* readnone) local_unnamed_addr #0 {
}
; Function Attrs: nounwind readnone ssp uwtable
-define internal i8* @f3(i8* readnone) local_unnamed_addr #0 {
-; ATTRIBUTOR: define internal nonnull align 8 i8* @f3(i8* nonnull readnone align 16)
+define internal i8* @f3(i8* readnone %0) local_unnamed_addr #0 {
+; ATTRIBUTOR: define internal nonnull align 8 i8* @f3(i8* nonnull readnone align 16 %0)
%2 = icmp eq i8* %0, null
br i1 %2, label %3, label %5
diff --git a/llvm/test/Transforms/FunctionAttrs/comdat-ipo.ll b/llvm/test/Transforms/FunctionAttrs/comdat-ipo.ll
index 2a149e436b6..d2f194facba 100644
--- a/llvm/test/Transforms/FunctionAttrs/comdat-ipo.ll
+++ b/llvm/test/Transforms/FunctionAttrs/comdat-ipo.ll
@@ -3,14 +3,14 @@
; See PR26774
-; CHECK-LABEL: define void @bar(i8* readonly) {
+; CHECK-LABEL: define void @bar(i8* readonly %0) {
define void @bar(i8* readonly) {
call void @foo(i8* %0)
ret void
}
-; CHECK-LABEL: define linkonce_odr void @foo(i8* readonly) {
+; CHECK-LABEL: define linkonce_odr void @foo(i8* readonly %0) {
define linkonce_odr void @foo(i8* readonly) {
call void @bar(i8* %0)
ret void
diff --git a/llvm/test/Transforms/FunctionAttrs/dereferenceable.ll b/llvm/test/Transforms/FunctionAttrs/dereferenceable.ll
index 16459fc4c42..a9a2c26498a 100644
--- a/llvm/test/Transforms/FunctionAttrs/dereferenceable.ll
+++ b/llvm/test/Transforms/FunctionAttrs/dereferenceable.ll
@@ -4,16 +4,16 @@
; TEST 1
; take mininimum of return values
;
-define i32* @test1(i32* dereferenceable(4), double* dereferenceable(8), i1 zeroext) local_unnamed_addr {
-; ATTRIBUTOR: define nonnull dereferenceable(4) i32* @test1(i32* nonnull dereferenceable(4), double* nonnull dereferenceable(8), i1 zeroext)
+define i32* @test1(i32* dereferenceable(4) %0, double* dereferenceable(8) %1, i1 zeroext %2) local_unnamed_addr {
+; ATTRIBUTOR: define nonnull dereferenceable(4) i32* @test1(i32* nonnull dereferenceable(4) %0, double* nonnull dereferenceable(8) %1, i1 zeroext %2)
%4 = bitcast double* %1 to i32*
%5 = select i1 %2, i32* %0, i32* %4
ret i32* %5
}
; TEST 2
-define i32* @test2(i32* dereferenceable_or_null(4), double* dereferenceable(8), i1 zeroext) local_unnamed_addr {
-; ATTRIBUTOR: define dereferenceable_or_null(4) i32* @test2(i32* dereferenceable_or_null(4), double* nonnull dereferenceable(8), i1 zeroext)
+define i32* @test2(i32* dereferenceable_or_null(4) %0, double* dereferenceable(8) %1, i1 zeroext %2) local_unnamed_addr {
+; ATTRIBUTOR: define dereferenceable_or_null(4) i32* @test2(i32* dereferenceable_or_null(4) %0, double* nonnull dereferenceable(8) %1, i1 zeroext %2)
%4 = bitcast double* %1 to i32*
%5 = select i1 %2, i32* %0, i32* %4
ret i32* %5
@@ -21,21 +21,21 @@ define i32* @test2(i32* dereferenceable_or_null(4), double* dereferenceable(8),
; TEST 3
; GEP inbounds
-define i32* @test3_1(i32* dereferenceable(8)) local_unnamed_addr {
-; ATTRIBUTOR: define nonnull dereferenceable(4) i32* @test3_1(i32* nonnull dereferenceable(8))
+define i32* @test3_1(i32* dereferenceable(8) %0) local_unnamed_addr {
+; ATTRIBUTOR: define nonnull dereferenceable(4) i32* @test3_1(i32* nonnull dereferenceable(8) %0)
%ret = getelementptr inbounds i32, i32* %0, i64 1
ret i32* %ret
}
-define i32* @test3_2(i32* dereferenceable_or_null(32)) local_unnamed_addr {
+define i32* @test3_2(i32* dereferenceable_or_null(32) %0) local_unnamed_addr {
; FIXME: Argument should be mark dereferenceable because of GEP `inbounds`.
-; ATTRIBUTOR: define nonnull dereferenceable(16) i32* @test3_2(i32* dereferenceable_or_null(32))
+; ATTRIBUTOR: define nonnull dereferenceable(16) i32* @test3_2(i32* dereferenceable_or_null(32) %0)
%ret = getelementptr inbounds i32, i32* %0, i64 4
ret i32* %ret
}
-define i32* @test3_3(i32* dereferenceable(8), i32* dereferenceable(16), i1) local_unnamed_addr {
-; ATTRIBUTOR: define nonnull dereferenceable(4) i32* @test3_3(i32* nonnull dereferenceable(8), i32* nonnull dereferenceable(16), i1) local_unnamed_addr
+define i32* @test3_3(i32* dereferenceable(8) %0, i32* dereferenceable(16) %1, i1 %2) local_unnamed_addr {
+; ATTRIBUTOR: define nonnull dereferenceable(4) i32* @test3_3(i32* nonnull dereferenceable(8) %0, i32* nonnull dereferenceable(16) %1, i1 %2) local_unnamed_addr
%ret1 = getelementptr inbounds i32, i32* %0, i64 1
%ret2 = getelementptr inbounds i32, i32* %1, i64 2
%ret = select i1 %2, i32* %ret1, i32* %ret2
@@ -45,8 +45,8 @@ define i32* @test3_3(i32* dereferenceable(8), i32* dereferenceable(16), i1) loca
; TEST 4
; Better than known in IR.
-define dereferenceable(4) i32* @test4(i32* dereferenceable(8)) local_unnamed_addr {
-; ATTRIBUTOR: define nonnull dereferenceable(8) i32* @test4(i32* nonnull returned dereferenceable(8))
+define dereferenceable(4) i32* @test4(i32* dereferenceable(8) %0) local_unnamed_addr {
+; ATTRIBUTOR: define nonnull dereferenceable(8) i32* @test4(i32* nonnull returned dereferenceable(8) %0)
ret i32* %0
}
diff --git a/llvm/test/Transforms/FunctionAttrs/liveness.ll b/llvm/test/Transforms/FunctionAttrs/liveness.ll
index 42ef89cfe8a..ce42506ae48 100644
--- a/llvm/test/Transforms/FunctionAttrs/liveness.ll
+++ b/llvm/test/Transforms/FunctionAttrs/liveness.ll
@@ -17,7 +17,7 @@ define i32 @volatile_load(i32*) norecurse nounwind uwtable {
}
; CHECK: Function Attrs: nofree norecurse nosync nounwind uwtable willreturn
-; CHECK-NEXT: define internal i32 @internal_load(i32* nonnull)
+; CHECK-NEXT: define internal i32 @internal_load(i32* nonnull %0)
define internal i32 @internal_load(i32*) norecurse nounwind uwtable {
%2 = load i32, i32* %0, align 4
ret i32 %2
diff --git a/llvm/test/Transforms/FunctionAttrs/naked_functions.ll b/llvm/test/Transforms/FunctionAttrs/naked_functions.ll
index d34dc0c20d9..c4996d4e7e9 100644
--- a/llvm/test/Transforms/FunctionAttrs/naked_functions.ll
+++ b/llvm/test/Transforms/FunctionAttrs/naked_functions.ll
@@ -20,6 +20,6 @@ entry:
unreachable
}
-; CHECK: define internal i32 @foo(i32*)
+; CHECK: define internal i32 @foo(i32* %0)
attributes #0 = { naked }
diff --git a/llvm/test/Transforms/FunctionAttrs/noalias_returned.ll b/llvm/test/Transforms/FunctionAttrs/noalias_returned.ll
index 1b20946ebfe..2cffec7f2e7 100644
--- a/llvm/test/Transforms/FunctionAttrs/noalias_returned.ll
+++ b/llvm/test/Transforms/FunctionAttrs/noalias_returned.ll
@@ -60,8 +60,8 @@ define i8* @bar() nounwind uwtable {
ret i8* %1
}
-; CHECK: define noalias i8* @foo1(i32)
-define i8* @foo1(i32) nounwind uwtable {
+; CHECK: define noalias i8* @foo1(i32 %0)
+define i8* @foo1(i32 %0) nounwind uwtable {
%2 = icmp eq i32 %0, 0
br i1 %2, label %5, label %3
@@ -125,8 +125,8 @@ return:
; TEST 8
-; CHECK: define noalias i8* @test8(i32*)
-define i8* @test8(i32*) nounwind uwtable {
+; CHECK: define noalias i8* @test8(i32* %0)
+define i8* @test8(i32* %0) nounwind uwtable {
%2 = tail call noalias i8* @malloc(i64 4)
%3 = icmp ne i32* %0, null
br i1 %3, label %4, label %5
diff --git a/llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll b/llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll
index 16364b5a51f..ceb49d4a347 100644
--- a/llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll
+++ b/llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll
@@ -29,11 +29,11 @@ define void @only_return() #0 {
; }
; FNATTR: Function Attrs: noinline nounwind uwtable
-; FNATTR-NEXT: define void @only_free(i8* nocapture) local_unnamed_addr
+; FNATTR-NEXT: define void @only_free(i8* nocapture %0) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: nofree
-; ATTRIBUTOR-NEXT: define void @only_free(i8* nocapture) local_unnamed_addr #1
-define void @only_free(i8* nocapture) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define void @only_free(i8* nocapture %0) local_unnamed_addr #1
+define void @only_free(i8* nocapture %0) local_unnamed_addr #0 {
tail call void @free(i8* %0) #1
ret void
}
@@ -51,22 +51,22 @@ define void @only_free(i8* nocapture) local_unnamed_addr #0 {
; FNATTR: Function Attrs: noinline nounwind uwtable
-; FNATTR-NEXT: define void @free_in_scc1(i8* nocapture) local_unnamed_addr
+; FNATTR-NEXT: define void @free_in_scc1(i8* nocapture %0) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: nofree
-; ATTRIBUTOR-NEXT :define void @free_in_scc1(i8* nocapture) local_unnamed_addr
-define void @free_in_scc1(i8* nocapture) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT :define void @free_in_scc1(i8* nocapture %0) local_unnamed_addr
+define void @free_in_scc1(i8* nocapture %0) local_unnamed_addr #0 {
tail call void @free_in_scc2(i8* %0) #1
ret void
}
; FNATTR: Function Attrs: noinline nounwind uwtable
-; FNATTR-NEXT: define void @free_in_scc2(i8* nocapture) local_unnamed_addr
+; FNATTR-NEXT: define void @free_in_scc2(i8* nocapture %0) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: nofree
-; ATTRIBUTOR: define void @free_in_scc2(i8* nocapture) local_unnamed_addr
-define void @free_in_scc2(i8* nocapture) local_unnamed_addr #0 {
+; ATTRIBUTOR: define void @free_in_scc2(i8* nocapture %0) local_unnamed_addr
+define void @free_in_scc2(i8* nocapture %0) local_unnamed_addr #0 {
tail call void @free_in_scc1(i8* %0)
tail call void @free(i8* %0) #1
ret void
@@ -109,11 +109,11 @@ define void @mutual_recursion2() #0 {
; }
; FNATTR: Function Attrs: noinline nounwind uwtable
-; FNATTR-NEXT: define void @_Z9delete_opPc(i8*) local_unnamed_addr
+; FNATTR-NEXT: define void @_Z9delete_opPc(i8* %0) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: nofree
-; ATTRIBUTOR-NEXT: define void @_Z9delete_opPc(i8*) local_unnamed_addr #1
-define void @_Z9delete_opPc(i8*) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define void @_Z9delete_opPc(i8* %0) local_unnamed_addr #1
+define void @_Z9delete_opPc(i8* %0) local_unnamed_addr #0 {
%2 = icmp eq i8* %0, null
br i1 %2, label %4, label %3
@@ -129,11 +129,11 @@ define void @_Z9delete_opPc(i8*) local_unnamed_addr #0 {
; TEST 6 (negative case)
; Call realloc
; FNATTR: Function Attrs: noinline nounwind uwtable
-; FNATTR-NEXT: define noalias i8* @call_realloc(i8* nocapture, i64) local_unnamed_addr
+; FNATTR-NEXT: define noalias i8* @call_realloc(i8* nocapture %0, i64 %1) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: nofree
-; ATTRIBUTOR-NEXT: define noalias i8* @call_realloc(i8* nocapture, i64) local_unnamed_addr
-define noalias i8* @call_realloc(i8* nocapture, i64) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define noalias i8* @call_realloc(i8* nocapture %0, i64 %1) local_unnamed_addr
+define noalias i8* @call_realloc(i8* nocapture %0, i64 %1) local_unnamed_addr #0 {
%ret = tail call i8* @realloc(i8* %0, i64 %1) #2
ret i8* %ret
}
@@ -196,7 +196,7 @@ define void @call_both() #0 {
; TEST 10 (positive case)
; Call intrinsic function
; FNATTRS: Function Attrs: noinline readnone speculatable
-; FNATTRS-NEXT: declare float @llvm.floor.f32(float)
+; FNATTRS-NEXT: declare float @llvm.floor.f32(float %0)
; ATTRIBUTOR: Function Attrs: nounwind readnone speculatable
; ATTRIBUTOR-NEXT: declare float @llvm.floor.f32(float)
declare float @llvm.floor.f32(float)
diff --git a/llvm/test/Transforms/FunctionAttrs/nosync.ll b/llvm/test/Transforms/FunctionAttrs/nosync.ll
index 0769a1744ab..1d7f46af203 100644
--- a/llvm/test/Transforms/FunctionAttrs/nosync.ll
+++ b/llvm/test/Transforms/FunctionAttrs/nosync.ll
@@ -43,10 +43,10 @@ entry:
; }
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define i32 @load_monotonic(i32* nocapture readonly)
+; FNATTR-NEXT: define i32 @load_monotonic(i32* nocapture readonly %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define i32 @load_monotonic(i32* nocapture readonly)
-define i32 @load_monotonic(i32* nocapture readonly) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define i32 @load_monotonic(i32* nocapture readonly %0)
+define i32 @load_monotonic(i32* nocapture readonly %0) norecurse nounwind uwtable {
%2 = load atomic i32, i32* %0 monotonic, align 4
ret i32 %2
}
@@ -59,10 +59,10 @@ define i32 @load_monotonic(i32* nocapture readonly) norecurse nounwind uwtable {
; }
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define void @store_monotonic(i32* nocapture)
+; FNATTR-NEXT: define void @store_monotonic(i32* nocapture %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define void @store_monotonic(i32* nocapture)
-define void @store_monotonic(i32* nocapture) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define void @store_monotonic(i32* nocapture %0)
+define void @store_monotonic(i32* nocapture %0) norecurse nounwind uwtable {
store atomic i32 10, i32* %0 monotonic, align 4
ret void
}
@@ -75,11 +75,11 @@ define void @store_monotonic(i32* nocapture) norecurse nounwind uwtable {
; }
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define i32 @load_acquire(i32* nocapture readonly)
+; FNATTR-NEXT: define i32 @load_acquire(i32* nocapture readonly %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define i32 @load_acquire(i32* nocapture readonly)
-define i32 @load_acquire(i32* nocapture readonly) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define i32 @load_acquire(i32* nocapture readonly %0)
+define i32 @load_acquire(i32* nocapture readonly %0) norecurse nounwind uwtable {
%2 = load atomic i32, i32* %0 acquire, align 4
ret i32 %2
}
@@ -91,11 +91,11 @@ define i32 @load_acquire(i32* nocapture readonly) norecurse nounwind uwtable {
; }
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define void @load_release(i32* nocapture)
+; FNATTR-NEXT: define void @load_release(i32* nocapture %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define void @load_release(i32* nocapture)
-define void @load_release(i32* nocapture) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define void @load_release(i32* nocapture %0)
+define void @load_release(i32* nocapture %0) norecurse nounwind uwtable {
store atomic volatile i32 10, i32* %0 release, align 4
ret void
}
@@ -103,11 +103,11 @@ define void @load_release(i32* nocapture) norecurse nounwind uwtable {
; TEST 6 - negative volatile, relaxed atomic
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define void @load_volatile_release(i32* nocapture)
+; FNATTR-NEXT: define void @load_volatile_release(i32* nocapture %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define void @load_volatile_release(i32* nocapture)
-define void @load_volatile_release(i32* nocapture) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define void @load_volatile_release(i32* nocapture %0)
+define void @load_volatile_release(i32* nocapture %0) norecurse nounwind uwtable {
store atomic volatile i32 10, i32* %0 release, align 4
ret void
}
@@ -119,11 +119,11 @@ define void @load_volatile_release(i32* nocapture) norecurse nounwind uwtable {
; }
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define void @volatile_store(i32*)
+; FNATTR-NEXT: define void @volatile_store(i32* %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define void @volatile_store(i32*)
-define void @volatile_store(i32*) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define void @volatile_store(i32* %0)
+define void @volatile_store(i32* %0) norecurse nounwind uwtable {
store volatile i32 14, i32* %0, align 4
ret void
}
@@ -136,11 +136,11 @@ define void @volatile_store(i32*) norecurse nounwind uwtable {
; }
; FNATTR: Function Attrs: nofree norecurse nounwind uwtable
-; FNATTR-NEXT: define i32 @volatile_load(i32*)
+; FNATTR-NEXT: define i32 @volatile_load(i32* %0)
; ATTRIBUTOR: Function Attrs: nofree norecurse nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define i32 @volatile_load(i32*)
-define i32 @volatile_load(i32*) norecurse nounwind uwtable {
+; ATTRIBUTOR-NEXT: define i32 @volatile_load(i32* %0)
+define i32 @volatile_load(i32* %0) norecurse nounwind uwtable {
%2 = load volatile i32, i32* %0, align 4
ret i32 %2
}
@@ -184,22 +184,22 @@ define void @call_might_sync() nounwind uwtable noinline {
; volatile operation in same scc. Call volatile_load defined in TEST 8.
; FNATTR: Function Attrs: nofree noinline nounwind uwtable
-; FNATTR-NEXT: define i32 @scc1(i32*)
+; FNATTR-NEXT: define i32 @scc1(i32* %0)
; ATTRIBUTOR: Function Attrs: nofree noinline nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define i32 @scc1(i32*)
-define i32 @scc1(i32*) noinline nounwind uwtable {
+; ATTRIBUTOR-NEXT: define i32 @scc1(i32* %0)
+define i32 @scc1(i32* %0) noinline nounwind uwtable {
tail call void @scc2(i32* %0);
%val = tail call i32 @volatile_load(i32* %0);
ret i32 %val;
}
; FNATTR: Function Attrs: nofree noinline nounwind uwtable
-; FNATTR-NEXT: define void @scc2(i32*)
+; FNATTR-NEXT: define void @scc2(i32* %0)
; ATTRIBUTOR: Function Attrs: nofree noinline nounwind uwtable
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR-NEXT: define void @scc2(i32*)
-define void @scc2(i32*) noinline nounwind uwtable {
+; ATTRIBUTOR-NEXT: define void @scc2(i32* %0)
+define void @scc2(i32* %0) noinline nounwind uwtable {
tail call i32 @scc1(i32* %0);
ret void;
}
@@ -224,10 +224,10 @@ define void @scc2(i32*) noinline nounwind uwtable {
%"struct.std::__atomic_base" = type { i8 }
; FNATTR: Function Attrs: nofree norecurse nounwind
-; FNATTR-NEXT: define void @foo1(i32* nocapture, %"struct.std::atomic"* nocapture)
+; FNATTR-NEXT: define void @foo1(i32* nocapture %0, %"struct.std::atomic"* nocapture %1)
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR: define void @foo1(i32*, %"struct.std::atomic"*)
-define void @foo1(i32*, %"struct.std::atomic"*) {
+; ATTRIBUTOR: define void @foo1(i32* %0, %"struct.std::atomic"* %1)
+define void @foo1(i32* %0, %"struct.std::atomic"* %1) {
store i32 100, i32* %0, align 4
fence release
%3 = getelementptr inbounds %"struct.std::atomic", %"struct.std::atomic"* %1, i64 0, i32 0, i32 0
@@ -236,10 +236,10 @@ define void @foo1(i32*, %"struct.std::atomic"*) {
}
; FNATTR: Function Attrs: nofree norecurse nounwind
-; FNATTR-NEXT: define void @bar(i32* nocapture readnone, %"struct.std::atomic"* nocapture readonly)
+; FNATTR-NEXT: define void @bar(i32* nocapture readnone %0, %"struct.std::atomic"* nocapture readonly %1)
; ATTRIBUTOR-NOT: nosync
-; ATTRIBUTOR: define void @bar(i32*, %"struct.std::atomic"*)
-define void @bar(i32 *, %"struct.std::atomic"*) {
+; ATTRIBUTOR: define void @bar(i32* %0, %"struct.std::atomic"* %1)
+define void @bar(i32* %0, %"struct.std::atomic"* %1) {
%3 = getelementptr inbounds %"struct.std::atomic", %"struct.std::atomic"* %1, i64 0, i32 0, i32 0
br label %4
@@ -256,10 +256,10 @@ define void @bar(i32 *, %"struct.std::atomic"*) {
; TEST 13 - Fence syncscope("singlethread") seq_cst
; FNATTR: Function Attrs: nofree norecurse nounwind
-; FNATTR-NEXT: define void @foo1_singlethread(i32* nocapture, %"struct.std::atomic"* nocapture)
+; FNATTR-NEXT: define void @foo1_singlethread(i32* nocapture %0, %"struct.std::atomic"* nocapture %1)
; ATTRIBUTOR: Function Attrs: nofree nosync
-; ATTRIBUTOR: define void @foo1_singlethread(i32*, %"struct.std::atomic"*)
-define void @foo1_singlethread(i32*, %"struct.std::atomic"*) {
+; ATTRIBUTOR: define void @foo1_singlethread(i32* %0, %"struct.std::atomic"* %1)
+define void @foo1_singlethread(i32* %0, %"struct.std::atomic"* %1) {
store i32 100, i32* %0, align 4
fence syncscope("singlethread") release
%3 = getelementptr inbounds %"struct.std::atomic", %"struct.std::atomic"* %1, i64 0, i32 0, i32 0
@@ -268,10 +268,10 @@ define void @foo1_singlethread(i32*, %"struct.std::atomic"*) {
}
; FNATTR: Function Attrs: nofree norecurse nounwind
-; FNATTR-NEXT: define void @bar_singlethread(i32* nocapture readnone, %"struct.std::atomic"* nocapture readonly)
+; FNATTR-NEXT: define void @bar_singlethread(i32* nocapture readnone %0, %"struct.std::atomic"* nocapture readonly %1)
; ATTRIBUTOR: Function Attrs: nofree nosync
-; ATTRIBUTOR: define void @bar_singlethread(i32*, %"struct.std::atomic"*)
-define void @bar_singlethread(i32 *, %"struct.std::atomic"*) {
+; ATTRIBUTOR: define void @bar_singlethread(i32* %0, %"struct.std::atomic"* %1)
+define void @bar_singlethread(i32* %0, %"struct.std::atomic"* %1) {
%3 = getelementptr inbounds %"struct.std::atomic", %"struct.std::atomic"* %1, i64 0, i32 0, i32 0
br label %4
diff --git a/llvm/test/Transforms/FunctionAttrs/nounwind.ll b/llvm/test/Transforms/FunctionAttrs/nounwind.ll
index 1625d12e91e..fa2dddd31ae 100644
--- a/llvm/test/Transforms/FunctionAttrs/nounwind.ll
+++ b/llvm/test/Transforms/FunctionAttrs/nounwind.ll
@@ -50,9 +50,9 @@ define void @call_non_nounwind(){
; return -1;
; }
-; CHECK: define i32 @maybe_throw(i1 zeroext)
-; ATTRIBUTOR: define i32 @maybe_throw(i1 zeroext)
-define i32 @maybe_throw(i1 zeroext) {
+; CHECK: define i32 @maybe_throw(i1 zeroext %0)
+; ATTRIBUTOR: define i32 @maybe_throw(i1 zeroext %0)
+define i32 @maybe_throw(i1 zeroext %0) {
br i1 %0, label %2, label %3
2: ; preds = %1
diff --git a/llvm/test/Transforms/FunctionAttrs/readnone.ll b/llvm/test/Transforms/FunctionAttrs/readnone.ll
index b5a5b30ae21..b18aab539b6 100644
--- a/llvm/test/Transforms/FunctionAttrs/readnone.ll
+++ b/llvm/test/Transforms/FunctionAttrs/readnone.ll
@@ -1,14 +1,14 @@
; RUN: opt < %s -functionattrs -S | FileCheck %s
; RUN: opt < %s -passes=function-attrs -S | FileCheck %s
-; CHECK: define void @bar(i8* nocapture readnone)
-define void @bar(i8* readonly) {
+; CHECK: define void @bar(i8* nocapture readnone %0)
+define void @bar(i8* readonly %0) {
call void @foo(i8* %0)
ret void
}
-; CHECK: define void @foo(i8* nocapture readnone)
-define void @foo(i8* readonly) {
+; CHECK: define void @foo(i8* nocapture readnone %0)
+define void @foo(i8* readonly %0) {
call void @bar(i8* %0)
ret void
}
diff --git a/llvm/test/Transforms/FunctionAttrs/willreturn.ll b/llvm/test/Transforms/FunctionAttrs/willreturn.ll
index eb1dbb1342c..6d7d35a5108 100644
--- a/llvm/test/Transforms/FunctionAttrs/willreturn.ll
+++ b/llvm/test/Transforms/FunctionAttrs/willreturn.ll
@@ -26,11 +26,11 @@ define void @only_return() #0 {
; }
; FNATTR: Function Attrs: noinline nounwind readnone uwtable
-; FNATTR-NEXT: define i32 @fib(i32)
+; FNATTR-NEXT: define i32 @fib(i32 %0)
; FIXME: missing willreturn
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define i32 @fib(i32) local_unnamed_addr
-define i32 @fib(i32) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define i32 @fib(i32 %0) local_unnamed_addr
+define i32 @fib(i32 %0) local_unnamed_addr #0 {
%2 = icmp slt i32 %0, 2
br i1 %2, label %9, label %3
@@ -58,11 +58,11 @@ define i32 @fib(i32) local_unnamed_addr #0 {
; FNATTR: Function Attrs: noinline norecurse nounwind readnone uwtable
; FNATTR-NOT: willreturn
-; FNATTR-NEXT: define i32 @fact_maybe_not_halt(i32) local_unnamed_addr
+; FNATTR-NEXT: define i32 @fact_maybe_not_halt(i32 %0) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
; ATTRIBUTOR-NOT: willreturn
-; ATTRIBUTOR-NEXT: define i32 @fact_maybe_not_halt(i32) local_unnamed_addr
-define i32 @fact_maybe_not_halt(i32) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define i32 @fact_maybe_not_halt(i32 %0) local_unnamed_addr
+define i32 @fact_maybe_not_halt(i32 %0) local_unnamed_addr #0 {
%2 = icmp eq i32 %0, 0
br i1 %2, label %11, label %3
@@ -94,10 +94,10 @@ define i32 @fact_maybe_not_halt(i32) local_unnamed_addr #0 {
; FIXME: missing willreturn
; FNATTR: Function Attrs: noinline norecurse nounwind readnone uwtable
-; FNATTR-NEXT: define i32 @fact_loop(i32)
+; FNATTR-NEXT: define i32 @fact_loop(i32 %0)
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define i32 @fact_loop(i32) local_unnamed_addr
-define i32 @fact_loop(i32) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define i32 @fact_loop(i32 %0) local_unnamed_addr
+define i32 @fact_loop(i32 %0) local_unnamed_addr #0 {
%2 = icmp slt i32 %0, 1
br i1 %2, label %3, label %5
@@ -153,7 +153,7 @@ define void @mutual_recursion2() #0 {
; FNATTR-NEXT: declare void @exit(i32) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noreturn
; ATTRIBUTOR-NEXT: declare void @exit(i32) local_unnamed_add
-declare void @exit(i32) local_unnamed_addr noreturn
+declare void @exit(i32 %0) local_unnamed_addr noreturn
; FNATTR: Function Attrs: noinline nounwind uwtable
; FNATTR-NOT: willreturn
@@ -178,11 +178,11 @@ define void @only_exit() local_unnamed_addr #0 {
; }
; FNATTR: Function Attrs: noinline nounwind uwtable
; FNATTR-NOT: willreturn
-; FNATTR-NEXT: define void @conditional_exit(i32, i32* nocapture readonly) local_unnamed_addr
+; FNATTR-NEXT: define void @conditional_exit(i32 %0, i32* nocapture readonly %1) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: willreturn
-; ATTRIBUTOR-NEXT: define void @conditional_exit(i32, i32* nocapture readonly) local_unnamed_addr
-define void @conditional_exit(i32, i32* nocapture readonly) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define void @conditional_exit(i32 %0, i32* nocapture readonly %1) local_unnamed_addr
+define void @conditional_exit(i32 %0, i32* nocapture readonly %1) local_unnamed_addr #0 {
%3 = icmp eq i32 %0, 0
br i1 %3, label %5, label %4
@@ -207,7 +207,7 @@ define void @conditional_exit(i32, i32* nocapture readonly) local_unnamed_addr #
; Call intrinsic function
; FIXME: missing willreturn
; FNATTRS: Function Attrs: noinline readnone speculatable
-; FNATTRS-NEXT: declare float @llvm.floor.f32(float)
+; FNATTRS-NEXT: declare float @llvm.floor.f32(float %0)
; ATTRIBUTOR: Function Attrs: nounwind readnone speculatable
; ATTRIBUTOR-NEXT: declare float @llvm.floor.f32(float)
declare float @llvm.floor.f32(float)
@@ -335,10 +335,10 @@ declare i32 @__gxx_personality_v0(...)
; FIXME: missing willreturn
; FNATTR: Function Attrs: noinline norecurse nounwind readonly uwtable
-; FNATTR-NEXT: define i32 @loop_constant_trip_count(i32* nocapture readonly)
+; FNATTR-NEXT: define i32 @loop_constant_trip_count(i32* nocapture readonly %0)
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define i32 @loop_constant_trip_count(i32* nocapture readonly)
-define i32 @loop_constant_trip_count(i32* nocapture readonly) #0 {
+; ATTRIBUTOR-NEXT: define i32 @loop_constant_trip_count(i32* nocapture readonly %0)
+define i32 @loop_constant_trip_count(i32* nocapture readonly %0) #0 {
br label %3
; <label>:2: ; preds = %3
@@ -368,11 +368,11 @@ define i32 @loop_constant_trip_count(i32* nocapture readonly) #0 {
; }
; FNATTR: Function Attrs: noinline norecurse nounwind readonly uwtable
; FNATTR-NOT: willreturn
-; FNATTR-NEXT: define i32 @loop_trip_count_unbound(i32, i32, i32* nocapture readonly, i32) local_unnamed_addr
+; FNATTR-NEXT: define i32 @loop_trip_count_unbound(i32 %0, i32 %1, i32* nocapture readonly %2, i32 %3) local_unnamed_addr
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
; ATTRIBUTOR-NOT: willreturn
-; ATTRIBUTOR-NEXT: define i32 @loop_trip_count_unbound(i32, i32, i32* nocapture readonly, i32) local_unnamed_addr
-define i32 @loop_trip_count_unbound(i32, i32, i32* nocapture readonly, i32) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define i32 @loop_trip_count_unbound(i32 %0, i32 %1, i32* nocapture readonly %2, i32 %3) local_unnamed_addr
+define i32 @loop_trip_count_unbound(i32 %0, i32 %1, i32* nocapture readonly %2, i32 %3) local_unnamed_addr #0 {
%5 = icmp eq i32 %0, %1
br i1 %5, label %6, label %8
@@ -406,11 +406,11 @@ define i32 @loop_trip_count_unbound(i32, i32, i32* nocapture readonly, i32) loca
; FIXME: missing willreturn
; FNATTR: Function Attrs: noinline norecurse nounwind readonly uwtable
-; FNATTR-NEXT: define i32 @loop_trip_dec(i32, i32* nocapture readonly)
+; FNATTR-NEXT: define i32 @loop_trip_dec(i32 %0, i32* nocapture readonly %1)
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define i32 @loop_trip_dec(i32, i32* nocapture readonly) local_unnamed_addr
+; ATTRIBUTOR-NEXT: define i32 @loop_trip_dec(i32 %0, i32* nocapture readonly %1) local_unnamed_addr
-define i32 @loop_trip_dec(i32, i32* nocapture readonly) local_unnamed_addr #0 {
+define i32 @loop_trip_dec(i32 %0, i32* nocapture readonly %1) local_unnamed_addr #0 {
%3 = icmp sgt i32 %0, -1
br i1 %3, label %4, label %14
@@ -469,9 +469,9 @@ unreachable_label:
; FIXME: missing willreturn
; FNATTR: Function Attrs: noinline nounwind uwtable
-; FNATTR-NEXT: define i32 @unreachable_exit_positive2(i32)
+; FNATTR-NEXT: define i32 @unreachable_exit_positive2(i32 %0)
; ATTRIBUTOR: Function Attrs: nofree noinline nosync nounwind uwtable
-; ATTRIBUTOR-NEXT: define i32 @unreachable_exit_positive2(i32)
+; ATTRIBUTOR-NEXT: define i32 @unreachable_exit_positive2(i32 %0)
define i32 @unreachable_exit_positive2(i32) local_unnamed_addr #0 {
%2 = icmp slt i32 %0, 1
br i1 %2, label %3, label %5
@@ -538,11 +538,11 @@ declare void @llvm.eh.sjlj.longjmp(i8*)
; FNATTR: Function Attrs: noinline nounwind uwtable
; FNATTR-NOT: willreturn
-; FNATTR-NEXT: define void @call_longjmp(i8* nocapture readnone) local_unnamed_addr #3 {
+; FNATTR-NEXT: define void @call_longjmp(i8* nocapture readnone %0) local_unnamed_addr #3 {
; ATTRIBUTOR: Function Attrs: noinline nounwind uwtable
; ATTRIBUTOR-NOT: willreturn
-; ATTRIBUTOR-NEXT: define void @call_longjmp(i8* nocapture readnone) local_unnamed_addr
-define void @call_longjmp(i8* nocapture readnone) local_unnamed_addr #0 {
+; ATTRIBUTOR-NEXT: define void @call_longjmp(i8* nocapture readnone %0) local_unnamed_addr
+define void @call_longjmp(i8* nocapture readnone %0) local_unnamed_addr #0 {
tail call void @llvm.eh.sjlj.longjmp(i8* %0)
ret void
}
OpenPOWER on IntegriCloud