Page MenuHomePhabricator

[ARM] Fix arm_neon.h with -flax-vector-conversions=none, part 3
ClosedPublic

Authored by efriedma on Oct 10 2019, 3:08 PM.

Details

Summary

It's completely impossible to check that I've actually found all the issues, due to the use of macros in arm_neon.h, but hopefully this time it'll take more than a few hours for someone to find another issue.

I have no idea why, but apparently there's a rule that some, but not all, builtins which should take an fp16 vector actually take an int8 vector as an argument. Fix this, and add test coverage.

Diff Detail

Event Timeline

efriedma created this revision.Oct 10 2019, 3:08 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 10 2019, 3:08 PM

Thanks again! In my testing, this is enough to get the clang testsuite to pass with the default changed to -flax-vector-conversions=integer.

test/CodeGen/aarch64-v8.2a-neon-intrinsics.c
149–170 ↗(On Diff #224489)

I already committed these three fixes in r374457.

efriedma updated this revision to Diff 224496.Oct 10 2019, 3:40 PM
SjoerdMeijer accepted this revision.Oct 16 2019, 3:00 AM

Yep, thanks again!

This revision is now accepted and ready to land.Oct 16 2019, 3:00 AM
This revision was automatically updated to reflect the committed changes.