[llvm] [ReachingDefAnalysis] Fix management of MBBFrameObjsReachingDefs (PR #124943)
Michael Maitland via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 31 11:08:50 PST 2025
================
@@ -344,15 +342,10 @@ int ReachingDefAnalysis::getReachingDef(MachineInstr *MI, Register Reg) const {
int Key = FrameIndex - ObjectIndexBegin;
// Check that there was a reaching def.
- auto Lookup1 = MBBFrameObjsReachingDefs.find(MBBNumber);
- if (Lookup1 == MBBFrameObjsReachingDefs.end())
- return LatestDef;
- auto &InnerMap = Lookup1->second;
- auto Lookup2 = InnerMap.find(Key);
- if (Lookup2 == InnerMap.end())
+ auto Lookup = MBBFrameObjsReachingDefs.find({MBBNumber, Key});
----------------
michaelmaitland wrote:
There is no testing for a non-zero ObjectIndexBegin, so it ended up behaving as if Key == FrameIndex. Do you want me to add a test for a non-zero ObjectIndexBegin?
https://github.com/llvm/llvm-project/pull/124943
More information about the llvm-commits
mailing list