patches/gcc/4.3.6/100-alpha-mieee-default.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 22:43:07 2011 +0200 (2011-07-17)
changeset 2893 a8a65758664f
parent 2124 5dd0b83ae528
permissions -rw-r--r--
cc/gcc: do not use the core pass-2 to build the baremetal compiler

In case we build a baremetal compiler, use the standard passes:
- core_cc is used to build the C library;
- as such, it is meant to run on build, not host;
- the final compiler is meant to run on host;

As the current final compiler step can not build a baremetal compiler,
call the core backend from the final step.

NB: Currently, newlib is built during the start_files pass, so we have
to have a core compiler by then... Once we can build the baremetal
compiler from the final cc step, then we can move the newlib build to
the proper step, and then get rid of the core pass-1 static compiler...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Original patch from: ../4.3.2/100-alpha-mieee-default.patch
     2 
     3 -= BEGIN original header =-
     4 Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/00_all_gcc-4.1-alpha-mieee-default.patch
     5 Set the default behavior on alpha to use -mieee since the large majority of
     6 time we want this (bad/weird things can happen with packages built without
     7 -mieee).
     8 
     9 To satisfy those people who may not want -mieee forced on them all the time,
    10 we also provide -mno-ieee.
    11 
    12 Patch by Mike Frysinger <vapier@gentoo.org>
    13 
    14 -= END original header =-
    15 
    16 diff -durN gcc-4.3.3.orig/gcc/config/alpha/alpha.h gcc-4.3.3/gcc/config/alpha/alpha.h
    17 --- gcc-4.3.3.orig/gcc/config/alpha/alpha.h	2007-12-06 14:25:37.000000000 +0100
    18 +++ gcc-4.3.3/gcc/config/alpha/alpha.h	2009-01-27 22:19:02.000000000 +0100
    19 @@ -95,6 +95,8 @@
    20    while (0)
    21  #endif
    22  
    23 +#define CPP_SPEC "%{!no-ieee:-mieee}"
    24 +
    25  #define WORD_SWITCH_TAKES_ARG(STR)		\
    26   (!strcmp (STR, "rpath") || DEFAULT_WORD_SWITCH_TAKES_ARG(STR))
    27  
    28 diff -durN gcc-4.3.3.orig/gcc/config/alpha/alpha.opt gcc-4.3.3/gcc/config/alpha/alpha.opt
    29 --- gcc-4.3.3.orig/gcc/config/alpha/alpha.opt	2007-08-02 12:49:31.000000000 +0200
    30 +++ gcc-4.3.3/gcc/config/alpha/alpha.opt	2009-01-27 22:19:02.000000000 +0100
    31 @@ -39,7 +39,7 @@
    32  Request IEEE-conformant math library routines (OSF/1)
    33  
    34  mieee
    35 -Target Report RejectNegative Mask(IEEE)
    36 +Target Report Mask(IEEE)
    37  Emit IEEE-conformant code, without inexact exceptions
    38  
    39  mieee-with-inexact