static void print_graphite_scop_statistics (FILE* file, scop_p scop) { long n_bbs = 0; long n_loops = 0; long n_stmts = 0; long n_conditions = 0; long n_p_bbs = 0; long n_p_loops = 0; long n_p_stmts = 0; long n_p_conditions = 0; basic_block bb; FOR_ALL_BB (bb) { gimple_stmt_iterator psi; loop_p loop = bb->loop_father; if (!bb_in_sese_p (bb, SCOP_REGION (scop))) continue; n_bbs++; n_p_bbs += bb->count; if (EDGE_COUNT (bb->succs) > 1) { n_conditions++; n_p_conditions += bb->count; } for (psi = gsi_start_bb (bb); !gsi_end_p (psi); gsi_next (&psi)) { n_stmts++; n_p_stmts += bb->count; } if (loop->header == bb && loop_in_sese_p (loop, SCOP_REGION (scop))) { n_loops++; n_p_loops += bb->count; } } fprintf (file, "\nSCoP statistics ("); fprintf (file, "BBS:%ld, ", n_bbs); fprintf (file, "LOOPS:%ld, ", n_loops); fprintf (file, "CONDITIONS:%ld, ", n_conditions); fprintf (file, "STMTS:%ld)\n", n_stmts); fprintf (file, "\nSCoP profiling statistics ("); fprintf (file, "BBS:%ld, ", n_p_bbs); fprintf (file, "LOOPS:%ld, ", n_p_loops); fprintf (file, "CONDITIONS:%ld, ", n_p_conditions); fprintf (file, "STMTS:%ld)\n", n_p_stmts); }
static inline tree pbb_to_depth_to_oldiv (poly_bb_p pbb, int depth) { gimple_bb_p gbb = PBB_BLACK_BOX (pbb); sese region = SCOP_REGION (PBB_SCOP (pbb)); loop_p loop = gbb_loop_at_index (gbb, region, depth); return (tree) loop->aux; }