[PATCH] D145515: [Assignment Tracking][NFC] Only calculate fragment overlaps for partially stack homed variables

Orlando Cazalet-Hyams via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 16 01:54:38 PDT 2023


Orlando added a comment.

In D145515#4196999 <https://reviews.llvm.org/D145515#4196999>, @jmorse wrote:

> /me squints -- so if no part of the variable ends up on the stack, this is effectively early-exiting this portion of analysis?

Effectively yes. We already have this filter applied to the rest of the analysis; this patch just adds it to this initialisation step too.



================
Comment at: llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp:1879
 static AssignmentTrackingLowering::OverlapMap buildOverlapMapAndRecordDeclares(
-    Function &Fn, FunctionVarLocsBuilder *FnVarLocs,
+    Function &Fn, const DenseSet<DebugAggregate> *VarsWithStackSlot,
+    FunctionVarLocsBuilder *FnVarLocs,
----------------
jmorse wrote:
> scott.linder wrote:
> > I would prefer a reference type, assuming there is no possibility that it is `nullptr`.
> +1,
I have already changed `VarsWithStackSlot` (the parameter added in this patch) to a reference type - just checking, @jmorse are you asking for me to change `FnVarLocs` (not added in this patch) too?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D145515/new/

https://reviews.llvm.org/D145515



More information about the llvm-commits mailing list