Hi!

CCing Segher and David on this.
rs6000 indeed doesn't implement {,u}{add,sub,mul}v4_optab for
any mode and thus leaves it to the generic code.

On Tue, Feb 14, 2023 at 04:48:42AM +0100, Simon Richter wrote:
> I'm looking at the generated code for these builtins on POWER:
> 
>         add 4,3,4
>         subfc 3,3,4
>         subfe 3,3,3
>         std 4,0(5)
>         rldicl 3,3,0,63
>         blr
> 
> and
> 
>         mulld 10,3,4
>         mulhdu 3,3,4
>         addic 9,3,-1
>         std 10,0(5)
>         subfe 3,9,3
>         blr
> 
> The POWER architecture has variants of these instructions with builtin
> overflow checks (addo/mulldo), but these aren't listed in the .md files, and
> the builtins don't generate them either.
> 
> Is this intentional (I've found a few comments that mulldo is microcoded on
> CellBE and should be avoided there)?

        Jakub

Reply via email to