On Tue, Nov 16, 2021 at 12:56:52PM -0600, Bill Schmidt wrote:
> Hi!  I previously posted [1] to correct some problems with the new builtins
> support targeting 32-bit code gen.  Based on the discussion, I've made some
> adjustments and would like to submit this for consideration.
> 
> We eventually agreed that the strange behavior for -m32 -mpowerpc64 for 
> certain
> HTM builtins should be removed.  All of the registers TEXASR, TEXASRU, TFHAR,
> and TFIAR are now accessed using the unsigned long data type in all 
> configurations.

> gcc/
>       * config/rs6000/rs6000-builtin-new.def (CMPB): Flag as no32bit.
>       (BPERMD): Flag as 32bit (needing special handling for 32-bit).
>       (UNPACK_TD): Return unsigned long long instead of unsigned long.
>       (GET_TEXASR): Return unsigned long instead of unsigned long long.
>       (GET_TEXASRU): Likewise.
>       (GET_TFHAR): Likewise.
>       (GET_TFIAR): Likewise.
>       (SET_TEXASR): Pass unsigned long instead of unsigned long long.
>       (SET_TEXASRU): Likewise.
>       (SET_TFHAR): Likewise.
>       (SET_TFIAR): Likewise.
>       (TABORTDC): Likewise.
>       (TABORTDCI): Likewise.
>       * config/rs6000/rs6000-call.c (rs6000_expand_new_builtin): Fix error
>       handling for no32bit.  Add 32bit handling for RS6000_BIF_BPERMD.
> 
> gcc/testsuite/
>       * gcc.target/powerpc/cmpb-3.c: Adjust error message.

Okay for trunk.  Thanks!


Could you put some short blurb about the changed prototype of the HTM
reg builtins in the release notes please?  Thanks x2 :-)


Segher

Reply via email to