Lines Matching defs:pbb

63 isl_id_for_pbb (scop_p s, poly_bb_p pbb)
66 snprintf (name, sizeof (name), "S_%d", pbb_index (pbb));
67 return isl_id_alloc (s->isl_context, name, pbb);
326 create_pw_aff_from_tree (poly_bb_p pbb, loop_p loop, tree t)
328 scop_p scop = PBB_SCOP (pbb);
335 return extract_affine (scop, t, isl_set_get_space (pbb->domain));
338 /* Add conditional statement STMT to pbb. CODE is used as the comparison
343 add_condition_to_pbb (poly_bb_p pbb, gcond *stmt, enum tree_code code)
346 isl_pw_aff *lhs = create_pw_aff_from_tree (pbb, loop, gimple_cond_lhs (stmt));
347 isl_pw_aff *rhs = create_pw_aff_from_tree (pbb, loop, gimple_cond_rhs (stmt));
381 cond = isl_set_set_tuple_id (cond, isl_set_get_tuple_id (pbb->domain));
382 pbb->domain = isl_set_coalesce (isl_set_intersect (pbb->domain, cond));
388 add_conditions_to_domain (poly_bb_p pbb)
392 gimple_poly_bb_p gbb = PBB_BLACK_BOX (pbb);
413 add_condition_to_pbb (pbb, cond_stmt, code);
511 poly_bb_p pbb = dri.pbb;
513 scop_p scop = PBB_SCOP (pbb);
617 poly_bb_p pbb = dri.pbb;
619 scop_p scop = PBB_SCOP (pbb);
623 isl_space *dc = isl_set_get_space (pbb->domain);
646 new_poly_dr (pbb, DR_STMT (dr), DR_IS_READ (dr) ? PDR_READ : PDR_WRITE,
651 build_poly_sr_1 (poly_bb_p pbb, gimple *stmt, tree var, enum poly_dr_type kind,
654 scop_p scop = PBB_SCOP (pbb);
668 new_poly_dr (pbb, stmt, kind, isl_map_add_constraint (acc, c),
675 build_poly_sr (poly_bb_p pbb)
677 scop_p scop = PBB_SCOP (pbb);
678 gimple_poly_bb_p gbb = PBB_BLACK_BOX (pbb);
682 isl_space *dc = isl_set_get_space (pbb->domain);
695 build_poly_sr_1 (pbb, SSA_NAME_DEF_STMT (var), var, PDR_WRITE,
700 build_poly_sr_1 (pbb, use->first, use->second, PDR_READ, isl_map_copy (acc),
717 poly_bb_p pbb;
718 FOR_EACH_VEC_ELT (scop->pbbs, i, pbb)
719 build_poly_sr (pbb);
841 /* Builds the original iteration domains for each pbb in the SCOP. */
853 poly_bb_p pbb;
854 FOR_EACH_VEC_ELT_FROM (scop->pbbs, i, pbb, index)
856 loop_p loop = pbb_loop (pbb);
859 pbb->iterators = isl_set_copy (domain);
860 pbb->domain = isl_set_copy (domain);
861 pbb->domain = isl_set_set_tuple_id (pbb->domain,
862 isl_id_for_pbb (scop, pbb));
863 add_conditions_to_domain (pbb);
868 pbb_index (pbb));
931 /* Return the index of any pbb belonging to loop or a subloop of A. */
938 poly_bb_p pbb;
939 FOR_EACH_VEC_ELT (scop->pbbs, i, pbb)
940 if (nested_in (pbb_loop (pbb), a)
942 || last_depth > (int) loop_depth (pbb_loop (pbb))))
945 last_depth = loop_depth (pbb_loop (pbb));
950 /* Return the index of any pbb belonging to loop or a subloop of A. */
956 poly_bb_p pbb;
957 FOR_EACH_VEC_ELT (scop->pbbs, i, pbb)
958 if (pbb_loop (pbb) == a)
1038 poly_bb_p pbb = outermost_pbb_in (loop, scop);
1039 isl_set *iterators = pbb->iterators;
1056 loop_p ploop = pbb_loop (pbb);
1078 /* Build schedule for the pbb at INDEX. */
1083 poly_bb_p pbb = scop->pbbs[*index];
1085 isl_set *domain = isl_set_copy (pbb->domain);
1092 /* Build the schedule of the loop containing the SCOP pbb at INDEX. */
1158 /* Build schedule for the full loop nest containing the pbb at INDEX. When
1160 surrounding the pbb. When CONTEXT_LOOP is non null, only build the maximal loop
1182 poly_bb_p pbb = scop->pbbs[i];
1184 if (!loop_in_sese_p (pbb_loop (pbb), scop->scop_info->region))