diff options
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r-- | gcc/rtl.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h index d27b4e5b833..de9386df210 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -317,7 +317,7 @@ enum reg_note { REG_DEAD = 1, REG_INC = 2, REG_EQUIV = 3, REG_WAS_0 = 4, REG_NONNEG = 8, REG_NO_CONFLICT = 9, REG_UNUSED = 10, REG_CC_SETTER = 11, REG_CC_USER = 12, REG_LABEL = 13, REG_DEP_ANTI = 14, REG_DEP_OUTPUT = 15, REG_BR_PROB = 16, - REG_EXEC_COUNT = 17 }; + REG_EXEC_COUNT = 17, REG_NOALIAS = 18 }; /* The base value for branch probability notes. */ #define REG_BR_PROB_BASE 10000 @@ -803,6 +803,16 @@ extern rtx gen_ble PROTO((rtx)); extern rtx eliminate_constant_term PROTO((rtx, rtx *)); extern rtx expand_complex_abs PROTO((enum machine_mode, rtx, rtx, int)); extern enum machine_mode choose_hard_reg_mode PROTO((int, int)); +extern int rtx_varies_p PROTO((rtx)); +extern int may_trap_p PROTO((rtx)); +extern int side_effects_p PROTO((rtx)); +extern int volatile_refs_p PROTO((rtx)); +extern int volatile_insn_p PROTO((rtx)); +extern void remove_note PROTO((rtx, rtx)); +extern void note_stores PROTO((rtx, void (*)())); +extern int refers_to_regno_p PROTO((int, int, rtx, rtx *)); +extern int reg_overlap_mentioned_p PROTO((rtx, rtx)); + /* Maximum number of parallel sets and clobbers in any insn in this fn. Always at least 3, since the combiner could put that many togetherm @@ -959,3 +969,12 @@ extern char *regno_pointer_align; know what `enum tree_code' means. */ extern int rtx_to_tree_code PROTO((enum rtx_code)); + +extern int true_dependence PROTO((rtx, enum machine_mode, rtx, int (*)())); +extern int read_dependence PROTO((rtx, rtx)); +extern int anti_dependence PROTO((rtx, rtx)); +extern int output_dependence PROTO((rtx, rtx)); +extern void init_alias_analysis PROTO((void)); +extern void end_alias_analysis PROTO((void)); +extern void mark_user_reg PROTO((rtx)); +extern void mark_reg_pointer PROTO((rtx, int)); |