Skip to contentSkip to conversation

internal compiler fix for gcc 4.6.0

PATCH In review [email protected] 3 participants 8 messages May 27, 2011 – May 28, 2011

lore
Share & tools
lore
#0 lore raw

cover internal compiler fix for gcc 4.6.0

From: Nitin A Kamble <[email protected]>

This fixes the gcc taking out the need of the workaround we had earlier.

This also fixes compile issue for qt4-x11-free recipe for beagleboard machine

The following changes since commit 62e3f0ff7b27d8beb21b4b226051c3db654ea4e4:

License Field Cleanup: Non-standard field names (2011-05-27 18:27:22 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib nitin/bugfixes
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/bugfixes

Nitin A Kamble (2):
gcc-4.6.0: fix ICE with armv7 target
Revert "tcmode-default: workaround for gcc 4.6.0 failure on
beagleboard"

 meta/conf/distro/include/tcmode-default.inc        |    4 --
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +-
 .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++
 3 files changed, 46 insertions(+), 5 deletions(-)
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
Signature · 1 line
1.7.3.5
#1 lore raw

PATCH 1/2 gcc-4.6.0: fix ICE with armv7 target

From: Nitin A Kamble <[email protected]>

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundell <[email protected]>
Validated by Nitin

---
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +-
 .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++
 2 files changed, 46 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
meta/recipes-devtools/gcc/gcc-4.6.0.inc +2 -1
index fb5c70d..4407eca 100644
@@ -7,7 +7,7 @@ require gcc-common.inc
 
 require gcc-4_6-branch-backports.inc
 
-PR = "r2"
+PR = "r3"
 
 DEPENDS =+ "mpfr gmp libmpc"
 NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"
@@ -53,6 +53,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
 	   file://gcc-poison-parameters.patch \
 	   file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
 	   file://COLLECT_GCC_OPTIONS.patch \
+	   file://ICE_fix_for_arm.patch \
 	  "
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "
 
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +44 -0

44 lines not on this page · raw message

Signature · 1 line
1.7.3.5
#2 lore raw

PATCH 2/2 Revert "tcmode-default: workaround for gcc 4.6.0 failure on beagleboard"

From: Nitin A Kamble <[email protected]>

As we have a fix for gcc 4.6.0 this workaround is not needed anymore

This reverts commit 9bccbc5fbc71b331911b558a2ba15e0a6d0046b4.

Nitin A Kamble <[email protected]>

---
 meta/conf/distro/include/tcmode-default.inc |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)
meta/conf/distro/include/tcmode-default.inc +0 -4
index 6eb34ef..d279231 100644
@@ -26,10 +26,6 @@ LINUXLIBCVERSION ?= "2.6.37.2"
 # Temporary preferred version overrides for PPC
 PREFERRED_VERSION_u-boot-mkimage-native_powerpc ?= "2009.08"
 
-# Temporary workaround for gcc 4.6.0 ICE with beagleboard
-# gcc bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719
-TARGET_CC_ARCH_arm_pn-mesa-xlib := "${@'${TARGET_CC_ARCH}'.replace('armv7-a','armv5')}"
-
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-initial ?= "${GCCVERSION}"
Signature · 1 line
1.7.3.5
#3 lore raw

Re: [bugfix 1/2] gcc-4.6.0: fix ICE with armv7 target

In reply to [email protected]
Quoted 75 lines · On Fri, May 27, 2011 at 11:15 AM, <[email protected]> wrote:

From: Nitin A Kamble <[email protected]>

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundell <[email protected]>
Validated by Nitin

---
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +- .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++

 2 files changed, 46 insertions(+), 1 deletions(-)

 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch

meta/recipes-devtools/gcc/gcc-4.6.0.inc +0 -0
index fb5c70d..4407eca 100644
@@ -7,7 +7,7 @@ require gcc-common.inc
 

 require gcc-4_6-branch-backports.inc

meta/recipes-devtools/gcc/gcc-4.6.0.inc +1 -1
-PR = "r2"
+PR = "r3"

 DEPENDS =+ "mpfr gmp libmpc"
 NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"

meta/recipes-devtools/gcc/gcc-4.6.0.inc +1 -0
@@ -53,6 +53,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
           file://gcc-poison-parameters.patch \
           file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
           file://COLLECT_GCC_OPTIONS.patch \
