gnu/gcc/0d82756a365ee6189af4490345bc0d2595007c84 rs6000: Fix PTImode attribute handling [PR106895]
PTImode is used to generate even/odd register pairs for 128-bit values.
When PTImode is specified via a type attribute, compilation fails
because no internal type exists to represent this mode.
Introduce signed and unsigned PTImode internal builtin types to handle
PTImode. These __pti_internal types are not documented, as they are not
intended for direct user use.
2026-06-04 Jeevitha Palanisamy <jeevitha@linux.ibm.com>
gcc/
PR target/106895
* config/rs6000/rs6000.h (enum rs6000_builtin_type_index): Add
RS6000_BTI_INTPTI and RS6000_BTI_UINTPTI.
(intPTI_type_internal_node, uintPTI_type_internal_node): New
PTImode type macros.
* config/rs6000/rs6000-builtin.cc (rs6000_init_builtins): Register
signed and unsigned PTImode internal builtin types.
* config/rs6000/sync.md (trunctipti2): New splitter.
(extendptiti2): Likewise.
(zero_extendptiti2): Likewise.
gcc/testsuite/
PR target/106895
* gcc.target/powerpc/pr106895-1.c: New test.
* gcc.target/powerpc/pr106895-2.c: New test.
5 files changed