This is an archive of the discontinued LLVM Phabricator instance.

R600/SI: Implement isLegalAddressingMode
ClosedPublic

Authored by arsenm on Aug 8 2014, 9:02 PM.

Details

Reviewers
arsenm
Summary

The default assumes that a 16-bit signed offset is used.
LDS instruction use a 16-bit unsigned offset, so it wasn't
being used in some cases where it was assumed a negative offset
could be used.

More should be done here, but first isLegalAddressingMode needs
to gain an addressing mode argument. For now, copy most of the rest
of the default implementation with the immediate offset change.

Diff Detail

Event Timeline

arsenm updated this revision to Diff 12324.Aug 8 2014, 9:02 PM
arsenm retitled this revision from to R600/SI: Implement isLegalAddressingMode .
arsenm updated this object.
arsenm edited the test plan for this revision. (Show Details)
arsenm added a subscriber: Unknown Object (MLST).
arsenm accepted this revision.Aug 15 2014, 10:26 AM
arsenm added a reviewer: arsenm.

r215732. I added the other MUBUF mode to the comment

This revision is now accepted and ready to land.Aug 15 2014, 10:26 AM
arsenm closed this revision.Aug 15 2014, 10:26 AM