This is an archive of the discontinued LLVM Phabricator instance.

ARM: use new modified-imm instructions for all MC-level purposes.
AbandonedPublic

Authored by t.p.northover on Aug 17 2013, 8:24 AM.

Details

Reviewers
grosbach
Summary

Hi,

This patch builds on Mihai Popa's steps towards supporting the edge cases of ARM's "modified immediate" format instructions. That patch should probably be committed first.

The instructions he added were actually much closer to the ideal MC representation of what's going on than the existing set, but it was decided that removing the originals in one massive patch would be too invasive, so this is a step in that direction.

It converts the instructions he added into the canonical assembly representation for these operations (with some slightly annoying accommodations for TableGen). The next step will be converting CodeGen to use these versions and eventually removing the legacy representation entirely.

Diff Detail

Event Timeline

t.p.northover updated this revision to Unknown Object (????).Aug 17 2013, 8:33 AM

Noticed a couple of tidy ups just after posting. Isn't it always the way?

+ use "ARMModifiedImm" instead of "ModifiedImm" in printing. There's a Thumb one too.
+ An 80-col thing, that I'd even annotated "FIXME".

Hi Tim,

Overall, I like this change and I agree it's the way forward. I had some
nitpick comments in phabricator, but I'm happy with the patch as it is.
Feel free to ignore whatever doesn't make sense.

cheers,
--renato

t.p.northover abandoned this revision.Jun 26 2014, 6:29 AM