This is an archive of the discontinued LLVM Phabricator instance.

[ARM] Fix incorrect handling of big-endian vmov.i64
ClosedPublic

Authored by john.brawn on Mar 20 2020, 10:22 AM.

Details

Summary

Currently when the target is big-endian vmov.i64 reverses the order of the two words of the vector. This is correct only when the underlying element type is 32-bit, as actually what it should be doing is considering it a vector of the underlying type and reversing the elements of that.

Diff Detail

Event Timeline

john.brawn created this revision.Mar 20 2020, 10:22 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 20 2020, 10:22 AM

Apply clang-format changes.

dmgreen accepted this revision.Mar 23 2020, 9:57 AM

Amazing. I was going to say I'm not surprised we get big endian wrong. But it's a movimm. I am a little surprised.

As I've said before, I like the test update script for it's consistency and the fact it doesn't hide any instructions.

Results look better. LGTM.

This revision is now accepted and ready to land.Mar 23 2020, 9:57 AM
This revision was automatically updated to reflect the committed changes.