aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.7/boehm-gc
diff options
context:
space:
mode:
authorPavel Chupin <pavel.v.chupin@intel.com>2012-11-27 14:09:50 +0400
committerPavel Chupin <pavel.v.chupin@intel.com>2013-04-18 16:50:12 +0400
commit9e1f9b3eacb51a67e675cd1195c472215fb16373 (patch)
treeaf3f97ee1874e13a5fe5ba61058aba045bbad279 /gcc-4.7/boehm-gc
parent5d65342898686feb3faceb3beb10529501d67b48 (diff)
downloadtoolchain_gcc-9e1f9b3eacb51a67e675cd1195c472215fb16373.tar.gz
toolchain_gcc-9e1f9b3eacb51a67e675cd1195c472215fb16373.tar.bz2
toolchain_gcc-9e1f9b3eacb51a67e675cd1195c472215fb16373.zip
[4.7] x32: Backport x32 support into 4.7
This patch contains all gcc changes required to build x32 compiler. They are backported from 4.8/trunk. Change-Id: I923f639c1f0cee5812b0f555a39bab0bd0723865 Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
Diffstat (limited to 'gcc-4.7/boehm-gc')
-rw-r--r--gcc-4.7/boehm-gc/ChangeLog.x329
-rwxr-xr-xgcc-4.7/boehm-gc/configure13
-rw-r--r--gcc-4.7/boehm-gc/include/private/gcconfig.h9
3 files changed, 26 insertions, 5 deletions
diff --git a/gcc-4.7/boehm-gc/ChangeLog.x32 b/gcc-4.7/boehm-gc/ChangeLog.x32
new file mode 100644
index 000000000..099007702
--- /dev/null
+++ b/gcc-4.7/boehm-gc/ChangeLog.x32
@@ -0,0 +1,9 @@
+2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure: Regenerated.
+
+2012-05-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ Merge upstream changes
+ * include/private/gcconfig.h: (ALIGNMENT): Set to 4 for x32.
+ (CPP_WORDSZ): Set to 32 for x32.
diff --git a/gcc-4.7/boehm-gc/configure b/gcc-4.7/boehm-gc/configure
index c76ea447a..aa6105393 100755
--- a/gcc-4.7/boehm-gc/configure
+++ b/gcc-4.7/boehm-gc/configure
@@ -6786,7 +6786,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
LD="${LD-ld} -m elf_i386_fbsd"
;;
x86_64-*linux*)
- LD="${LD-ld} -m elf_i386"
+ case `/usr/bin/file conftest.o` in
+ *x86-64*)
+ LD="${LD-ld} -m elf32_x86_64"
+ ;;
+ *)
+ LD="${LD-ld} -m elf_i386"
+ ;;
+ esac
;;
ppc64-*linux*|powerpc64-*linux*)
LD="${LD-ld} -m elf32ppclinux"
@@ -11304,7 +11311,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11307 "configure"
+#line 11314 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11410,7 +11417,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11413 "configure"
+#line 11420 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
diff --git a/gcc-4.7/boehm-gc/include/private/gcconfig.h b/gcc-4.7/boehm-gc/include/private/gcconfig.h
index fb09cf73c..0263c13fd 100644
--- a/gcc-4.7/boehm-gc/include/private/gcconfig.h
+++ b/gcc-4.7/boehm-gc/include/private/gcconfig.h
@@ -1974,8 +1974,13 @@
# ifdef X86_64
# define MACH_TYPE "X86_64"
-# define ALIGNMENT 8
-# define CPP_WORDSZ 64
+# ifdef __ILP32__
+# define ALIGNMENT 4
+# define CPP_WORDSZ 32
+# else
+# define ALIGNMENT 8
+# define CPP_WORDSZ 64
+# endif
# ifndef HBLKSIZE
# define HBLKSIZE 4096
# endif