From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.windriver.com ([147.11.1.11]) by linuxtogo.org with esmtp (Exim 4.72) (envelope-from ) id 1QQ2xa-0005W0-Iw for openembedded-core@lists.openembedded.org; Fri, 27 May 2011 21:44:38 +0200 Received: from ALA-HCA.corp.ad.wrs.com (ala-hca [147.11.189.40]) by mail.windriver.com (8.14.3/8.14.3) with ESMTP id p4RJfWmq001032 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL) for ; Fri, 27 May 2011 12:41:32 -0700 (PDT) Received: from Macintosh-5.local (172.25.36.228) by ALA-HCA.corp.ad.wrs.com (147.11.189.50) with Microsoft SMTP Server id 14.1.255.0; Fri, 27 May 2011 12:41:32 -0700 Message-ID: <4DDFFE6B.6030902@windriver.com> Date: Fri, 27 May 2011 14:41:31 -0500 From: Mark Hatle Organization: Wind River Systems User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10 MIME-Version: 1.0 To: References: <4DDFF866.5040302@windriver.com> In-Reply-To: Subject: Re: [bugfix 1/2] gcc-4.6.0: fix ICE with armv7 target X-BeenThere: openembedded-core@lists.openembedded.org X-Mailman-Version: 2.1.11 Precedence: list Reply-To: Patches and discussions about the oe-core layer List-Id: Patches and discussions about the oe-core layer List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 May 2011 19:44:39 -0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On 5/27/11 2:36 PM, Khem Raj wrote: > On Fri, May 27, 2011 at 12:15 PM, Mark Hatle wrote: >> On 5/27/11 1:25 PM, Khem Raj wrote: >>> On Fri, May 27, 2011 at 11:15 AM, wrote: >>>> From: Nitin A Kamble >>>> >>>> This fixes an internal compiler error for gcc 4.6.0 for armv7 >>>> >>>> Patch came from: Phil Blundell >>>> Validated by Nitin >>>> >>>> Signed-off-by: Nitin A Kamble >>>> Signed-Off-by: Phil Blundell >>>> --- >>>> 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 0000000..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 >>>> +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 for instructions. >>>> +| make[4]: *** [svga_tgsi_insn.o] Error 1 >>>> + >>>> +Nitin A Kamble 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 >> > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core