+          file://ICE_fix_for_arm.patch \

         "
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +33 -0
new file mode 100644
index 0000000..037a180
@@ -0,0 +1,44 @@
+Upstream-Status: Pending
+
+Patch came from: Phil Blundell <[email protected]>
+Validated by Nitin
+This fixes the following internal compiler error of gcc 4.6.0 on for armv7-a
+related gcc bugzilla: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719
+
+
+| arm-poky-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon
+-mfloat-abi=softfp -fno-tree-vectorize
+--sysroot=/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/beagleboard
+-c -I. -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary
+-I../../../../src/gallium/drivers
+-I../../../../src/gallium/drivers/svga/include -O2 -pipe -g
+-feliminate-unused-debug-types -Wall -Wmissing-prototypes -std=c99 -ffast-math
+-fvisibility=hidden -fno-strict-aliasing -fPIC -D_GNU_SOURCE -DPTHREADS
+-DHAVE_POSIX_MEMALIGN -DUSE_XSHM -std=gnu99 -fvisibility=hidden -DHAVE_STDINT_H
+-DHAVE_SYS_TYPES_H svga_resource_buffer_upload.c -o
+svga_resource_buffer_upload.o
+| svga_tgsi_insn.c: In function 'svga_shader_emit_instructions':
+| svga_tgsi_insn.c:2969:1: internal compiler error: in push_minipool_fix, at
+config/arm/arm.c:12084
+| Please submit a full bug report,
+| with preprocessed source if appropriate.
+| See <http://gcc.gnu.org/bugs.html> for instructions.
+| make[4]: *** [svga_tgsi_insn.o] Error 1
+
+Nitin A Kamble <[email protected]> 2011/05/27
+
+Index: gcc-4.6.0/gcc/config/arm/arm.md
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/arm.md
++++ gcc-4.6.0/gcc/config/arm/arm.md

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch line 43

Quoted 10 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +10 -0
+@@ -4213,7 +4213,9 @@
+    uxth%?\\t%0, %1
+    ldr%(h%)\\t%0, %1"
+   [(set_attr "type" "alu_shift,load_byte")
+-   (set_attr "predicable" "yes")]
++   (set_attr "predicable" "yes")
++   (set_attr "pool_range" "*,256")
++   (set_attr "neg_pool_range" "*,244")]
+ )
+

FWIW a patch which is similar to this was rejected here.
http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01731.html

Quoted 10 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +1 -1
+ (define_insn "*arm_zero_extendhisi2addsi"
--

1.7.3.5

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#4 lore raw

Re: [bugfix 1/2] gcc-4.6.0: fix ICE with armv7 target

Quoted 81 lines · Khem Raj
Quoted 80 lines · On Fri, May 27, 2011 at 11:15 AM, <[email protected]> wrote:

From: Nitin A Kamble <[email protected]>

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundell <[email protected]>
Validated by Nitin

---
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +-
 .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++
 2 files changed, 46 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
meta/recipes-devtools/gcc/gcc-4.6.0.inc +2 -1
index fb5c70d..4407eca 100644
@@ -7,7 +7,7 @@ require gcc-common.inc
 
 require gcc-4_6-branch-backports.inc
 
-PR = "r2"
+PR = "r3"
 
 DEPENDS =+ "mpfr gmp libmpc"
 NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"
@@ -53,6 +53,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
          file://gcc-poison-parameters.patch \
          file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
          file://COLLECT_GCC_OPTIONS.patch \
+          file://ICE_fix_for_arm.patch \
         "
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "
 
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +38 -0
new file mode 100644
index 0000000..037a180
@@ -0,0 +1,44 @@
+Upstream-Status: Pending
+
+Patch came from: Phil Blundell <[email protected]>
+Validated by Nitin
+This fixes the following internal compiler error of gcc 4.6.0 on for armv7-a
+related gcc bugzilla: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719
+
+
+| arm-poky-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon
+-mfloat-abi=softfp -fno-tree-vectorize
+--sysroot=/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/beagleboard
+-c -I. -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary
+-I../../../../src/gallium/drivers
+-I../../../../src/gallium/drivers/svga/include -O2 -pipe -g
+-feliminate-unused-debug-types -Wall -Wmissing-prototypes -std=c99 -ffast-math
+-fvisibility=hidden -fno-strict-aliasing -fPIC -D_GNU_SOURCE -DPTHREADS
+-DHAVE_POSIX_MEMALIGN -DUSE_XSHM -std=gnu99 -fvisibility=hidden -DHAVE_STDINT_H
+-DHAVE_SYS_TYPES_H svga_resource_buffer_upload.c -o
+svga_resource_buffer_upload.o
+| svga_tgsi_insn.c: In function 'svga_shader_emit_instructions':
+| svga_tgsi_insn.c:2969:1: internal compiler error: in push_minipool_fix, at
+config/arm/arm.c:12084
+| Please submit a full bug report,
+| with preprocessed source if appropriate.
+| See <http://gcc.gnu.org/bugs.html> for instructions.
+| make[4]: *** [svga_tgsi_insn.o] Error 1
+
+Nitin A Kamble <[email protected]> 2011/05/27
+
+Index: gcc-4.6.0/gcc/config/arm/arm.md
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/arm.md
++++ gcc-4.6.0/gcc/config/arm/arm.md
+@@ -4213,7 +4213,9 @@
+    uxth%?\\t%0, %1
+    ldr%(h%)\\t%0, %1"
+   [(set_attr "type" "alu_shift,load_byte")
+-   (set_attr "predicable" "yes")]
Quoted 9 lines

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch line 43

Quoted 5 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +5 -0
++   (set_attr "predicable" "yes")
++   (set_attr "pool_range" "*,256")
++   (set_attr "neg_pool_range" "*,244")]
+ )
+

