+2005-12-11 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+
+ * tree-flow.h: Allow compilation with a C++ compiler.
+ (struct edge_prediction): Prefix all field names with "ep_".
+ * predict.c (tree_predicted_by_p): Likewise for struct edge_prediction.
+ (tree_predict_edge, combine_predictions_for_bb): Likewise.
+ (remove_predictions_associated_with_edge): Likewise.
+
2005-12-12 Jeff Law <law@redhat.com>
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Remove
tree_predicted_by_p (basic_block bb, enum br_predictor predictor)
{
struct edge_prediction *i;
- for (i = bb->predictions; i; i = i->next)
- if (i->predictor == predictor)
+ for (i = bb->predictions; i; i = i->ep_next)
+ if (i->ep_predictor == predictor)
return true;
return false;
}
{
struct edge_prediction *i = ggc_alloc (sizeof (struct edge_prediction));
- i->next = e->src->predictions;
+ i->ep_next = e->src->predictions;
e->src->predictions = i;
- i->probability = probability;
- i->predictor = predictor;
- i->edge = e;
+ i->ep_probability = probability;
+ i->ep_predictor = predictor;
+ i->ep_edge = e;
}
}
struct edge_prediction **prediction = &e->src->predictions;
while (*prediction)
{
- if ((*prediction)->edge == e)
- *prediction = (*prediction)->next;
+ if ((*prediction)->ep_edge == e)
+ *prediction = (*prediction)->ep_next;
else
- prediction = &((*prediction)->next);
+ prediction = &((*prediction)->ep_next);
}
}
}
/* We implement "first match" heuristics and use probability guessed
by predictor with smallest index. */
- for (pred = bb->predictions; pred; pred = pred->next)
+ for (pred = bb->predictions; pred; pred = pred->ep_next)
{
- int predictor = pred->predictor;
- int probability = pred->probability;
+ int predictor = pred->ep_predictor;
+ int probability = pred->ep_probability;
- if (pred->edge != first)
+ if (pred->ep_edge != first)
probability = REG_BR_PROB_BASE - probability;
found = true;
combined_probability = best_probability;
dump_prediction (file, PRED_COMBINED, combined_probability, bb, true);
- for (pred = bb->predictions; pred; pred = pred->next)
+ for (pred = bb->predictions; pred; pred = pred->ep_next)
{
- int predictor = pred->predictor;
- int probability = pred->probability;
+ int predictor = pred->ep_predictor;
+ int probability = pred->ep_probability;
- if (pred->edge != EDGE_SUCC (bb, 0))
+ if (pred->ep_edge != EDGE_SUCC (bb, 0))
probability = REG_BR_PROB_BASE - probability;
dump_prediction (file, predictor, probability, bb,
!first_match || best_predictor == predictor);
/*---------------------------------------------------------------------------
Structure representing predictions in tree level.
---------------------------------------------------------------------------*/
-struct edge_prediction GTY((chain_next ("%h.next")))
+struct edge_prediction GTY((chain_next ("%h.ep_next")))
{
- struct edge_prediction *next;
- edge edge;
- enum br_predictor predictor;
- int probability;
+ struct edge_prediction *ep_next;
+ edge ep_edge;
+ enum br_predictor ep_predictor;
+ int ep_probability;
};
/* Accessors for basic block annotations. */