Le jeudi 29 septembre 2022, 16:10:03 CEST Tom Lane a écrit :
> Ronan Dunklau <ronan.dunklau@aiven.io> writes:
> >> Yeah, I think the same rules around scope apply as
> >> tuplesort_gettupleslot() with copy==false. We could do it by adding a
> >> copy flag to the existing function, but I'd rather not add the
> >> branching to that function. It's probably just better to duplicate it
> >> and adjust.
> >
> > For the record, I tried to see if gcc would optimize the function by
> > generating two different versions when copy is true or false, thus getting
rid
> > of the branching while still having only one function to deal with.
>
> TBH, I think this is completely ridiculous over-optimization.
> There's exactly zero evidence that a second copy of the function
> would improve performance, or do anything but contribute to code
> bloat (which does have a distributed performance cost).
I wasn't commenting on the merit of the optimization, but just that I tried to
get gcc to apply it itself, which it doesn't.
Regards,
--
Ronan Dunklau