OSDN Git Service

2009-10-07 Vladimir Makarov <vmakarov@redhat.com>
authorvmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 7 Oct 2009 17:18:38 +0000 (17:18 +0000)
committervmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 7 Oct 2009 17:18:38 +0000 (17:18 +0000)
PR middle-end/22072
* ira-lives.c (check_and_make_def_conflict): Process all operands.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152533 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/ira-lives.c

index 213f4b6..cf0d248 100644 (file)
@@ -1,3 +1,8 @@
+2009-10-07  Vladimir Makarov  <vmakarov@redhat.com>
+
+       PR middle-end/22072
+       * ira-lives.c (check_and_make_def_conflict): Process all operands.
+
 2009-10-06  Jan Hubicka  <jh@suse.cz>
 
        * cgraph.c (cgraph_node_can_be_local): Handle externally visible nodes
index 57a953b..822dccb 100644 (file)
@@ -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;