[llvm] d350dd8 - [test] Properly match parameter/argument ABI attributes
Arthur Eubanks via llvm-commits
llvm-commits at lists.llvm.org
Mon May 31 09:12:33 PDT 2021
Author: Arthur Eubanks
Date: 2021-05-31T09:12:18-07:00
New Revision: d350dd8ba26fa6a6199f328f1026f1aca5f7f095
URL: https://github.com/llvm/llvm-project/commit/d350dd8ba26fa6a6199f328f1026f1aca5f7f095
DIFF: https://github.com/llvm/llvm-project/commit/d350dd8ba26fa6a6199f328f1026f1aca5f7f095.diff
LOG: [test] Properly match parameter/argument ABI attributes
These were found with D103412.
Added:
Modified:
llvm/test/Other/lint.ll
llvm/test/Transforms/ArgumentPromotion/fp80.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/dbg.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/fp80.ll
llvm/test/Transforms/Attributor/readattrs.ll
llvm/test/Transforms/Attributor/value-simplify.ll
llvm/test/Transforms/DeadArgElim/byref.ll
llvm/test/Transforms/LoopStrengthReduce/X86/pr46943.ll
llvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll
llvm/test/Transforms/OpenMP/icv_tracking.ll
llvm/test/Transforms/TailCallElim/basic.ll
Removed:
################################################################################
diff --git a/llvm/test/Other/lint.ll b/llvm/test/Other/lint.ll
index 5e9b4660ec17..799d3fe7cbfb 100644
--- a/llvm/test/Other/lint.ll
+++ b/llvm/test/Other/lint.ll
@@ -70,7 +70,7 @@ define i32 @foo() noreturn {
; CHECK: Undefined behavior: Null pointer dereference
call void @llvm.stackrestore(i8* null)
; CHECK: Undefined behavior: Null pointer dereference
- call void @has_sret(i8* null)
+ call void @has_sret(i8* sret(i8) null)
; CHECK: Unusual: noalias argument aliases another argument
call void @has_noaliases(i32* @CG, i32* @CG)
; CHECK: Call argument count mismatches callee argument count
diff --git a/llvm/test/Transforms/ArgumentPromotion/fp80.ll b/llvm/test/Transforms/ArgumentPromotion/fp80.ll
index 7f39f7e7c5f9..0386572a2b6b 100644
--- a/llvm/test/Transforms/ArgumentPromotion/fp80.ll
+++ b/llvm/test/Transforms/ArgumentPromotion/fp80.ll
@@ -20,15 +20,15 @@ define void @run() {
; CHECK-NEXT: [[DOT0:%.*]] = getelementptr [[UNION_U:%.*]], %union.u* bitcast (%struct.s* @b to %union.u*), i32 0, i32 0
; CHECK-NEXT: [[DOT0_VAL:%.*]] = load x86_fp80, x86_fp80* [[DOT0]]
; CHECK-NEXT: [[TMP1:%.*]] = tail call x86_fp80 @UseLongDoubleSafely(x86_fp80 [[DOT0_VAL]])
-; CHECK-NEXT: [[TMP2:%.*]] = call i64 @AccessPaddingOfStruct(%struct.Foo* @a)
-; CHECK-NEXT: [[TMP3:%.*]] = call i64 @CaptureAStruct(%struct.Foo* @a)
+; CHECK-NEXT: [[TMP2:%.*]] = call i64 @AccessPaddingOfStruct(%struct.Foo* byval(%struct.Foo) @a)
+; CHECK-NEXT: [[TMP3:%.*]] = call i64 @CaptureAStruct(%struct.Foo* byval(%struct.Foo) @a)
; CHECK-NEXT: ret void
;
entry:
tail call i8 @UseLongDoubleUnsafely(%union.u* byval(%union.u) align 16 bitcast (%struct.s* @b to %union.u*))
tail call x86_fp80 @UseLongDoubleSafely(%union.u* byval(%union.u) align 16 bitcast (%struct.s* @b to %union.u*))
- call i64 @AccessPaddingOfStruct(%struct.Foo* @a)
- call i64 @CaptureAStruct(%struct.Foo* @a)
+ call i64 @AccessPaddingOfStruct(%struct.Foo* byval(%struct.Foo) @a)
+ call i64 @CaptureAStruct(%struct.Foo* byval(%struct.Foo) @a)
ret void
}
diff --git a/llvm/test/Transforms/Attributor/ArgumentPromotion/dbg.ll b/llvm/test/Transforms/Attributor/ArgumentPromotion/dbg.ll
index 02355ace1f0e..3e9dc2fa4dac 100644
--- a/llvm/test/Transforms/Attributor/ArgumentPromotion/dbg.ll
+++ b/llvm/test/Transforms/Attributor/ArgumentPromotion/dbg.ll
@@ -46,7 +46,7 @@ define void @caller(i32** %Y, %struct.pair* %P) {
;
call void @test(i32** %Y), !dbg !1
- call void @test_byval(%struct.pair* %P), !dbg !6
+ call void @test_byval(%struct.pair* byval(%struct.pair) %P), !dbg !6
ret void
}
diff --git a/llvm/test/Transforms/Attributor/ArgumentPromotion/fp80.ll b/llvm/test/Transforms/Attributor/ArgumentPromotion/fp80.ll
index 23ff04ddbcbc..4ade2347abe9 100644
--- a/llvm/test/Transforms/Attributor/ArgumentPromotion/fp80.ll
+++ b/llvm/test/Transforms/Attributor/ArgumentPromotion/fp80.ll
@@ -25,7 +25,7 @@ define void @run() {
; IS________OPM-LABEL: define {{[^@]+}}@run
; IS________OPM-SAME: () #[[ATTR0:[0-9]+]] {
; IS________OPM-NEXT: entry:
-; IS________OPM-NEXT: [[TMP0:%.*]] = call i64 @CaptureAStruct(%struct.Foo* nocapture nofree noundef nonnull readonly align 8 dereferenceable(16) @a) #[[ATTR0]]
+; IS________OPM-NEXT: [[TMP0:%.*]] = call i64 @CaptureAStruct(%struct.Foo* nocapture nofree noundef nonnull readonly byval(%struct.Foo) align 8 dereferenceable(16) @a) #[[ATTR0]]
; IS________OPM-NEXT: unreachable
;
; IS__TUNIT_NPM: Function Attrs: nofree noreturn nosync nounwind readnone
@@ -51,8 +51,8 @@ define void @run() {
entry:
tail call i8 @UseLongDoubleUnsafely(%union.u* byval(%union.u) align 16 bitcast (%struct.s* @b to %union.u*))
tail call x86_fp80 @UseLongDoubleSafely(%union.u* byval(%union.u) align 16 bitcast (%struct.s* @b to %union.u*))
- call i64 @AccessPaddingOfStruct(%struct.Foo* @a)
- call i64 @CaptureAStruct(%struct.Foo* @a)
+ call i64 @AccessPaddingOfStruct(%struct.Foo* byval(%struct.Foo) @a)
+ call i64 @CaptureAStruct(%struct.Foo* byval(%struct.Foo) @a)
ret void
}
diff --git a/llvm/test/Transforms/Attributor/readattrs.ll b/llvm/test/Transforms/Attributor/readattrs.ll
index c440e12ddfce..129527135709 100644
--- a/llvm/test/Transforms/Attributor/readattrs.ll
+++ b/llvm/test/Transforms/Attributor/readattrs.ll
@@ -384,22 +384,22 @@ define void @byval_no_fnarg(i8* byval(i8) %written) {
define void @testbyval(i8* %read_only) {
; IS__TUNIT____-LABEL: define {{[^@]+}}@testbyval
; IS__TUNIT____-SAME: (i8* nocapture readonly [[READ_ONLY:%.*]]) {
-; IS__TUNIT____-NEXT: call void @byval_not_readonly_1(i8* nocapture readonly [[READ_ONLY]]) #[[ATTR2]]
-; IS__TUNIT____-NEXT: call void @byval_not_readnone_1(i8* noalias nocapture readnone [[READ_ONLY]])
+; IS__TUNIT____-NEXT: call void @byval_not_readonly_1(i8* nocapture readonly byval(i8) [[READ_ONLY]]) #[[ATTR2]]
+; IS__TUNIT____-NEXT: call void @byval_not_readnone_1(i8* noalias nocapture readnone byval(i8) [[READ_ONLY]])
; IS__TUNIT____-NEXT: ret void
;
; IS__CGSCC____: Function Attrs: readonly
; IS__CGSCC____-LABEL: define {{[^@]+}}@testbyval
; IS__CGSCC____-SAME: (i8* nocapture noundef nonnull readonly dereferenceable(1) [[READ_ONLY:%.*]]) #[[ATTR2]] {
-; IS__CGSCC____-NEXT: call void @byval_not_readonly_1(i8* noalias nocapture noundef nonnull readonly dereferenceable(1) [[READ_ONLY]]) #[[ATTR2]]
-; IS__CGSCC____-NEXT: call void @byval_not_readnone_1(i8* noalias nocapture noundef nonnull readnone dereferenceable(1) [[READ_ONLY]])
+; IS__CGSCC____-NEXT: call void @byval_not_readonly_1(i8* noalias nocapture noundef nonnull readonly byval(i8) dereferenceable(1) [[READ_ONLY]]) #[[ATTR2]]
+; IS__CGSCC____-NEXT: call void @byval_not_readnone_1(i8* noalias nocapture noundef nonnull readnone byval(i8) dereferenceable(1) [[READ_ONLY]])
; IS__CGSCC____-NEXT: ret void
;
- call void @byval_not_readonly_1(i8* %read_only)
- call void @byval_not_readonly_2(i8* %read_only)
- call void @byval_not_readnone_1(i8* %read_only)
- call void @byval_not_readnone_2(i8* %read_only)
- call void @byval_no_fnarg(i8* %read_only)
+ call void @byval_not_readonly_1(i8* byval(i8) %read_only)
+ call void @byval_not_readonly_2(i8* byval(i8) %read_only)
+ call void @byval_not_readnone_1(i8* byval(i8) %read_only)
+ call void @byval_not_readnone_2(i8* byval(i8) %read_only)
+ call void @byval_no_fnarg(i8* byval(i8) %read_only)
ret void
}
;}
diff --git a/llvm/test/Transforms/Attributor/value-simplify.ll b/llvm/test/Transforms/Attributor/value-simplify.ll
index f9a7f69b7356..ab8d87118b68 100644
--- a/llvm/test/Transforms/Attributor/value-simplify.ll
+++ b/llvm/test/Transforms/Attributor/value-simplify.ll
@@ -433,22 +433,22 @@ define i32* @complicated_args_inalloca(i32* %arg) {
; IS__TUNIT____: Function Attrs: nofree nosync nounwind readnone willreturn
; IS__TUNIT____-LABEL: define {{[^@]+}}@complicated_args_inalloca
; IS__TUNIT____-SAME: (i32* nofree readnone returned "no-capture-maybe-returned" [[ARG:%.*]]) #[[ATTR1]] {
-; IS__TUNIT____-NEXT: [[CALL:%.*]] = call i32* @test_inalloca(i32* noalias nofree writeonly "no-capture-maybe-returned" [[ARG]]) #[[ATTR1]]
+; IS__TUNIT____-NEXT: [[CALL:%.*]] = call i32* @test_inalloca(i32* noalias nofree writeonly inalloca(i32) "no-capture-maybe-returned" [[ARG]]) #[[ATTR1]]
; IS__TUNIT____-NEXT: ret i32* [[CALL]]
;
; IS__CGSCC_OPM: Function Attrs: nofree norecurse nosync nounwind readnone willreturn
; IS__CGSCC_OPM-LABEL: define {{[^@]+}}@complicated_args_inalloca
; IS__CGSCC_OPM-SAME: (i32* nofree noundef nonnull readnone returned dereferenceable(4) "no-capture-maybe-returned" [[ARG:%.*]]) #[[ATTR1]] {
-; IS__CGSCC_OPM-NEXT: [[CALL:%.*]] = call i32* @test_inalloca(i32* noalias nofree noundef nonnull writeonly dereferenceable(4) "no-capture-maybe-returned" [[ARG]]) #[[ATTR8:[0-9]+]]
+; IS__CGSCC_OPM-NEXT: [[CALL:%.*]] = call i32* @test_inalloca(i32* noalias nofree noundef nonnull writeonly inalloca(i32) dereferenceable(4) "no-capture-maybe-returned" [[ARG]]) #[[ATTR8:[0-9]+]]
; IS__CGSCC_OPM-NEXT: ret i32* [[CALL]]
;
; IS__CGSCC_NPM: Function Attrs: nofree norecurse nosync nounwind readnone willreturn
; IS__CGSCC_NPM-LABEL: define {{[^@]+}}@complicated_args_inalloca
; IS__CGSCC_NPM-SAME: (i32* nofree noundef nonnull readnone returned dereferenceable(4) "no-capture-maybe-returned" [[ARG:%.*]]) #[[ATTR1]] {
-; IS__CGSCC_NPM-NEXT: [[CALL:%.*]] = call i32* @test_inalloca(i32* noalias nofree noundef nonnull writeonly dereferenceable(4) "no-capture-maybe-returned" [[ARG]]) #[[ATTR7:[0-9]+]]
+; IS__CGSCC_NPM-NEXT: [[CALL:%.*]] = call i32* @test_inalloca(i32* noalias nofree noundef nonnull writeonly inalloca(i32) dereferenceable(4) "no-capture-maybe-returned" [[ARG]]) #[[ATTR7:[0-9]+]]
; IS__CGSCC_NPM-NEXT: ret i32* [[CALL]]
;
- %call = call i32* @test_inalloca(i32* %arg)
+ %call = call i32* @test_inalloca(i32* inalloca(i32) %arg)
ret i32* %call
}
@@ -522,13 +522,13 @@ define void @complicated_args_sret(%struct.X** %b) {
; IS__TUNIT_OPM: Function Attrs: argmemonly nofree nosync nounwind willreturn writeonly
; IS__TUNIT_OPM-LABEL: define {{[^@]+}}@complicated_args_sret
; IS__TUNIT_OPM-SAME: (%struct.X** nocapture nofree writeonly [[B:%.*]]) #[[ATTR3]] {
-; IS__TUNIT_OPM-NEXT: call void @test_sret(%struct.X* noalias nocapture nofree noundef writeonly align 536870912 null, %struct.X** nocapture nofree writeonly align 8 [[B]]) #[[ATTR6:[0-9]+]]
+; IS__TUNIT_OPM-NEXT: call void @test_sret(%struct.X* noalias nocapture nofree noundef writeonly sret(%struct.X) align 536870912 null, %struct.X** nocapture nofree writeonly align 8 [[B]]) #[[ATTR6:[0-9]+]]
; IS__TUNIT_OPM-NEXT: ret void
;
; IS__TUNIT_NPM: Function Attrs: argmemonly nofree nosync nounwind willreturn writeonly
; IS__TUNIT_NPM-LABEL: define {{[^@]+}}@complicated_args_sret
; IS__TUNIT_NPM-SAME: (%struct.X** nocapture nofree writeonly [[B:%.*]]) #[[ATTR3]] {
-; IS__TUNIT_NPM-NEXT: call void @test_sret(%struct.X* noalias nocapture nofree noundef writeonly align 536870912 null, %struct.X** nocapture nofree writeonly align 8 [[B]]) #[[ATTR5:[0-9]+]]
+; IS__TUNIT_NPM-NEXT: call void @test_sret(%struct.X* noalias nocapture nofree noundef writeonly sret(%struct.X) align 536870912 null, %struct.X** nocapture nofree writeonly align 8 [[B]]) #[[ATTR5:[0-9]+]]
; IS__TUNIT_NPM-NEXT: ret void
;
; IS__CGSCC____: Function Attrs: argmemonly nofree norecurse nosync nounwind willreturn writeonly
@@ -536,7 +536,7 @@ define void @complicated_args_sret(%struct.X** %b) {
; IS__CGSCC____-SAME: (%struct.X** nocapture nofree noundef nonnull writeonly align 8 dereferenceable(8) [[B:%.*]]) #[[ATTR2]] {
; IS__CGSCC____-NEXT: unreachable
;
- call void @test_sret(%struct.X* null, %struct.X** %b)
+ call void @test_sret(%struct.X* sret(%struct.X) null, %struct.X** %b)
ret void
}
@@ -615,7 +615,7 @@ define void @complicated_args_byval() {
; IS__CGSCC_NPM-SAME: () #[[ATTR3:[0-9]+]] {
; IS__CGSCC_NPM-NEXT: ret void
;
- call void @test_byval(%struct.X* @S)
+ call void @test_byval(%struct.X* byval(%struct.X) @S)
ret void
}
@@ -655,7 +655,7 @@ define i8* @complicated_args_byval2() {
; IS__CGSCC_NPM-NEXT: [[C:%.*]] = call i8* @test_byval2() #[[ATTR10:[0-9]+]]
; IS__CGSCC_NPM-NEXT: ret i8* [[C]]
;
- %c = call i8* @test_byval2(%struct.X* @S)
+ %c = call i8* @test_byval2(%struct.X* byval(%struct.X) @S)
ret i8* %c
}
diff --git a/llvm/test/Transforms/DeadArgElim/byref.ll b/llvm/test/Transforms/DeadArgElim/byref.ll
index 95e839c04aa2..c3f48596b04c 100644
--- a/llvm/test/Transforms/DeadArgElim/byref.ll
+++ b/llvm/test/Transforms/DeadArgElim/byref.ll
@@ -14,9 +14,9 @@ define void @unused_byref_arg(i32* byref(i32) %dead_arg) {
define void @dont_replace_by_undef(i32* %ptr) {
; CHECK-LABEL: @dont_replace_by_undef(
-; CHECK-NEXT: call void @unused_byref_arg(i32* undef)
+; CHECK-NEXT: call void @unused_byref_arg(i32* byref(i32) undef)
; CHECK-NEXT: ret void
;
- call void @unused_byref_arg(i32* %ptr)
+ call void @unused_byref_arg(i32* byref(i32) %ptr)
ret void
}
diff --git a/llvm/test/Transforms/LoopStrengthReduce/X86/pr46943.ll b/llvm/test/Transforms/LoopStrengthReduce/X86/pr46943.ll
index 2ae2436e51c2..5f4180351085 100644
--- a/llvm/test/Transforms/LoopStrengthReduce/X86/pr46943.ll
+++ b/llvm/test/Transforms/LoopStrengthReduce/X86/pr46943.ll
@@ -14,7 +14,7 @@ define i8 @drop_nuw() {
; CHECK-NEXT: br label [[LOOP:%.*]]
; CHECK: loop:
; CHECK-NEXT: [[IV:%.*]] = phi i8 [ 0, [[ENTRY:%.*]] ], [ [[IV_NEXT:%.*]], [[LOOP]] ]
-; CHECK-NEXT: call void @use(i8 [[IV]])
+; CHECK-NEXT: call void @use(i8 zeroext [[IV]])
; CHECK-NEXT: [[IV_NEXT]] = add i8 [[IV]], 1
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i8 [[IV_NEXT]], 0
; CHECK-NEXT: br i1 [[CMP]], label [[EXIT:%.*]], label [[LOOP]]
@@ -27,7 +27,7 @@ entry:
loop:
%iv = phi i8 [ 0, %entry ], [ %iv.next, %loop ]
- call void @use(i8 %iv)
+ call void @use(i8 zeroext %iv)
%iv.next = add nuw i8 %iv, 1
%cmp = icmp eq i8 %iv, -1
@@ -44,7 +44,7 @@ define i8 @drop_nsw() {
; CHECK-NEXT: br label [[LOOP:%.*]]
; CHECK: loop:
; CHECK-NEXT: [[IV:%.*]] = phi i8 [ 127, [[ENTRY:%.*]] ], [ [[IV_NEXT:%.*]], [[LOOP]] ]
-; CHECK-NEXT: call void @use(i8 [[IV]])
+; CHECK-NEXT: call void @use(i8 zeroext [[IV]])
; CHECK-NEXT: [[IV_NEXT]] = add i8 [[IV]], -1
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i8 [[IV_NEXT]], 127
; CHECK-NEXT: br i1 [[CMP]], label [[EXIT:%.*]], label [[LOOP]]
@@ -57,7 +57,7 @@ entry:
loop:
%iv = phi i8 [ 127, %entry ], [ %iv.next, %loop ]
- call void @use(i8 %iv)
+ call void @use(i8 zeroext %iv)
%iv.next = add nsw i8 %iv, -1
%cmp = icmp eq i8 %iv, -128
@@ -74,7 +74,7 @@ define i8 @already_postinc() {
; CHECK-NEXT: br label [[LOOP:%.*]]
; CHECK: loop:
; CHECK-NEXT: [[IV:%.*]] = phi i8 [ 0, [[ENTRY:%.*]] ], [ [[IV_NEXT:%.*]], [[LOOP]] ]
-; CHECK-NEXT: call void @use(i8 [[IV]])
+; CHECK-NEXT: call void @use(i8 zeroext [[IV]])
; CHECK-NEXT: [[IV_NEXT]] = add nuw i8 [[IV]], 1
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i8 [[IV_NEXT]], -1
; CHECK-NEXT: br i1 [[CMP]], label [[EXIT:%.*]], label [[LOOP]]
@@ -87,7 +87,7 @@ entry:
loop:
%iv = phi i8 [ 0, %entry ], [ %iv.next, %loop ]
- call void @use(i8 %iv)
+ call void @use(i8 zeroext %iv)
%iv.next = add nuw i8 %iv, 1
%cmp = icmp eq i8 %iv.next, -1
diff --git a/llvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll b/llvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll
index cf82c3da55d6..fa6bfcc6f508 100644
--- a/llvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll
+++ b/llvm/test/Transforms/OpenMP/gpu_state_machine_function_ptr_replacement.ll
@@ -68,7 +68,7 @@ entry:
br i1 %work_match, label %.execute.fn, label %.check.next
.execute.fn: ; preds = %.execute.parallel
- call void @__omp_outlined__1_wrapper(i16 0, i32 %4)
+ call void @__omp_outlined__1_wrapper(i16 zeroext 0, i32 %4)
br label %.terminate.parallel
.check.next: ; preds = %.execute.parallel
@@ -77,7 +77,7 @@ entry:
br i1 %work_match1, label %.execute.fn2, label %.check.next3
.execute.fn2: ; preds = %.check.next
- call void @__omp_outlined__2_wrapper(i16 0, i32 %4)
+ call void @__omp_outlined__2_wrapper(i16 zeroext 0, i32 %4)
br label %.terminate.parallel
.check.next3: ; preds = %.check.next
@@ -86,7 +86,7 @@ entry:
br i1 %work_match4, label %.execute.fn5, label %.check.next6
.execute.fn5: ; preds = %.check.next3
- call void @__omp_outlined__3_wrapper(i16 0, i32 %4)
+ call void @__omp_outlined__3_wrapper(i16 zeroext 0, i32 %4)
br label %.terminate.parallel
.check.next6: ; preds = %.check.next3
diff --git a/llvm/test/Transforms/OpenMP/icv_tracking.ll b/llvm/test/Transforms/OpenMP/icv_tracking.ll
index a5e93b1e53d3..8952bedf66ef 100644
--- a/llvm/test/Transforms/OpenMP/icv_tracking.ll
+++ b/llvm/test/Transforms/OpenMP/icv_tracking.ll
@@ -504,7 +504,7 @@ define void @test4_invoke(i1 %0) personality i8* bitcast (i32 (...)* @__gxx_pers
; CHECK-LABEL: define {{[^@]+}}@test4_invoke
; CHECK-SAME: (i1 [[TMP0:%.*]]) personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*)
; CHECK-NEXT: call void @known_unique_icv(i1 [[TMP0]])
-; CHECK-NEXT: [[TMP2:%.*]] = invoke i32 @maybe_throw(i1 [[TMP0]])
+; CHECK-NEXT: [[TMP2:%.*]] = invoke i32 @maybe_throw(i1 zeroext [[TMP0]])
; CHECK-NEXT: to label [[CONT:%.*]] unwind label [[EXC:%.*]]
; CHECK: cont:
; CHECK-NEXT: [[TMP3:%.*]] = icmp eq i1 [[TMP0]], false
@@ -521,7 +521,7 @@ define void @test4_invoke(i1 %0) personality i8* bitcast (i32 (...)* @__gxx_pers
; CHECK-NEXT: ret void
;
call void @known_unique_icv(i1 %0)
- invoke i32 @maybe_throw(i1 %0)
+ invoke i32 @maybe_throw(i1 zeroext %0)
to label %cont unwind label %exc
cont:
diff --git a/llvm/test/Transforms/TailCallElim/basic.ll b/llvm/test/Transforms/TailCallElim/basic.ll
index 91350c59c7e9..f65cd9c777c6 100644
--- a/llvm/test/Transforms/TailCallElim/basic.ll
+++ b/llvm/test/Transforms/TailCallElim/basic.ll
@@ -215,11 +215,11 @@ entry:
define void @test13() {
; CHECK-LABEL: @test13
; CHECK: tail call void @bar(%struct.foo* byval(%struct.foo) %f)
-; CHECK: tail call void @bar(%struct.foo* null)
+; CHECK: tail call void @bar(%struct.foo* byval(%struct.foo) null)
entry:
%f = alloca %struct.foo
call void @bar(%struct.foo* byval(%struct.foo) %f)
- call void @bar(%struct.foo* null)
+ call void @bar(%struct.foo* byval(%struct.foo) null)
ret void
}
More information about the llvm-commits
mailing list