diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2014-01-31 23:56:46 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2014-01-31 23:56:46 +0000 |
commit | 6334f3e99b0e24cdddf6dc6c72c4ce970791c1af (patch) | |
tree | 5e5480a634f05c28a3cab0845eb268ed9a4f6156 /gcc/lra-constraints.c | |
parent | eecd8b7c00ff2770b9899cb9c9de1addebdb6415 (diff) | |
download | gcc-6334f3e99b0e24cdddf6dc6c72c4ce970791c1af.zip gcc-6334f3e99b0e24cdddf6dc6c72c4ce970791c1af.tar.gz gcc-6334f3e99b0e24cdddf6dc6c72c4ce970791c1af.tar.bz2 |
re PR bootstrap/59985 (stage2/3 compare error on lto-streamer-in.o)
2014-01-31 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/59985
* lra-constraints.c (process_alt_operands): Update reload_sum only
on the first pass.
2014-01-31 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/59985
* gcc.target/arm/pr59985.C: New.
From-SVN: r207375
Diffstat (limited to 'gcc/lra-constraints.c')
-rw-r--r-- | gcc/lra-constraints.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c index cb64ee1..ada1baf 100644 --- a/gcc/lra-constraints.c +++ b/gcc/lra-constraints.c @@ -2178,7 +2178,11 @@ process_alt_operands (int only_alternative) (operand_reg[nop])] .last_reload); - if (last_reload > bb_reload_num) + /* The value of reload_sum has sense only if we + process insns in their order. It happens only on + the first constraints sub-pass when we do most of + reload work. */ + if (lra_constraint_iter == 1 && last_reload > bb_reload_num) reload_sum += last_reload - bb_reload_num; } /* If this is a constant that is reloaded into the |