FWIW a patch which is similar to this was rejected here.
http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01731.html

based on that link, I'd say there are two cases that are needed for a proper workaround.

Then likely we wait until upstream has a fix....

--Mark

Quoted 15 lines
Quoted 10 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +1 -1
+ (define_insn "*arm_zero_extendhisi2addsi"
--

1.7.3.5

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#5 lore raw

Re: [bugfix 1/2] gcc-4.6.0: fix ICE with armv7 target

Quoted 92 lines · Mark Hatle
Quoted 81 lines · Khem Raj
Quoted 80 lines · On Fri, May 27, 2011 at 11:15 AM,  <[email protected]> wrote:

From: Nitin A Kamble <[email protected]>

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundell <[email protected]>
Validated by Nitin

---
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +- .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++

 2 files changed, 46 insertions(+), 1 deletions(-)

 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch

meta/recipes-devtools/gcc/gcc-4.6.0.inc +0 -0
index fb5c70d..4407eca 100644
@@ -7,7 +7,7 @@ require gcc-common.inc
 

 require gcc-4_6-branch-backports.inc

meta/recipes-devtools/gcc/gcc-4.6.0.inc +1 -1
-PR = "r2"
+PR = "r3"

 DEPENDS =+ "mpfr gmp libmpc"
 NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"

meta/recipes-devtools/gcc/gcc-4.6.0.inc +1 -0
@@ -53,6 +53,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
           file://gcc-poison-parameters.patch \
           file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
           file://COLLECT_GCC_OPTIONS.patch \
+          file://ICE_fix_for_arm.patch \

         "
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +38 -0
new file mode 100644
index 0000000..037a180
@@ -0,0 +1,44 @@
+Upstream-Status: Pending
+
+Patch came from: Phil Blundell <[email protected]>
+Validated by Nitin
+This fixes the following internal compiler error of gcc 4.6.0 on for armv7-a
+related gcc bugzilla: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719
+
+
+| arm-poky-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon
+-mfloat-abi=softfp -fno-tree-vectorize
+--sysroot=/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/beagleboard
+-c -I. -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary
+-I../../../../src/gallium/drivers
+-I../../../../src/gallium/drivers/svga/include -O2 -pipe -g
+-feliminate-unused-debug-types -Wall -Wmissing-prototypes -std=c99 -ffast-math
+-fvisibility=hidden -fno-strict-aliasing -fPIC -D_GNU_SOURCE -DPTHREADS
+-DHAVE_POSIX_MEMALIGN -DUSE_XSHM -std=gnu99 -fvisibility=hidden -DHAVE_STDINT_H
+-DHAVE_SYS_TYPES_H svga_resource_buffer_upload.c -o
+svga_resource_buffer_upload.o
+| svga_tgsi_insn.c: In function 'svga_shader_emit_instructions':
+| svga_tgsi_insn.c:2969:1: internal compiler error: in push_minipool_fix, at
+config/arm/arm.c:12084
+| Please submit a full bug report,
+| with preprocessed source if appropriate.
+| See <http://gcc.gnu.org/bugs.html> for instructions.
+| make[4]: *** [svga_tgsi_insn.o] Error 1
+
+Nitin A Kamble <[email protected]> 2011/05/27
+
+Index: gcc-4.6.0/gcc/config/arm/arm.md
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/arm.md
++++ gcc-4.6.0/gcc/config/arm/arm.md
+@@ -4213,7 +4213,9 @@
+    uxth%?\\t%0, %1
+    ldr%(h%)\\t%0, %1"
+   [(set_attr "type" "alu_shift,load_byte")
+-   (set_attr "predicable" "yes")]
Quoted 9 lines

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch line 43

Quoted 5 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +5 -0
++   (set_attr "predicable" "yes")
++   (set_attr "pool_range" "*,256")
++   (set_attr "neg_pool_range" "*,244")]
+ )
+

