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