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