Stop reload1.c warning from breaking bootstrap
authorRichard Sandiford <richard.sandiford@arm.com>
Thu, 10 Sep 2015 19:17:24 +0000 (19:17 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Thu, 10 Sep 2015 19:17:24 +0000 (19:17 +0000)
commit4711983f43bd4f40e5b58f288afcd3ad844e241b
tree8f54e2e1ba1c7ef0538e010751160b6e6f90dc77
parentec23e5b3950ab5a907aecdb0860340b86702ed13
Stop reload1.c warning from breaking bootstrap

Some host-target combinations get bogus warnings about orig_dup
being used uninitialized.  I tried to coerce the current uninit
pass to handle this case, but the patch I ended up with only worked
by accident because of the strange way in which the pass handles
limit cases.  (If we have more than MAX_NUM_CHAINS chains, it silently
drops the excess chains and continues regardless, so it's quite easy
to come up with cases where the predicates for either the definition
or the use consider an arbitrary subset of the actual conditions.)

For now this patch turns -Wmaybe-uninitialized into a warning for
the affacted function.  It will be a warning even if someone turns
off warnings on the command line, but I don't think that's important.

Bootstrapped and regression-tested on x86_64-linux-gnu.  Also tested
with a cross-compiler to sparc-linux-gnu (which also triggered the
warning for me).

gcc/
* reload1.c (elimination_costs_in_insn): Locally turn
-Wmaybe-uninitialized into a warning.

From-SVN: r227658
gcc/ChangeLog
gcc/reload1.c