This is an archive of the discontinued LLVM Phabricator instance.

[AVR] Add an 'relax memory operation' pass
ClosedPublic

Authored by dylanmckay on Dec 9 2016, 10:42 PM.

Details

Summary

This pass will be used to relax instructions which use out of bounds
memory accesses to equivalent operations that can work with the
addresses.

The pass currently implements relaxation for the STDWPtrQRr instruction.

Without this pass, an assertion error would be hit in the pseudo expansion pass.

In the future, we will need to add more instructions to this pass. We can do
that on a case-by-case basic.

Diff Detail

Repository
rL LLVM

Event Timeline

dylanmckay updated this revision to Diff 80993.Dec 9 2016, 10:42 PM
dylanmckay retitled this revision from to [AVR] Add an 'relax memory operation' pass.
dylanmckay updated this object.
dylanmckay added reviewers: kparzysz, arsenm.
dylanmckay added a subscriber: llvm-commits.
kparzysz accepted this revision.Dec 12 2016, 8:20 AM
kparzysz edited edge metadata.
This revision is now accepted and ready to land.Dec 12 2016, 8:20 AM
This revision was automatically updated to reflect the committed changes.