On May 10, 2013, at 3:29 PM, Steven Bosscher <stevenb....@gmail.com> wrote:
> Your web.c patch looks correct to me, but I can't approve it.

Thanks.  Now that you point out the DF accessor, it all makes perfect sense.  
:-)  I've fixed one other instance that has to be as wrong for all the same 
reasons.  Though my port doesn't trip the other case from the test suite, if my 
port used an IN/OUT, I bet I could make it trip it.

Ok?

2013-05-10  Mike Stump  <mikest...@comcast.net>

        * web.c (union_match_dups): Use DF_REF_REAL_LOC instead.

Doing diffs in web.c.~1~:
--- web.c.~1~   2013-01-14 10:39:36.000000000 -0800
+++ web.c       2013-05-10 15:45:02.000000000 -0700
@@ -132,13 +132,13 @@ union_match_dups (rtx insn, struct web_e
       ref = type == OP_IN ? use_link : def_link;
       entry = type == OP_IN ? use_entry : def_entry;
       for (; *ref; ref++)
-       if (DF_REF_LOC (*ref) == recog_data.operand_loc[op])
+       if (DF_REF_REAL_LOC (*ref) == recog_data.operand_loc[op])
          break;
 
       if (!*ref && type == OP_INOUT)
        {
          for (ref = use_link, entry = use_entry; *ref; ref++)
-           if (DF_REF_LOC (*ref) == recog_data.operand_loc[op])
+           if (DF_REF_REAL_LOC (*ref) == recog_data.operand_loc[op])
              break;
        }
 
--------------


Reply via email to