summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99315.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99315.patch')
-rw-r--r--recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99315.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99315.patch b/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99315.patch
new file mode 100644
index 0000000000..3d5dd5f9ab
--- /dev/null
+++ b/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99315.patch
@@ -0,0 +1,57 @@
12010-08-03 Chung-Lin Tang <cltang@codesourcery.com>
2
3 Backport from mainline:
4
5 gcc/
6 2010-07-28 Chung-Lin Tang <cltang@codesourcery.com>
7 * config/arm/arm.c (arm_pcs_default): Remove static.
8 * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_PCS or
9 __ARM_PCS_VFP to indicate soft/hard-float calling convention.
10 (arm_pcs_default): Declare.
11
12 2010-07-16 Jie Zhang <jie@codesourcery.com>
13
14 Issue #7688
15
16=== modified file 'gcc/config/arm/arm.c'
17--- old/gcc/config/arm/arm.c 2010-08-02 13:42:24 +0000
18+++ new/gcc/config/arm/arm.c 2010-08-03 13:55:46 +0000
19@@ -704,7 +704,7 @@
20 /* The maximum number of insns to be used when loading a constant. */
21 static int arm_constant_limit = 3;
22
23-static enum arm_pcs arm_pcs_default;
24+enum arm_pcs arm_pcs_default;
25
26 /* For an explanation of these variables, see final_prescan_insn below. */
27 int arm_ccfsm_state;
28
29=== modified file 'gcc/config/arm/arm.h'
30--- old/gcc/config/arm/arm.h 2010-07-29 16:58:56 +0000
31+++ new/gcc/config/arm/arm.h 2010-08-03 10:40:56 +0000
32@@ -94,7 +94,13 @@
33 if (arm_arch_iwmmxt) \
34 builtin_define ("__IWMMXT__"); \
35 if (TARGET_AAPCS_BASED) \
36- builtin_define ("__ARM_EABI__"); \
37+ { \
38+ if (arm_pcs_default == ARM_PCS_AAPCS_VFP) \
39+ builtin_define ("__ARM_PCS_VFP"); \
40+ else if (arm_pcs_default == ARM_PCS_AAPCS) \
41+ builtin_define ("__ARM_PCS"); \
42+ builtin_define ("__ARM_EABI__"); \
43+ } \
44 } while (0)
45
46 /* The various ARM cores. */
47@@ -1648,6 +1654,9 @@
48 ARM_PCS_UNKNOWN
49 };
50
51+/* Default procedure calling standard of current compilation unit. */
52+extern enum arm_pcs arm_pcs_default;
53+
54 /* A C type for declaring a variable that is used as the first argument of
55 `FUNCTION_ARG' and other related values. */
56 typedef struct
57