In fuctions that contained debug info but were empty otherwise,
the ARM load/store optimizer could abort. This was because
function MergeReturnIntoLDM handled the special case where a
Machine Basic BLock is empty by calling MBB.empty(). However, this
returns false in presence of debug info, although the function
should be considered empty in the eyes of the load/store optimizer.
This has been fixed by handling the case where searching through the
block finds only debug instructions.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Hello Renato, Duncan, James,
Would you have a few minutes to review this simple fix? The test case is quite verbose, but that's the debug info to blame :)
I have reduced it as much as I could; please let me know if that could be done better.
Many thanks,
Pablo