diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2013-05-02 19:02:19 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2013-05-02 19:02:19 +0000 |
commit | f15feaf95fd95c6fe2756f97aa01cc6f9c778b6c (patch) | |
tree | 32a80d4246433f266e38d26a75f0cbdb96cdba4b /gcc | |
parent | d90e76d4e1e07d5285b7f5869922fa4d1b65cc32 (diff) | |
download | gcc-f15feaf95fd95c6fe2756f97aa01cc6f9c778b6c.zip gcc-f15feaf95fd95c6fe2756f97aa01cc6f9c778b6c.tar.gz gcc-f15feaf95fd95c6fe2756f97aa01cc6f9c778b6c.tar.bz2 |
lra-constraints.c (process_alt_operands): Add checking alt number to choose the best alternative.
2013-05-02 Vladimir Makarov <vmakarov@redhat.com>
* lra-constraints.c (process_alt_operands): Add checking alt
number to choose the best alternative.
From-SVN: r198558
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/lra-constraints.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9e3d783..b94a74b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-05-02 Vladimir Makarov <vmakarov@redhat.com> + + * lra-constraints.c (process_alt_operands): Add checking alt + number to choose the best alternative. + 2013-05-02 Richard Biener <rguenther@suse.de> * tree-eh.c (cleanup_empty_eh_merge_phis): Remove rename_virts diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c index 94f965bd..4e73611 100644 --- a/gcc/lra-constraints.c +++ b/gcc/lra-constraints.c @@ -2197,7 +2197,9 @@ process_alt_operands (int only_alternative) number of reload regs. */ && (reload_nregs < best_reload_nregs || (reload_nregs == best_reload_nregs - && best_reload_sum < reload_sum)))))) + && (best_reload_sum < reload_sum + || (best_reload_sum == reload_sum + && nalt < goal_alt_number)))))))) { for (nop = 0; nop < n_operands; nop++) { |