diff options
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r-- | gcc/rtl.h | 41 |
1 files changed, 32 insertions, 9 deletions
@@ -1774,8 +1774,20 @@ extern int replace_label (rtx *, void *); extern int rtx_referenced_p (rtx, rtx); extern bool tablejump_p (const_rtx, rtx *, rtx *); extern int computed_jump_p (const_rtx); + typedef int (*rtx_function) (rtx *, void *); extern int for_each_rtx (rtx *, rtx_function, void *); + +typedef int (*rtx_equal_p_callback_function) (const_rtx *, const_rtx *, + rtx *, rtx *); +extern int rtx_equal_p_cb (const_rtx, const_rtx, + rtx_equal_p_callback_function); + +typedef int (*hash_rtx_callback_function) (const_rtx, enum machine_mode, rtx *, + enum machine_mode *); +extern unsigned hash_rtx_cb (const_rtx, enum machine_mode, int *, int *, + bool, hash_rtx_callback_function); + extern rtx regno_use_in (unsigned int, rtx); extern int auto_inc_p (const_rtx); extern int in_expr_list_p (const_rtx, const_rtx); @@ -1796,14 +1808,17 @@ extern rtx get_condition (rtx, rtx *, int, int); /* lists.c */ -void free_EXPR_LIST_list (rtx *); -void free_INSN_LIST_list (rtx *); -void free_EXPR_LIST_node (rtx); -void free_INSN_LIST_node (rtx); -rtx alloc_INSN_LIST (rtx, rtx); -rtx alloc_EXPR_LIST (int, rtx, rtx); -void remove_free_INSN_LIST_elem (rtx, rtx *); -rtx remove_list_elem (rtx, rtx *); +extern void free_EXPR_LIST_list (rtx *); +extern void free_INSN_LIST_list (rtx *); +extern void free_EXPR_LIST_node (rtx); +extern void free_INSN_LIST_node (rtx); +extern rtx alloc_INSN_LIST (rtx, rtx); +extern rtx alloc_EXPR_LIST (int, rtx, rtx); +extern void remove_free_INSN_LIST_elem (rtx, rtx *); +extern rtx remove_list_elem (rtx, rtx *); +extern rtx remove_free_INSN_LIST_node (rtx *); +extern rtx remove_free_EXPR_LIST_node (rtx *); + /* regclass.c */ @@ -2133,7 +2148,9 @@ extern void dump_combine_total_stats (FILE *); extern void delete_dead_jumptables (void); /* In sched-vis.c. */ -extern void print_insn (char *, rtx, int); +extern void debug_bb_n_slim (int); +extern void debug_bb_slim (struct basic_block_def *); +extern void print_rtl_slim (FILE *, rtx, rtx, int, int); extern void print_rtl_slim_with_bb (FILE *, rtx, int); extern void dump_insn_slim (FILE *f, rtx x); extern void debug_insn_slim (rtx x); @@ -2147,6 +2164,9 @@ extern void schedule_ebbs (void); /* In haifa-sched.c. */ extern void fix_sched_param (const char *, const char *); +/* In sel-sched-dump.c. */ +extern void sel_sched_fix_param (const char *param, const char *val); + /* In print-rtl.c */ extern const char *print_rtx_head; extern void debug_rtx (const_rtx); @@ -2311,6 +2331,9 @@ extern rtx compare_and_jump_seq (rtx, rtx, enum rtx_code, rtx, int, rtx); /* In loop-iv.c */ extern rtx canon_condition (rtx); extern void simplify_using_condition (rtx, rtx *, struct bitmap_head_def *); + +/* In final.c */ +extern unsigned int compute_alignments (void); struct rtl_hooks { |