From: Bernhard Walle <[email protected]>

This patch fixes an ICE when compiling a kernel for ARM. It's from
upstream gcc SVN, so it should be safe.

Signed-off-by: Bernhard Walle <[email protected]>
---
 patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch |   51 +++++++++++++++++++++++++++
 patches/gcc-4.5.2/series                    |    1 +
 2 files changed, 52 insertions(+), 0 deletions(-)
 create mode 100644 patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch

diff --git a/patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch 
b/patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch
new file mode 100644
index 0000000..191b61a
--- /dev/null
+++ b/patches/gcc-4.5.2/0016-Fix-ICE-on-ARM.patch
@@ -0,0 +1,51 @@
+From: Bernhard Walle <[email protected]>
+Date: Wed, 11 May 2011 16:26:14 +0200
+Subject: [PATCH] Fix ICE on ARM
+
+Upstream Bug URL: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45447
+
+svn log -c 168270 svn://gcc.gnu.org/svn/gcc/branches/gcc-4_5-branch/
+
+r168270 | qiyao | 2010-12-27 13:45:02 +0100 (Mo, 27. Dez 2010) | 10 Zeilen
+
+Backport from mainline:
+gcc/
+        PR target/45447
+        * config/arm/arm.c (arm_build_builtin_va_list): Assign
+        va_list_name to TYPE_STUB_DECL (va_list_type).
+
+gcc/testsuite/
+        PR target/45447
+        * gcc.target/arm/pr45447.c: New test.
+
+Signed-off-by: Bernhard Walle <[email protected]>
+---
+ gcc/config/arm/arm.c                   |    1 +
+ gcc/testsuite/gcc.target/arm/pr45447.c |    3 +++
+ 2 files changed, 4 insertions(+), 0 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/arm/pr45447.c
+
+diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
+index c65f59e..144cf79 100644
+--- a/gcc/config/arm/arm.c
++++ b/gcc/config/arm/arm.c
+@@ -1114,6 +1114,7 @@ arm_build_builtin_va_list (void)
+                            va_list_type);
+   DECL_ARTIFICIAL (va_list_name) = 1;
+   TYPE_NAME (va_list_type) = va_list_name;
++  TYPE_STUB_DECL (va_list_type) = va_list_name;
+   /* Create the __ap field.  */
+   ap_field = build_decl (BUILTINS_LOCATION,
+                        FIELD_DECL, 
+diff --git a/gcc/testsuite/gcc.target/arm/pr45447.c 
b/gcc/testsuite/gcc.target/arm/pr45447.c
+new file mode 100644
+index 0000000..cb4a442
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/arm/pr45447.c
+@@ -0,0 +1,3 @@
++/* { dg-do compile } */
++/* { dg-options "-g -femit-struct-debug-baseonly" } */
++typedef __builtin_va_list x;
+-- 
+1.7.5.1
+
diff --git a/patches/gcc-4.5.2/series b/patches/gcc-4.5.2/series
index 26780a4..ea6ad6b 100644
--- a/patches/gcc-4.5.2/series
+++ b/patches/gcc-4.5.2/series
@@ -22,3 +22,4 @@
 
 # from upstream
 0015-Fix-libjava-cross-build-issue.patch
+0016-Fix-ICE-on-ARM.patch
-- 
1.7.6


-- 
ptxdist mailing list
[email protected]

Reply via email to