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

2011-05-28 Thread Khem Raj

On 5/27/2011 12:41 PM, Mark Hatle wrote:

On 5/27/11 2:36 PM, Khem Raj wrote:

On Fri, May 27, 2011 at 12:15 PM, Mark Hatlemark.ha...@windriver.com  wrote:

On 5/27/11 1:25 PM, Khem Raj wrote:

On Fri, May 27, 2011 at 11:15 AM,nitin.a.kam...@intel.com  wrote:

From: Nitin A Kamblenitin.a.kam...@intel.com

This fixes an internal compiler error for gcc 4.6.0 for armv7

Patch came from: Phil Blundellp...@pbcl.net
Validated by Nitin

Signed-off-by: Nitin A Kamblenitin.a.kam...@intel.com
Signed-Off-by: Phil Blundellp...@pbcl.net
---
  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

diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0.inc 
b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
index fb5c70d..4407eca 100644
--- a/meta/recipes-devtools/gcc/gcc-4.6.0.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
@@ -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 

diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch 
b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
new file mode 100644
index 000..037a180
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
@@ -0,0 +1,44 @@
+Upstream-Status: Pending
+
+Patch came from: Phil Blundellp...@pbcl.net
+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.
+| Seehttp://gcc.gnu.org/bugs.html  for instructions.
+| make[4]: *** [svga_tgsi_insn.o] Error 1
+
+Nitin A Kamblenitin.a.kam...@intel.com  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)]
++   (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


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


___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


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

2011-05-27 Thread Khem Raj
On Fri, May 27, 2011 at 11:15 AM,  nitin.a.kam...@intel.com wrote:
 From: Nitin A Kamble nitin.a.kam...@intel.com

 This fixes an internal compiler error for gcc 4.6.0 for armv7

 Patch came from: Phil Blundell p...@pbcl.net
 Validated by Nitin

 Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
 Signed-Off-by: Phil Blundell p...@pbcl.net
 ---
  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

 diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0.inc 
 b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 index fb5c70d..4407eca 100644
 --- a/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 +++ b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 @@ -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 

 diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch 
 b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
 new file mode 100644
 index 000..037a180
 --- /dev/null
 +++ b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
 @@ -0,0 +1,44 @@
 +Upstream-Status: Pending
 +
 +Patch came from: Phil Blundell p...@pbcl.net
 +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 nitin.a.kam...@intel.com 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)]
 ++   (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


 + (define_insn *arm_zero_extendhisi2addsi
 --
 1.7.3.5


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


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

2011-05-27 Thread Khem Raj
On Fri, May 27, 2011 at 12:15 PM, Mark Hatle mark.ha...@windriver.com wrote:
 On 5/27/11 1:25 PM, Khem Raj wrote:
 On Fri, May 27, 2011 at 11:15 AM,  nitin.a.kam...@intel.com wrote:
 From: Nitin A Kamble nitin.a.kam...@intel.com

 This fixes an internal compiler error for gcc 4.6.0 for armv7

 Patch came from: Phil Blundell p...@pbcl.net
 Validated by Nitin

 Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
 Signed-Off-by: Phil Blundell p...@pbcl.net
 ---
  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

 diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0.inc 
 b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 index fb5c70d..4407eca 100644
 --- a/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 +++ b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 @@ -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 

 diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch 
 b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
 new file mode 100644
 index 000..037a180
 --- /dev/null
 +++ b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
 @@ -0,0 +1,44 @@
 +Upstream-Status: Pending
 +
 +Patch came from: Phil Blundell p...@pbcl.net
 +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 nitin.a.kam...@intel.com 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)]
 ++   (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

working around package is better than working around gcc IMHO

 --Mark

 + (define_insn *arm_zero_extendhisi2addsi
 --
 1.7.3.5


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


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

2011-05-27 Thread Mark Hatle
On 5/27/11 2:36 PM, Khem Raj wrote:
 On Fri, May 27, 2011 at 12:15 PM, Mark Hatle mark.ha...@windriver.com wrote:
 On 5/27/11 1:25 PM, Khem Raj wrote:
 On Fri, May 27, 2011 at 11:15 AM,  nitin.a.kam...@intel.com wrote:
 From: Nitin A Kamble nitin.a.kam...@intel.com

 This fixes an internal compiler error for gcc 4.6.0 for armv7

 Patch came from: Phil Blundell p...@pbcl.net
 Validated by Nitin

 Signed-off-by: Nitin A Kamble nitin.a.kam...@intel.com
 Signed-Off-by: Phil Blundell p...@pbcl.net
 ---
  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

 diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0.inc 
 b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 index fb5c70d..4407eca 100644
 --- a/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 +++ b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
 @@ -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 

 diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch 
 b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
 new file mode 100644
 index 000..037a180
 --- /dev/null
 +++ b/meta/recipes-devtools/gcc/gcc-4.6.0/ICE_fix_for_arm.patch
 @@ -0,0 +1,44 @@
 +Upstream-Status: Pending
 +
 +Patch came from: Phil Blundell p...@pbcl.net
 +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 nitin.a.kam...@intel.com 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)]
 ++   (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
 
 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

 --Mark

 + (define_insn *arm_zero_extendhisi2addsi
 --
 1.7.3.5


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core


 ___
 Openembedded-core mailing list
 Openembedded-core@lists.openembedded.org
 http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core