On May 10, 2013, at 3:29 PM, Steven Bosscher <[email protected]> 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 <[email protected]> * 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; } --------------
