This is an archive of the discontinued LLVM Phabricator instance.

ARM big endian function argument passing
ClosedPublic

Authored by cpirker on Mar 26 2014, 12:38 PM.

Details

Reviewers
cpirker
Summary

Hi all,

This patch implements the function argument passing for ARM big endian targets.
Please review.

Thanks,
Christian

Diff Detail

Event Timeline

Hi Christian,

Wow, loads of similar changes! ;) They look harmless enough for me, but I'd be curious on what kind of testing have you done. I'm not worried with the changes themselves, but if you forgot something that wasn't being tested by make checks. Did you run the test-suite? What kind of big-endian hardware is it? Or was it a model?

cheers,
--renato

Hi Renato,

we use a proprietary test suite and a vendor provided fast model for ARMv8 to perform testing.

Thanks,
Christian

ARMv8? This sounds like the wrong back-end, then. Shouldn't you be changing the AArch64 (or the ARM64) back-end?

Also, if this is a proprietary test suite, at least you can tell us what kind of tests it does and how does that give you confidence that the changes are correct.

Hi Renato,

I think that should be ok, because I am referring to the armv8 in AArch32 mode which is supported by the ARM target.
For the AArch64 there was a separate patch D3176.

Our test suite uses a collection of often used code constructs and a collection of unit tests originally used for other compilers.
We configured the test suite with the arm libraries in combination with the fast model for compiler verification.

Thanks,
Christian

cpirker updated this revision to Diff 8913.Apr 29 2014, 6:05 AM

Hi all,

I updated the patch because of the new behaviour for expand atomic ldrex/strex loops in IR.
This was first modified in revision r205525 and updated in some revisions later.
Please review.

Thanks,
Christian

Hi Christian,

Have you tested it with the GNU libraries?

cheers,
--renato

Hi Renato,

Test suite have been run with GNU libraries in little and big endian.
I committed this patch as rL208316.

Thanks,
Christian

cpirker accepted this revision.May 15 2014, 6:29 AM
cpirker added a reviewer: cpirker.
This revision is now accepted and ready to land.May 15 2014, 6:29 AM
cpirker closed this revision.May 15 2014, 6:29 AM