[llvm-branch-commits] [clang] [clang] Use tighter lifetime bounds for C temporary arguments (PR #170518)
Eli Friedman via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Apr 6 13:26:08 PDT 2026
================
@@ -23,8 +23,14 @@ void foo(){
// CHECK-NEXT: invoke void @f1
// CHECK-NEXT: to label %[[CONT:.*]] unwind label %[[LPAD1:.*]]
//
+// CHECK: [[CONT]]:
+// CHECK-NEXT: @llvm.lifetime.end.p0(ptr [[TMP2]])
+// CHECK-NEXT: invoke void @f2
+// CHECK-NEXT: to label %[[CONT2:.*]] unwind label %[[LPAD2:.*]]
+//
+// CHECK: [[CONT2]]:
+// CHECK-NEXT: lifetime.end.p0(ptr [[TMP1]])
+//
// CHECK: [[LPAD1]]:
// CHECK-NEXT: landingpad
-// CHECK: llvm.lifetime.end.p0(ptr [[TMP2]])
// CHECK: llvm.lifetime.end.p0(ptr [[TMP1]])
----------------
efriedma-quic wrote:
Should we check for `llvm.lifetime.end.p0(ptr [[TMP2]])` on the unwind path?
https://github.com/llvm/llvm-project/pull/170518
More information about the llvm-branch-commits
mailing list