https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68716
Bug ID: 68716 Summary: libgomp c.exp with -fipa-pta failures Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: vries at gcc dot gnu.org Target Milestone: --- When running libgomp c.exp with -fipa-pta, we run into the following failures: ... FAIL: libgomp.c/linear-1.c execution test FAIL: libgomp.c/omp-nested-1.c execution test FAIL: libgomp.c/pr32362-1.c execution test FAIL: libgomp.c/pr32362-2.c execution test FAIL: libgomp.c/pr32362-3.c execution test FAIL: libgomp.c/pr35549.c execution test FAIL: libgomp.c/pr36802-2.c execution test FAIL: libgomp.c/pr36802-3.c execution test FAIL: libgomp.c/reduction-10.c execution test FAIL: libgomp.c/reduction-11.c execution test FAIL: libgomp.c/reduction-12.c execution test FAIL: libgomp.c/reduction-7.c execution test FAIL: libgomp.c/reduction-8.c execution test FAIL: libgomp.c/reduction-9.c execution test ... I've investigated the libgomp.c/omp-nested-1.c failure, and found that the problem was missing clobbers on a function call after -fipa-pta. Adding this bit (that was part of the original PR46032 patch: https://gcc.gnu.org/ml/gcc-patches/2015-11/msg03448.html, but dropped here: https://gcc.gnu.org/ml/gcc-patches/2015-11/msg03471.html) fixes the failures: ... + /* The caller clobbers what the callee does. */ + lhs = get_function_part_constraint (fi, fi_clobbers); + rhs = get_function_part_constraint (cfi, fi_clobbers); + process_constraint (new_constraint (lhs, rhs)); ...