diff options
Diffstat (limited to 'gcc/df.h')
-rw-r--r-- | gcc/df.h | 19 |
1 files changed, 19 insertions, 0 deletions
@@ -593,4 +593,23 @@ extern void df_hard_reg_init (void); extern bool df_read_modify_subreg_p (rtx); +/* web */ + +/* This entry is allocated for each reference in the insn stream. */ +struct web_entry +{ + /* Pointer to the parent in the union/find tree. */ + struct web_entry *pred; + /* Newly assigned register to the entry. Set only for roots. */ + rtx reg; + void* extra_info; +}; + +extern struct web_entry *unionfind_root (struct web_entry *); +extern bool unionfind_union (struct web_entry *, struct web_entry *); +extern void union_defs (struct df *, struct df_ref *, + struct web_entry *, struct web_entry *, + bool (*fun) (struct web_entry *, struct web_entry *)); + + #endif /* GCC_DF_H */ |