gcc_4.5.1: add pr45886.patch
Add fix for PR45886 as proposed in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45886 (From OE-Core rev: d639fad9ce510e0a1c64c66bbda48b4a2436327b) Signed-off-by: Ilya Yanok <yanok@emcraft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
eb83c44761
commit
ef2c0ef14c
|
@ -63,6 +63,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
|
|||
file://pr44606.patch \
|
||||
file://pr45094.patch \
|
||||
file://pr45052.patch \
|
||||
file://pr45886.patch \
|
||||
"
|
||||
|
||||
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
From d066d0682da4e60b811d9282b00128244caa5c29 Mon Sep 17 00:00:00 2001
|
||||
From: Ilya Yanok <yanok@emcraft.com>
|
||||
Date: Mon, 21 Mar 2011 00:55:25 +0100
|
||||
Subject: [PATCH 6/6] PR45886
|
||||
|
||||
---
|
||||
gcc/config/arm/arm.c | 2 +-
|
||||
gcc/config/arm/arm.h | 11 ++++++++++-
|
||||
2 files changed, 11 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
|
||||
index 0382b24..5634829 100644
|
||||
--- a/gcc/config/arm/arm.c
|
||||
+++ b/gcc/config/arm/arm.c
|
||||
@@ -700,7 +700,7 @@ static int after_arm_reorg = 0;
|
||||
/* The maximum number of insns to be used when loading a constant. */
|
||||
static int arm_constant_limit = 3;
|
||||
|
||||
-static enum arm_pcs arm_pcs_default;
|
||||
+enum arm_pcs arm_pcs_default;
|
||||
|
||||
/* For an explanation of these variables, see final_prescan_insn below. */
|
||||
int arm_ccfsm_state;
|
||||
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
|
||||
index 26ffaf8..ac7bbb3 100644
|
||||
--- a/gcc/config/arm/arm.h
|
||||
+++ b/gcc/config/arm/arm.h
|
||||
@@ -94,7 +94,13 @@ extern char arm_arch_name[];
|
||||
if (arm_arch_iwmmxt) \
|
||||
builtin_define ("__IWMMXT__"); \
|
||||
if (TARGET_AAPCS_BASED) \
|
||||
- builtin_define ("__ARM_EABI__"); \
|
||||
+ { \
|
||||
+ if (arm_pcs_default == ARM_PCS_AAPCS_VFP) \
|
||||
+ builtin_define ("__ARM_PCS_VFP"); \
|
||||
+ else if (arm_pcs_default == ARM_PCS_AAPCS) \
|
||||
+ builtin_define ("__ARM_PCS"); \
|
||||
+ builtin_define ("__ARM_EABI__"); \
|
||||
+ } \
|
||||
} while (0)
|
||||
|
||||
/* The various ARM cores. */
|
||||
@@ -1648,6 +1654,9 @@ enum arm_pcs
|
||||
ARM_PCS_UNKNOWN
|
||||
};
|
||||
|
||||
+/* Default procedure calling standard of current compilation unit. */
|
||||
+extern enum arm_pcs arm_pcs_default;
|
||||
+
|
||||
/* A C type for declaring a variable that is used as the first argument of
|
||||
`FUNCTION_ARG' and other related values. */
|
||||
typedef struct
|
||||
--
|
||||
1.7.4
|
||||
|
Loading…
Reference in New Issue