On Thu, Jul 16, 2026 at 10:39:19PM +0530, Surya Kumari Jangala wrote:
> Add two new builtins for extracting data from 1024-bit Dense Math
> Registers (DMRs):
> 
>   - __builtin_dmr_extract512 (void *, dmr1024 *, const int<2>):
>     extracts one 512-bit half of a DMR into four 128-bit vectors.
>   - __builtin_disassemble_dmr (void *, dmr1024 *):
>     extracts both 512-bit halves of a DMR into eight 128-bit vectors.
> 
> 2026-07-16  Surya Kumari Jangala  <[email protected]>
> 
> gcc:
>       * config/rs6000/rs6000-builtins.def (__builtin_dmr_extract512): New
>       built-in.
>       (__builtin_disassemble_dmr): Likewise.
>       (__builtin_dmr_extract512_internal): New internal built-in.
>       * config/rs6000/mma.md (UNSPEC_DMF_EXTRACT1024): New UNSPEC entry.
>       * config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_mma_builtin):
>       Exempt RS6000_BIF_DISASSEMBLE_DMR from the early-return guard.
>       Generate appropriate gimple code for the extract builtins.
> 
> gcc/testsuite:
>       * gcc.target/powerpc/dmf-extract512.c: New test.
>       * gcc.target/powerpc/dmf-disassemble-dmr.c: New test.

All of these patches are cleared to be back ported to the GCC 16 branch
after a short delay to make sure the master branch was not broken,
given they only modify PowerPC specific files or documentation files.

-- 
Michael Meissner, IBM
PO Box 98, Ayer, Massachusetts, USA, 01432
email: [email protected]

Reply via email to