Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable NEON intrinsics on big-endian ARM #1485

Merged
merged 1 commit into from
Oct 21, 2023

Commits on Oct 19, 2023

  1. Disable NEON intrinsics on big-endian ARM

    These are currently broken because the order of elements inside
    vectors is reversed on big-endian systems: the ARM ABI requires that
    element 0 is located at the highest address of the vector type. However
    LLVM intrinsics expect element 0 to be located at the lowest address.
    
    See https://llvm.org/docs/BigEndianNEON.html and `arm_neon.h` in
    Clang for more details.
    
    Although this is a breaking change, this is acceptable for 2 reasons:
    - big endian ARM targets are only tier 3.
    - it is preferable to stop existing code from compiling than to let it
    run and produce incorrect results.
    Amanieu committed Oct 19, 2023
    Configuration menu
    Copy the full SHA
    f91abb5 View commit details
    Browse the repository at this point in the history