https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103990
Bug ID: 103990
Summary: 541.leela_r slower by 4.5-6% with PGO+LTO -Ofast
-march=native in the first week of January 2022
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: jamborm at gcc dot gnu.org
CC: rguenth at gcc dot gnu.org
Target Milestone: ---
Host: x86_64-linux
Target: x86_64-linux
LNT reports that 541.leela_r from SPEC 2017 intrate suite regressed
when compiled with both PGO and LTO with -Ofast -march=native on all
machines in the first week of January:
zen3: https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=477.397.0
zen2: https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=286.397.0
zen1: https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=17.397.0
kaby: https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=16.397.0
On my zen2 desktop I have bisected the regression, or at least most of
it, to r12-6208-gebc853deb7cc04:
ebc853deb7cc0487de9ef6e891a007ba853d1933 is the first bad commit
commit ebc853deb7cc0487de9ef6e891a007ba853d1933
Author: Richard Biener <[email protected]>
Date: Tue Jan 4 11:59:35 2022 +0100
tree-optimization/103690 - not up-to-date SSA and PRE DCE
This avoids running simple_dce_from_worklist on partially not up-to-date
SSA form (in unreachable code regions) by scheduling CFG cleanup
manually as is done anyway when tail-merging runs.
2022-01-04 Richard Biener <[email protected]>
PR tree-optimization/103690
* tree-pass.h (tail_merge_optimize): Adjust.
* tree-ssa-tail-merge.c (tail_merge_optimize): Pass in whether
to re-split critical edges, move CFG cleanup ...
* tree-ssa-pre.c (pass_pre::execute): ... here, before
simple_dce_from_worklist and delay freeing inserted_exprs from
...
(fini_pre): .. here.