https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83201
Bug ID: 83201
Summary: SPEC CPU2017 505.mcf_f produces incorrect output when
built with -flto and FDO
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: lto
Assignee: unassigned at gcc dot gnu.org
Reporter: pthaugen at gcc dot gnu.org
CC: dje at gcc dot gnu.org, hubicka at gcc dot gnu.org,
marxin at gcc dot gnu.org, segher at gcc dot gnu.org,
wschmidt at gcc dot gnu.org
Target Milestone: ---
Host: powerpc64le-unknown-linux-gnu
Target: powerpc64le-unknown-linux-gnu
Build: powerpc64le-unknown-linux-gnu
505.mcf_f produces incorrect output when built with both LTO/FDO. Using either
option separately is fine. GCC trunk r255207 was used. Following are options
used.
OPTIMIZE = -O3 -mcpu=power8 -flto
PASS1_FLAGS = -fprofile-generate
PASS1_LDFLAGS = -fprofile-generate
PASS2_FLAGS = -fprofile-use
PASS2_LDFLAGS = -fprofile-use
Contents of inp.out.mis (miscompares).
0010: simplex iterations : 107102
simplex iterations : 107598
^
0014: simplex iterations : 152479
simplex iterations : 149876
^
0016: erased arcs : 995716
erased arcs : 995702
^
0017: new implicit arcs : 2995716
new implicit arcs : 2995702
^
0019: simplex iterations : 253145
simplex iterations : 248008
^
0020: objective value : 12161789395
objective value : 12171761765
^
0021: erased arcs : 2991635
erased arcs : 2991537
^
0022: new implicit arcs : 2991635
new implicit arcs : 2991537
^
0024: simplex iterations : 398127
simplex iterations : 385785
^
0025: objective value : 11729854482
objective value : 11769820561
^
It appears to work fine with r254943. I'll start a bisect and post results.