Hi all,

The vmovl_high_* intrinsics map down to the SXTL2/UXTL2 instructions that 
already have appropriately-named
patterns and expanders, so it's straightforward to wire them up.

Bootstrapped and tested on aarch64-none-linux-gnu.
Pushing to trunk.
Thanks,
Kyrill

gcc/ChangeLog:

        * config/aarch64/aarch64-simd-builtins.def (vec_unpacks_hi,
        vec_unpacku_hi_): Define builtins.
        * config/aarch64/arm_neon.h (vmovl_high_s8): Reimplement using builtin.
        (vmovl_high_s16): Likewise.
        (vmovl_high_s32): Likewise.
        (vmovl_high_u8): Likewise.
        (vmovl_high_u16): Likewise.
        (vmovl_high_u32): Likewise.

gcc/testsuite/ChangeLog:

        * gcc.target/aarch64/simd/vmovl_high_1.c: New test.

Attachment: vmovl-hi.patch
Description: vmovl-hi.patch

Reply via email to