This is an archive of the discontinued LLVM Phabricator instance.

[GlobalISel] Compute debug location when merging stores more accurately
ClosedPublic

Authored by asi-sc on Oct 28 2022, 3:28 AM.

Details

Summary

Originaly the loop did almost nothing as the calculated location was
overwritten on the next iteration.

Diff Detail

Event Timeline

asi-sc created this revision.Oct 28 2022, 3:28 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 28 2022, 3:28 AM
asi-sc requested review of this revision.Oct 28 2022, 3:28 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 28 2022, 3:28 AM

Thanks for fixing this, could you add a small test as well?

asi-sc updated this revision to Diff 471982.Oct 31 2022, 6:07 AM

Add a test

Thanks for fixing this, could you add a small test as well?

I added a test, but uploaded only the diff to make a stress on the change. In the test there are 4 store instructions with equal line (=9), but different column number. First two stores have column number = 1, third and fourth stores have column number = 4. That's why when we merge locations incorrectly by using only two last stores, we have column: 4 in the merged store too. However, when merging locations for all four stores, we cannot find one common column number, so we dropping this information at all.

aemerson accepted this revision.Oct 31 2022, 10:21 PM

Thanks. LGTM.

This revision is now accepted and ready to land.Oct 31 2022, 10:21 PM
This revision was landed with ongoing or failed builds.Nov 1 2022, 4:36 AM
This revision was automatically updated to reflect the committed changes.