patches/gcc/4.3.4/230-pr34571.patch
author Bryan Hundven <bryanhundven@gmail.com>
Thu Dec 09 18:55:59 2010 +0100 (2010-12-09)
changeset 2212 a2f4986779bf
permissions -rw-r--r--
cc/gcc: build bare-metal gcc statically

- add a new parameter to do_cc_core: build_statically=[yes|no]
- pass build_statically=yes in core_pass_2 when doing bare_metal
- fix handling the static / static libstdc++ / static complibs stuff
- add a commment to keep both blocks (in core and final) in sync

Signed-off-by: "Bryan Hundven" <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
thomas@1461
     1
Original patch from: ../4.3.2/230-pr34571.patch
thomas@1461
     2
thomas@1461
     3
-= BEGIN original header =-
thomas@1461
     4
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/64_all_gcc43-pr34571.patch
thomas@1461
     5
http://gcc.gnu.org/PR34571
thomas@1461
     6
thomas@1461
     7
2007-12-26  Rask Ingemann Lambertsen  <rask@sygehus.dk>
thomas@1461
     8
thomas@1461
     9
	PR target/34571
thomas@1461
    10
	* config/alpha/alpha.c (alpha_cannot_force_const_mem): Use
thomas@1461
    11
	symbolic_operand.
thomas@1461
    12
	* varasm.c (output_constant_pool_1): Fix typo.
thomas@1461
    13
thomas@1461
    14
-= END original header =-
thomas@1461
    15
thomas@1461
    16
diff -durN gcc-4.3.3.orig/gcc/config/alpha/alpha.c gcc-4.3.3/gcc/config/alpha/alpha.c
thomas@1461
    17
--- gcc-4.3.3.orig/gcc/config/alpha/alpha.c	2008-09-09 01:16:55.000000000 +0200
thomas@1461
    18
+++ gcc-4.3.3/gcc/config/alpha/alpha.c	2009-01-27 22:25:29.000000000 +0100
thomas@1461
    19
@@ -1113,8 +1113,7 @@
thomas@1461
    20
 static bool
thomas@1461
    21
 alpha_cannot_force_const_mem (rtx x)
thomas@1461
    22
 {
thomas@1461
    23
-  enum rtx_code code = GET_CODE (x);
thomas@1461
    24
-  return code == SYMBOL_REF || code == LABEL_REF || code == CONST;
thomas@1461
    25
+  return symbolic_operand (x, GET_MODE (x));
thomas@1461
    26
 }
thomas@1461
    27
 
thomas@1461
    28
 /* We do not allow indirect calls to be optimized into sibling calls, nor