summaryrefslogtreecommitdiff
path: root/patches/gcc/4.4.1/360-arm-bigendian.patch
blob: f0f10aaf1e1cb3c6622584d87506ee817d816477 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
By Lennert Buytenhek <buytenh@wantstofly.org>
Adds support for arm*b-linux* big-endian ARM targets

See http://gcc.gnu.org/PR16350

--- gcc-4.4.2.orig/gcc/config/arm/linux-elf.h	2009-02-20 16:20:38.000000000 +0100
+++ gcc-4.4.2/gcc/config/arm/linux-elf.h	2009-12-31 14:19:20.000000000 +0100
@@ -51,7 +51,7 @@
 
 #undef  MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS \
-	{ "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
+	{ "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" }
 
 /* Now we define the strings used to build the spec file.  */
 #undef  LIB_SPEC
diff -ru gcc-4.4.2.orig/gcc/config.gcc gcc-4.4.2/gcc/config.gcc
--- gcc-4.4.2.orig/gcc/config.gcc	2009-12-31 14:43:17.000000000 +0100
+++ gcc-4.4.2/gcc/config.gcc	2010-01-05 09:27:42.000000000 +0100
@@ -733,6 +733,11 @@
 	tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h"
 	tmake_file="arm/t-arm arm/t-arm-elf"
 	case ${target} in
+	arm*b-*)
+		tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1"
+		;;
+	esac
+	case ${target} in
 	arm*-*-uclinux*eabi)
 	    tm_file="$tm_file arm/bpabi.h arm/uclinux-eabi.h"
 	    tmake_file="$tmake_file arm/t-bpabi"