https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127309

--- Comment #4 from Drea Pinski <pinskia at gcc dot gnu.org> ---
Hmm, looking at the graph for aarch64:
https://lnt.opensuse.org/db_default/v4/SPEC/graph?highlight_run=97039&plot.210=575.210.0

The interesting thing is before the removal of the path-splitting around June
30rd, -Ofast was jumpy in performance (this caused GCC always to output a csel
afterwards rather than just branchy code). Afterwards was stable at but at the
worst performance.  Which definitely gives an interesting thing, sometimes the
branch predictor would go wrong it seems.

For x86; similar thing as aarch64 it seems
https://lnt.opensuse.org/db_default/v4/SPEC/graph?highlight_run=97567&plot.210=466.210.0

And yes I checked path-splitting to see was splitting in GCC 16 while on the
trunk it was removed and cmov/csel was being produced now.

So this is really rather odd performance difference even compared to other
micro-arch really.

Reply via email to