summaryrefslogtreecommitdiffstats
path: root/llvm/test/Transforms/DeadArgElim/deadexternal.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/Transforms/DeadArgElim/deadexternal.ll')
-rw-r--r--llvm/test/Transforms/DeadArgElim/deadexternal.ll15
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/test/Transforms/DeadArgElim/deadexternal.ll b/llvm/test/Transforms/DeadArgElim/deadexternal.ll
index 21cbc37a3f0..1b098c6fe52 100644
--- a/llvm/test/Transforms/DeadArgElim/deadexternal.ll
+++ b/llvm/test/Transforms/DeadArgElim/deadexternal.ll
@@ -50,3 +50,18 @@ entry:
ret void
}
+%swift_error = type opaque
+
+define void @unused_swifterror_arg(%swift_error** swifterror %dead_arg) {
+ tail call void @sideeffect() nounwind
+ ret void
+}
+
+; CHECK-LABEL: @dont_replace_by_undef
+; CHECK-NOT: call void @unused_swifterror_arg({{.*}}undef)
+define void @dont_replace_by_undef() {
+ %error_ptr_ref = alloca swifterror %swift_error*
+ store %swift_error* null, %swift_error** %error_ptr_ref
+ call void @unused_swifterror_arg(%swift_error** %error_ptr_ref)
+ ret void
+}
OpenPOWER on IntegriCloud