This is an archive of the discontinued LLVM Phabricator instance.

[AArch64 BE] Emission of BUILD_VECTORs can be incorrect in BE mode - movi, fmov, mvni
ClosedPublic

Authored by rmaprath on Sep 3 2014, 7:08 AM.

Details

Reviewers
t.p.northover
Summary

Continued from http://reviews.llvm.org/D5097

This patch introduces a natural-vector-cast DAG operation which does not generate REV instructions in big-endian mode (unlike ISD:BITCAST).

Currently the patch only fixes movi, fmov and mvni encoded BUILD_VECTORs. If it looks good, I can expand it to fix bic and orr encoded BUILD_VECTORs as well (which are also broken atm).

Asiri.

Diff Detail

Event Timeline

rmaprath updated this revision to Diff 13206.Sep 3 2014, 7:08 AM
rmaprath retitled this revision from to Emission of BUILD_VECTORs can be incorrect in BE mode - movi, fmov, mvni.
rmaprath updated this object.
rmaprath edited the test plan for this revision. (Show Details)
rmaprath added a reviewer: t.p.northover.
rmaprath added a subscriber: Unknown Object (MLST).
rmaprath retitled this revision from Emission of BUILD_VECTORs can be incorrect in BE mode - movi, fmov, mvni to [AArch64 BE] Emission of BUILD_VECTORs can be incorrect in BE mode - movi, fmov, mvni.Sep 3 2014, 7:09 AM
t.p.northover accepted this revision.Sep 3 2014, 8:02 AM
t.p.northover edited edge metadata.

Hi Asiri,

I think this looks fine, thanks for reworking the patch. I'm glad it did turn out to be fairly simple in the end, I was worried there was some hidden detail I'd missed.

Are you planning to handle BIC and friends in a separate patch, or this one? Either's fine with me, though I think it definitely needs doing as part of the work here.

Cheers.

Tim.

This revision is now accepted and ready to land.Sep 3 2014, 8:02 AM

Hi Tim,

Thanks for the review. Can you commit this patch?

I'll create another one for the bic and orr cases tomorrow.

Cheers!

Asiri.

Hi Asiri,

Thanks for the review. Can you commit this patch?

Sure, it should be committed as r217138. Thanks for working on it!

Tim.

rmaprath closed this revision.Sep 4 2014, 3:06 AM