patches/gcc/4.3.3/100-alpha-mieee-default.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 22:46:47 2011 +0200 (2011-07-17)
changeset 2892 aa934ec4b4ee
permissions -rw-r--r--
cc/gcc: add the backend/frontend infra for final gcc

Currently, we issue the bare-metal compiler from the pass_1 & pass_2
core compilers, because the final gcc breaks while doing so.

This implies we have to build some libces during the start_files step,
instead of the standard libc step. This is the case for newlib.

By adding a backend/frontend infra to the final gcc, we can abstract
what backend to call: the standard backend for non-bare-metal gcc,
and the core backend for bare-metal.

This patch is just an no-op, it just adds the final backend and
frontend without changing the way bare-metal is built, to come in a
subsequent patch.

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