[llvm] [DebugInfo][AT] Treat escaping calls as untagged stores in assignment tracking (PR #183979)

Orlando Cazalet-Hyams via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 9 03:04:20 PDT 2026


================
@@ -2200,6 +2265,43 @@ static AssignmentTrackingLowering::OverlapMap buildOverlapMapAndRecordDeclares(
         for (DbgVariableRecord *DVR : at::getDVRAssignmentMarkers(AI))
           HandleDbgAssignForUnknownStore(DVR);
       }
+
+      // Check for escaping calls
+      if (auto *CB = dyn_cast<CallBase>(&I)) {
+        // Skip intrinsics, their memory effects are modeled individually
+        if (!isa<IntrinsicInst>(CB) && !CB->onlyReadsMemory()) {
----------------
OCHyams wrote:

Please can we restructure this to reduce scope nesting, using some `continue`s? 

https://github.com/llvm/llvm-project/pull/183979


More information about the llvm-commits mailing list