summaryrefslogtreecommitdiff
path: root/gcc/web.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/web.c')
-rw-r--r--gcc/web.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/gcc/web.c b/gcc/web.c
index 84987df5e1f..d04e8a22890 100644
--- a/gcc/web.c
+++ b/gcc/web.c
@@ -105,22 +105,24 @@ union_defs (struct df_ref *use, struct web_entry *def_entry,
struct web_entry *use_entry,
bool (*fun) (struct web_entry *, struct web_entry *))
{
- rtx insn = DF_REF_INSN (use);
+ struct df_insn_info *insn_info = DF_REF_INSN_INFO (use);
struct df_link *link = DF_REF_CHAIN (use);
struct df_ref **use_link;
struct df_ref **eq_use_link;
struct df_ref **def_link;
rtx set;
- if (insn)
+ if (insn_info)
{
- use_link = DF_INSN_USES (insn);
- eq_use_link = DF_INSN_EQ_USES (insn);
- def_link = DF_INSN_DEFS (insn);
+ rtx insn = insn_info->insn;
+ use_link = DF_INSN_INFO_USES (insn_info);
+ eq_use_link = DF_INSN_INFO_EQ_USES (insn_info);
+ def_link = DF_INSN_INFO_DEFS (insn_info);
set = single_set (insn);
}
else
{
+ /* An artificial use. It links up with nothing. */
use_link = NULL;
eq_use_link = NULL;
def_link = NULL;
@@ -180,8 +182,8 @@ union_defs (struct df_ref *use, struct web_entry *def_entry,
{
struct df_ref **link;
- if (DF_REF_INSN (use))
- link = DF_INSN_DEFS (DF_REF_INSN (use));
+ if (insn_info)
+ link = DF_INSN_INFO_DEFS (insn_info);
else
link = NULL;