aboutsummaryrefslogtreecommitdiff
path: root/gcc/ira-lives.c
diff options
context:
space:
mode:
authorVladimir Makarov <vmakarov@redhat.com>2009-10-07 17:18:38 +0000
committerVladimir Makarov <vmakarov@gcc.gnu.org>2009-10-07 17:18:38 +0000
commit7ba06dee521e57b113041ef5131b42200f0936ec (patch)
tree1ee035d86ca759272ba4a1a1727751749dfa5cf0 /gcc/ira-lives.c
parent3621d5ec1db7d5088320465877cb97082141f8e5 (diff)
downloadgcc-7ba06dee521e57b113041ef5131b42200f0936ec.zip
gcc-7ba06dee521e57b113041ef5131b42200f0936ec.tar.gz
gcc-7ba06dee521e57b113041ef5131b42200f0936ec.tar.bz2
re PR middle-end/22072 (bizarre code for int*int/2 for -Os)
2009-10-07 Vladimir Makarov <vmakarov@redhat.com> PR middle-end/22072 * ira-lives.c (check_and_make_def_conflict): Process all operands. From-SVN: r152533
Diffstat (limited to 'gcc/ira-lives.c')
-rw-r--r--gcc/ira-lives.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/ira-lives.c b/gcc/ira-lives.c
index 57a953b..822dccb 100644
--- a/gcc/ira-lives.c
+++ b/gcc/ira-lives.c
@@ -500,7 +500,7 @@ check_and_make_def_conflict (int alt, int def, enum reg_class def_cl)
for (use = 0; use < recog_data.n_operands; use++)
{
if (use == def || recog_data.operand_type[use] == OP_OUT)
- return;
+ continue;
if (recog_op_alt[use][alt].anything_ok)
use_cl = ALL_REGS;
@@ -513,7 +513,7 @@ check_and_make_def_conflict (int alt, int def, enum reg_class def_cl)
if ((use_match = recog_op_alt[use][alt].matches) >= 0)
{
if (use_match == def)
- return;
+ continue;
if (recog_op_alt[use_match][alt].anything_ok)
use_cl = ALL_REGS;