FWIW a patch which is similar to this was rejected here.
http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01731.html

Quoted 4 lines

based on that link, I'd say there are two cases that are needed for a proper workaround.

Then likely we wait until upstream has a fix....

working around package is better than working around gcc IMHO

Quoted 25 lines

--Mark

Quoted 11 lines
Quoted 10 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +1 -1
+ (define_insn "*arm_zero_extendhisi2addsi"
--

1.7.3.5

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Quoted 4 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#6 lore raw

Re: [bugfix 1/2] gcc-4.6.0: fix ICE with armv7 target

Quoted 93 lines · Khem Raj
Quoted 92 lines · Mark Hatle
Quoted 90 lines · Khem Raj
Quoted 75 lines · On Fri, May 27, 2011 at 11:15 AM, <[email protected]> wrote:

From: Nitin A Kamble <[email protected]>

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundell <[email protected]>
Validated by Nitin

---
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +-
 .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++
 2 files changed, 46 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
meta/recipes-devtools/gcc/gcc-4.6.0.inc +2 -1
index fb5c70d..4407eca 100644
@@ -7,7 +7,7 @@ require gcc-common.inc
 
 require gcc-4_6-branch-backports.inc
 
-PR = "r2"
+PR = "r3"
 
 DEPENDS =+ "mpfr gmp libmpc"
 NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"
@@ -53,6 +53,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
          file://gcc-poison-parameters.patch \
          file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
          file://COLLECT_GCC_OPTIONS.patch \
+          file://ICE_fix_for_arm.patch \
         "
 SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "
 
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +33 -0
new file mode 100644
index 0000000..037a180
@@ -0,0 +1,44 @@
+Upstream-Status: Pending
+
+Patch came from: Phil Blundell <[email protected]>
+Validated by Nitin
+This fixes the following internal compiler error of gcc 4.6.0 on for armv7-a
+related gcc bugzilla: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719
+
+
+| arm-poky-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon
+-mfloat-abi=softfp -fno-tree-vectorize
+--sysroot=/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/beagleboard
+-c -I. -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary
+-I../../../../src/gallium/drivers
+-I../../../../src/gallium/drivers/svga/include -O2 -pipe -g
+-feliminate-unused-debug-types -Wall -Wmissing-prototypes -std=c99 -ffast-math
+-fvisibility=hidden -fno-strict-aliasing -fPIC -D_GNU_SOURCE -DPTHREADS
+-DHAVE_POSIX_MEMALIGN -DUSE_XSHM -std=gnu99 -fvisibility=hidden -DHAVE_STDINT_H
+-DHAVE_SYS_TYPES_H svga_resource_buffer_upload.c -o
+svga_resource_buffer_upload.o
+| svga_tgsi_insn.c: In function 'svga_shader_emit_instructions':
+| svga_tgsi_insn.c:2969:1: internal compiler error: in push_minipool_fix, at
+config/arm/arm.c:12084
+| Please submit a full bug report,
+| with preprocessed source if appropriate.
+| See <http://gcc.gnu.org/bugs.html> for instructions.
+| make[4]: *** [svga_tgsi_insn.o] Error 1
+
+Nitin A Kamble <[email protected]> 2011/05/27
+
+Index: gcc-4.6.0/gcc/config/arm/arm.md
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/arm.md
++++ gcc-4.6.0/gcc/config/arm/arm.md

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch line 43

Quoted 10 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +10 -0
+@@ -4213,7 +4213,9 @@
+    uxth%?\\t%0, %1
+    ldr%(h%)\\t%0, %1"
+   [(set_attr "type" "alu_shift,load_byte")
+-   (set_attr "predicable" "yes")]
++   (set_attr "predicable" "yes")
++   (set_attr "pool_range" "*,256")
++   (set_attr "neg_pool_range" "*,244")]
+ )
+

FWIW a patch which is similar to this was rejected here.
http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01731.html

Quoted 6 lines
Quoted 4 lines

based on that link, I'd say there are two cases that are needed for a proper workaround.

Then likely we wait until upstream has a fix....

working around package is better than working around gcc IMHO

Problem is the ICE will still be there. If we put the workaround in gcc, then the package will work with different versions of gcc (without modification), and other packages will not experience this ICE.

(This of course is assuming the gcc workaround is reasonable and not introducing other faults.)

--Mark

Quoted 29 lines
Quoted 19 lines

--Mark

