/* These fields are used by bb-reorder pass. */
int visited;
-} *reorder_block_def;
+} *reorder_block_def_p;
#define BB_FREQ_MAX 10000
extern int n_edges;
+/* Signalize the status of profile information in the CFG. */
+extern enum profile_status
+{
+ PROFILE_ABSENT,
+ PROFILE_GUESSED,
+ PROFILE_READ
+} profile_status;
+
/* Index by basic block number, get basic block struct info. */
extern GTY(()) varray_type basic_block_info;
extern bool control_flow_insn_p (rtx);
/* In bb-reorder.c */
-extern void reorder_basic_blocks (void);
+extern void reorder_basic_blocks (unsigned int);
extern void partition_hot_cold_basic_blocks (void);
/* In cfg.c */
extern basic_block next_dom_son (enum cdi_direction, basic_block);
extern edge try_redirect_by_replacing_jump (edge, basic_block, bool);
extern void break_superblocks (void);
+extern void check_bb_profile (basic_block, FILE *);
#include "cfghooks.h"