This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Add EXT patterns for 64-bit EXT of a subvector of a 128-bit vector
ClosedPublic

Authored by john.brawn on Oct 23 2018, 8:28 AM.

Details

Summary

If we have a 64-bit EXT where one of the operands is a subvector of a 128-bit vector then in some cases we can eliminate an extract_subvector by converting to a 128-bit EXT of the 128-bit vector.

Diff Detail

Event Timeline

john.brawn created this revision.Oct 23 2018, 8:28 AM
dmgreen accepted this revision.Oct 25 2018, 4:21 AM

I've managed to convince myself that this looks OK. A couple of nits depending on what you think of them.

Otherwise LGTM.

lib/Target/AArch64/AArch64InstrInfo.td
4164

Perhaps call this Add8 or something like it? Up to you.

4165

It looks like the i64 from here is an i32 everywhere else

This revision is now accepted and ready to land.Oct 25 2018, 4:21 AM
This revision was automatically updated to reflect the committed changes.