patches/gcc/3.4.6/180-pr15068-fix.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed May 18 23:00:46 2011 +0200 (2011-05-18)
changeset 2467 200836977ce6
parent 339 bd5e0a849352
permissions -rw-r--r--
config: rename variables that are arrays

Make it explicit that a variable is an array bu the name of the variable.
It will be used later when .config gets munged to allow both multiple
arguments and arguments with spaces at the same time to be passed from the
configuration down to the build scripts.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 diff -durN gcc-3.4.6.orig/gcc/flow.c gcc-3.4.6/gcc/flow.c
     2 --- gcc-3.4.6.orig/gcc/flow.c	2005-09-01 22:51:09.000000000 +0200
     3 +++ gcc-3.4.6/gcc/flow.c	2007-08-15 23:00:30.000000000 +0200
     4 @@ -1884,6 +1884,7 @@
     5  	  rtx set_src = SET_SRC (pc_set (BB_END (bb)));
     6  	  rtx cond_true = XEXP (set_src, 0);
     7  	  rtx reg = XEXP (cond_true, 0);
     8 + 	  enum rtx_code inv_cond;
     9  
    10  	  if (GET_CODE (reg) == SUBREG)
    11  	    reg = SUBREG_REG (reg);
    12 @@ -1892,11 +1893,13 @@
    13  	     in the form of a comparison of a register against zero.  
    14  	     If the condition is more complex than that, then it is safe
    15  	     not to record any information.  */
    16 -	  if (GET_CODE (reg) == REG
    17 + 	  inv_cond = reversed_comparison_code (cond_true, BB_END (bb));
    18 + 	  if (inv_cond != UNKNOWN
    19 +	      && GET_CODE (reg) == REG
    20  	      && XEXP (cond_true, 1) == const0_rtx)
    21  	    {
    22  	      rtx cond_false
    23 -		= gen_rtx_fmt_ee (reverse_condition (GET_CODE (cond_true)),
    24 +		= gen_rtx_fmt_ee (inv_cond,
    25  				  GET_MODE (cond_true), XEXP (cond_true, 0),
    26  				  XEXP (cond_true, 1));
    27  	      if (GET_CODE (XEXP (set_src, 1)) == PC)