This is a summary of discussions relative to the merge request created by 
Richard Ball (ricbal02) <[email protected]> titled
aarch64: Add support for sve2p3 and sme2p3 conversion intrinsics
since its creation.

Description: This patch adds support for new intrinsics which make use of
the conversion instructions introduced in SVE2p3/SME2p3.

Include in the patch series is a required dependency patch which has also been 
sent in a separate email.

gcc/ChangeLog:

        * config/aarch64/aarch64-sve-builtins-sve2.cc
        (class svcvtt_impl): New function impl.
        (class svcvtb_impl): Likewise.
        (FUNCTION): Likewise.
        * config/aarch64/aarch64-sve-builtins-sve2.def
        (REQUIRED_EXTENSIONS): List new functions.
        (svdot): Moved to correct location.
        (svdot_lane): Likewise.
        (svcvtn): New function.
        (svcvtt): Likewise.
        (svcvtb): Likewise.
        * config/aarch64/aarch64-sve-builtins-sve2.h: Likewise.
        * config/aarch64/aarch64-sve-builtins.cc
        (TYPES_cvtzn): New function types.
        (TYPES_cvttb): Likewise.
        (cvtzn): Likewise.
        (cvttb): Likewise.
        * config/aarch64/aarch64-sve2.md
        (@aarch64_sve2_scvtfb<mode>): New pattern.
        (@aarch64_sve2_scvtflt<mode>): Likewise.
        (@aarch64_sve2_ucvtfb<mode>): Likewise.
        (@aarch64_sve2_ucvtflt<mode>): Likewise.
        (@aarch64_sve2_fcvtzsn<mode>): Likewise.
        (@aarch64_sve2_fcvtzun<mode>): Likewise.
        * config/aarch64/iterators.md
        (b): Ventype changes.
        (VNx16HF): Likewise.
        (VNx16QI): Likewise.

gcc/testsuite/ChangeLog:

        * gcc.target/aarch64/sme2/acle-asm/cvtb_f16_s8.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtb_f16_u8.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtb_f32_s16.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtb_f32_u16.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtb_f64_s32.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtb_f64_u32.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtn_s16_f32_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtn_s32_f64_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtn_s8_f16_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtn_u16_f32_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtn_u32_f64_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtn_u8_f16_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtt_f16_s8.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtt_f16_u8.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtt_f32_s16.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtt_f32_u16.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtt_f64_s32.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/cvtt_f64_u32.c: New test.

CC: [email protected], [email protected], [email protected], 
[email protected], [email protected], [email protected]

The full and up to date discussion can be found at 
https://forge.sourceware.org/gcc/gcc/pulls/165

The merge request has been closed without being merged directly on the forge 
repository.

On 2026-06-01 10:40:24+00:00, Claudio Bantaloukas (rdfm) <[email protected]> 
commented on the code:
LGTM (modulo s_narrow_fsu_sve2p3 being renamed to s_narrow_su). But I'm not a 
maintainer.

Reply via email to