This is an archive of the discontinued LLVM Phabricator instance.

[DAGCombiner] More load-store forwarding for big-endian
ClosedPublic

Authored by RolandF on Jul 19 2022, 12:52 PM.

Details

Summary

Get some load-store forwarding cases for big-endian where a larger store covers a smaller load, and the offset would be 0 and handled on little-endian but on big-endian the offset is adjusted to be non-zero. The idea is just to shift the data to make it look like the offset 0 case.

Diff Detail

Event Timeline

RolandF created this revision.Jul 19 2022, 12:52 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 19 2022, 12:52 PM
RolandF requested review of this revision.Jul 19 2022, 12:52 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 19 2022, 12:52 PM
RolandF updated this revision to Diff 446611.Jul 21 2022, 12:42 PM

Forgot to include the new tests.

nemanjai set the repository for this revision to rG LLVM Github Monorepo.
nemanjai accepted this revision.Jul 27 2022, 3:43 AM

This makes sense to me, but let's see if Tim has any comments since this in in target independent code and appears to affect AArch64.

This revision is now accepted and ready to land.Jul 27 2022, 3:43 AM

Could you add the new tests in main, on their own, then rebase that patch in top of this, so we can see what the effect is?

RolandF updated this revision to Diff 451275.Aug 9 2022, 2:49 PM

Update diff to show diffs with new tests.

This revision was landed with ongoing or failed builds.Sep 14 2022, 12:37 PM
This revision was automatically updated to reflect the committed changes.