diff options
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/bb-reorder.c | 2 | ||||
| -rw-r--r-- | gcc/predict.c | 13 | 
3 files changed, 7 insertions, 14 deletions
| diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4ef384..70060177 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Fri May  5 10:11:41 2000  Jeffrey A Law  (law@cygnus.com) + +	* predict.c: Remove May 4 change. +	* bb-reorder.c (make_reorder_chain): Do not perform block movement +	if we have predicted the branch at 50-50 probability. +  2000-05-05  Richard Henderson  <rth@cygnus.com>  	* flow.c (init_propagate_block_info): Fix merge error diff --git a/gcc/bb-reorder.c b/gcc/bb-reorder.c index 83c2845..c0c808a 100644 --- a/gcc/bb-reorder.c +++ b/gcc/bb-reorder.c @@ -478,7 +478,7 @@ make_reorder_chain (bb)        else  	probability = 0; -      if (probability >= REG_BR_PROB_BASE / 2) +      if (probability > REG_BR_PROB_BASE / 2)  	e = bb->succ->succ_next;      } diff --git a/gcc/predict.c b/gcc/predict.c index 148d46b..b957e5f6 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -202,19 +202,6 @@ estimate_probability (loops_info)  	  break;  	} -      /* If one of the blocks already directly follows the current -	 block, then predict it as the taken path.  This reduces -	 random block movement.  */ -      for (e = BASIC_BLOCK (i)->succ; e; e = e->succ_next) -        if (e->dest->index == i + 1) -          { -            if (e->flags & EDGE_FALLTHRU) -              prob = 0; -            else -              prob = REG_BR_PROB_BASE; -            goto emitnote; -          } -        /* If we havn't chosen something by now, predict 50-50.  */        prob = REG_BR_PROB_BASE / 2; | 