Quoted 11 lines
Quoted 10 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +1 -1
+ (define_insn "*arm_zero_extendhisi2addsi"
--

1.7.3.5

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Quoted 4 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Quoted 5 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

#7 lore raw

Re: [bugfix 1/2] gcc-4.6.0: fix ICE with armv7 target

Quoted 99 lines · Mark Hatle
Quoted 98 lines · Khem Raj
Quoted 96 lines · Mark Hatle
Quoted 81 lines · Khem Raj
Quoted 80 lines · On Fri, May 27, 2011 at 11:15 AM,<[email protected]> wrote:

From: Nitin A Kamble<[email protected]>

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundell<[email protected]>
Validated by Nitin

---
  meta/recipes-devtools/gcc/gcc-4.6.0.inc            |    3 +-
  .../gcc/gcc-4.6.0/ICE_fix_for_arm.patch            |   44 ++++++++++++++++++++
  2 files changed, 46 insertions(+), 1 deletions(-)

create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch

meta/recipes-devtools/gcc/gcc-4.6.0.inc +2 -1
index fb5c70d..4407eca 100644
@@ -7,7 +7,7 @@ require gcc-common.inc
 
  require gcc-4_6-branch-backports.inc
 
-PR = "r2"
+PR = "r3"
 
  DEPENDS =+ "mpfr gmp libmpc"
  NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"
@@ -53,6 +53,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
           file://gcc-poison-parameters.patch \
           file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
           file://COLLECT_GCC_OPTIONS.patch \
+          file://ICE_fix_for_arm.patch \
          "
  SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "
 
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +38 -0
new file mode 100644
index 0000000..037a180
@@ -0,0 +1,44 @@
+Upstream-Status: Pending
+
+Patch came from: Phil Blundell<[email protected]>
+Validated by Nitin
+This fixes the following internal compiler error of gcc 4.6.0 on for armv7-a
+related gcc bugzilla: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47719
+
+
+| arm-poky-linux-gnueabi-gcc -march=armv7-a -mtune=cortex-a8 -mfpu=neon
+-mfloat-abi=softfp -fno-tree-vectorize
+--sysroot=/srv/home/pokybuild/poky-slave/nightly-external/build/build/tmp/sysroots/beagleboard
+-c -I. -I../../../../src/gallium/include -I../../../../src/gallium/auxiliary
+-I../../../../src/gallium/drivers
+-I../../../../src/gallium/drivers/svga/include -O2 -pipe -g
+-feliminate-unused-debug-types -Wall -Wmissing-prototypes -std=c99 -ffast-math
+-fvisibility=hidden -fno-strict-aliasing -fPIC -D_GNU_SOURCE -DPTHREADS
+-DHAVE_POSIX_MEMALIGN -DUSE_XSHM -std=gnu99 -fvisibility=hidden -DHAVE_STDINT_H
+-DHAVE_SYS_TYPES_H svga_resource_buffer_upload.c -o
+svga_resource_buffer_upload.o
+| svga_tgsi_insn.c: In function 'svga_shader_emit_instructions':
+| svga_tgsi_insn.c:2969:1: internal compiler error: in push_minipool_fix, at
+config/arm/arm.c:12084
+| Please submit a full bug report,
+| with preprocessed source if appropriate.
+| See<http://gcc.gnu.org/bugs.html>  for instructions.
+| make[4]: *** [svga_tgsi_insn.o] Error 1
+
+Nitin A Kamble<[email protected]>  2011/05/27
+
+Index: gcc-4.6.0/gcc/config/arm/arm.md
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/arm.md
++++ gcc-4.6.0/gcc/config/arm/arm.md
+@@ -4213,7 +4213,9 @@
+    uxth%?\\t%0, %1
+    ldr%(h%)\\t%0, %1"
+   [(set_attr "type" "alu_shift,load_byte")
+-   (set_attr "predicable" "yes")]
Quoted 9 lines

meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch line 43

Quoted 5 lines
meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch new file +5 -0
++   (set_attr "predicable" "yes")
++   (set_attr "pool_range" "*,256")
++   (set_attr "neg_pool_range" "*,244")]
+ )
+

FWIW a patch which is similar to this was rejected here.
http://gcc.gnu.org/ml/gcc-patches/2011-02/msg01731.html

based on that link, I'd say there are two cases that are needed for a proper workaround.

Then likely we wait until upstream has a fix....

Quoted 8 lines
Quoted 1 line

working around package is better than working around gcc IMHO

Problem is the ICE will still be there. If we put the workaround in gcc, then the package will work with different versions of gcc (without modification), and other packages will not experience this ICE.

(This of course is assuming the gcc workaround is reasonable and not introducing other faults.)

we should qualify and run regression tests IMO to validate it if we intend patch gcc. I think fixing the given recipe is path of least impact