patches/gcc/3.4.6/180-pr15068-fix.patch
author Remy Bohmer <linux@bohmer.net>
Thu May 27 23:18:19 2010 +0200 (2010-05-27)
changeset 2060 51e4597b07fc
parent 339 bd5e0a849352
permissions -rw-r--r--
scripts: add option to strip all toolchain executables

To reduce filesizes of the toolchain and even improve build times
of projects to be build with this toolchain it is usefull to strip
the delivered toolchain executables. Since it is not likely that we
will debug the toolchain executables itself we do not need the
debug information inside the executables itself.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
     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)