public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib
@ 2011-01-30 12:17 silver24k at gmail dot com
  2011-01-30 12:39 ` [Bug target/47543] " silver24k at gmail dot com
                   ` (16 more replies)
  0 siblings, 17 replies; 18+ messages in thread
From: silver24k at gmail dot com @ 2011-01-30 12:17 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

           Summary: ICE: in extract_insn, at recog.c:2109 when building
                    zlib
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: silver24k@gmail.com
            Target: arm-none-eabi


trunk r169392
arm-none-eabi-gcc (alias as arm-gcc) cross build on linux

arm-gcc -mthumb -O2 -c reduced_zlib.c  --  ICE
arm-gcc -O2 -c reduced_zlib.c          --  OK
arm-gcc -mthumb -Os -c reduced_zlib.c  --  OK


~$ arm-gcc -v -mthumb -O2 -c reduced_zlib.c
Using built-in specs.
COLLECT_GCC=arm-gcc
COLLECT_LTO_WRAPPER=/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../libexec/gcc/arm/4.6.0/lto-wrapper
Target: arm
Configured with: ../../../gcc_trunk/configure --target=arm
--prefix=/platform/cross-on-linux/mingw --disable-threads --disable-tls
--disable-win32-registry --enable-version-specific-runtime-libs
--with-pkgversion='General ARM GCC' --enable-multilib --with-newlib
--with-headers=/home/starlight/src/gnu-toolchain/newlib/newlib/libc/include
--disable-nls --enable-languages=c,c++ --with-mpc=/usr/local
--with-ppl=/usr/local --with-cloog=/usr/local --with-libelf=/usr/local
--disable-plugin --disable-libstdcxx-pch --enable-cloog-backend=isl
--disable-cloog-version-check
Thread model: single
gcc version 4.6.0 20110129 (experimental) mingw-20090616 (General ARM GCC)
COLLECT_GCC_OPTIONS='-v' '-mthumb' '-O2' '-c'

/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../libexec/gcc/arm/4.6.0/cc1
-quiet -v -imultilib wc4-eabi-lt-nofp -iprefix
/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/arm/4.6.0/
-D__USES_INITFINI__ reduced_zlib.c -quiet -dumpbase reduced_zlib.c -mthumb
-auxbase reduced_zlib -O2 -version -o /tmp/ccVEyLeu.s
GNU C (General ARM GCC) version 4.6.0 20110129 (experimental) mingw-20090616
(arm)
        compiled by GNU C version 4.4.3, GMP version 5.0.1, MPFR version
3.0.0-p3, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
ignoring duplicate directory
"/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/../../lib/gcc/arm/4.6.0/include"
ignoring duplicate directory
"/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/../../lib/gcc/arm/4.6.0/include-fixed"
ignoring duplicate directory
"/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/../../lib/gcc/arm/4.6.0/../../../../arm/sys-include"
ignoring duplicate directory
"/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/../../lib/gcc/arm/4.6.0/../../../../arm/include"
#include "..." search starts here:
#include <...> search starts here:

/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/arm/4.6.0/include

/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/arm/4.6.0/include-fixed

/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/arm/4.6.0/../../../../arm/sys-include

/home/starlight/src/gnu-toolchain/platform/cross-on-linux/mingw/bin/../lib/gcc/arm/4.6.0/../../../../arm/include
End of search list.
GNU C (General ARM GCC) version 4.6.0 20110129 (experimental) mingw-20090616
(arm)
        compiled by GNU C version 4.4.3, GMP version 5.0.1, MPFR version
3.0.0-p3, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: 6359df9e8f9ff1f7e9bf32c68a88d49d
reduced_zlib.c: In function 'inflate':
reduced_zlib.c:286:1: error: unrecognizable insn:
(insn 918 917 916 57 (set (reg:QI 3 r3)
        (mem/s:QI (plus:SI (reg:SI 2 r2)
                (const_int 60 [0x3c])) [4 MEM[(struct inflate_state
*)D.2192_55].length+0 S1 A32])) reduced_zlib.c:252 -1
     (nil))
reduced_zlib.c:286:1: internal compiler error: in extract_insn, at recog.c:2109
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
@ 2011-01-30 12:39 ` silver24k at gmail dot com
  2011-01-30 15:11 ` mikpe at it dot uu.se
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: silver24k at gmail dot com @ 2011-01-30 12:39 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #1 from Yu Simin <silver24k at gmail dot com> 2011-01-30 11:25:44 UTC ---
Created attachment 23167
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23167
reduced from zlib source


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
  2011-01-30 12:39 ` [Bug target/47543] " silver24k at gmail dot com
@ 2011-01-30 15:11 ` mikpe at it dot uu.se
  2011-01-30 17:10 ` mikpe at it dot uu.se
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-01-30 15:11 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Mikael Pettersson <mikpe at it dot uu.se> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mikpe at it dot uu.se

--- Comment #2 from Mikael Pettersson <mikpe at it dot uu.se> 2011-01-30 12:16:39 UTC ---
I can reproduce the ICE with gcc-4.6-20110129 (r169395) for arm-linux-gnueabi. 
It's a recent regression, gcc-4.6-20110122 (r169136) doesn't ICE.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
  2011-01-30 12:39 ` [Bug target/47543] " silver24k at gmail dot com
  2011-01-30 15:11 ` mikpe at it dot uu.se
@ 2011-01-30 17:10 ` mikpe at it dot uu.se
  2011-01-31 11:54 ` ibolton at gcc dot gnu.org
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: mikpe at it dot uu.se @ 2011-01-30 17:10 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Mikael Pettersson <mikpe at it dot uu.se> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at gcc dot gnu.org

--- Comment #3 from Mikael Pettersson <mikpe at it dot uu.se> 2011-01-30 15:32:23 UTC ---
It's caused (or triggered/exposed) by r169231:

Author: law
Date: Tue Jan 25 14:10:46 2011
New Revision: 169231

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169231
Log:
    PR rtl-optimization/37273
    * ira-costs.c (scan_one_insn): Detect constants living in memory and
    handle them like argument loads from stack slots.  Do not double
    count memory for memory constants and argument loads from stack slots.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (2 preceding siblings ...)
  2011-01-30 17:10 ` mikpe at it dot uu.se
@ 2011-01-31 11:54 ` ibolton at gcc dot gnu.org
  2011-01-31 16:33 ` law at redhat dot com
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-01-31 11:54 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Ian Bolton <ibolton at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011.01.31 10:53:30
                 CC|                            |ibolton at gcc dot gnu.org
     Ever Confirmed|0                           |1
      Known to fail|                            |4.6.0


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (3 preceding siblings ...)
  2011-01-31 11:54 ` ibolton at gcc dot gnu.org
@ 2011-01-31 16:33 ` law at redhat dot com
  2011-01-31 16:52 ` [Bug target/47543] [4.6 Regression] " jakub at gcc dot gnu.org
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-01-31 16:33 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at redhat dot com

--- Comment #4 from Jeffrey A. Law <law at redhat dot com> 2011-01-31 15:38:02 UTC ---
Investigating


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (4 preceding siblings ...)
  2011-01-31 16:33 ` law at redhat dot com
@ 2011-01-31 16:52 ` jakub at gcc dot gnu.org
  2011-01-31 17:01 ` law at redhat dot com
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-01-31 16:52 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org
   Target Milestone|---                         |4.6.0
            Summary|ICE: in extract_insn, at    |[4.6 Regression] ICE: in
                   |recog.c:2109 when building  |extract_insn, at
                   |zlib                        |recog.c:2109 when building
                   |                            |zlib


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (5 preceding siblings ...)
  2011-01-31 16:52 ` [Bug target/47543] [4.6 Regression] " jakub at gcc dot gnu.org
@ 2011-01-31 17:01 ` law at redhat dot com
  2011-01-31 18:24 ` law at redhat dot com
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-01-31 17:01 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #5 from Jeffrey A. Law <law at redhat dot com> 2011-01-31 16:33:29 UTC ---
I'm far from an ARM expert, but this looks like a problem in the ARM backend. 
Anyway, I'm still investigating.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (6 preceding siblings ...)
  2011-01-31 17:01 ` law at redhat dot com
@ 2011-01-31 18:24 ` law at redhat dot com
  2011-01-31 18:45 ` law at redhat dot com
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-01-31 18:24 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #6 from Jeffrey A. Law <law at redhat dot com> 2011-01-31 17:57:45 UTC ---
Created attachment 23184
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23184
potential fix


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (7 preceding siblings ...)
  2011-01-31 18:24 ` law at redhat dot com
@ 2011-01-31 18:45 ` law at redhat dot com
  2011-02-01  3:52 ` law at redhat dot com
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-01-31 18:45 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #7 from Jeffrey A. Law <law at redhat dot com> 2011-01-31 17:58:37 UTC ---
When I first started looking at this problem I was ready to point the finger at
the ARM backend.  A missing secondary reload or something along those lines.. 
However, after further investigation, this may be a latent reload bug.


So basically what happens is we determine that a particular pseudo is better
left in memory and the equivalent address is ip + 32.  So we've got this memory
address:

(plus:SI (reg/v/f:SI 12 ip [orig:161 state ] [161]) (const_int 32 [0x20]))

There's two problems.  The first is (reg:SI 12) is not a valid base address for
the thumb.  Second (const_int 32) is an invalid offset for QImode on thumb.

Reload reloads the base register generating:

(plus:SI (reg:SI 5 r5) (const_int 32 [0x20])) 

That's an improvement (we've got a valid base register), but the memory address
is still invalid for QImode due to the out-of-range offset.

As I've sat here tracking find_reloads_address, I'm really starting to wonder
if this really is a latent reload bug.

The best chance I see to fix this problem is the reloading code guarded by this
conditional (it will reload the displacement into a reg or reload the entire
address into a reg).  The code doesn't trigger because the base register is not
valid.

  /* If we have address of a stack slot but it's not valid because the
     displacement is too large, compute the sum in a register.
     Handle all base registers here, not just fp/ap/sp, because on some
     targets (namely SH) we can also get too large displacements from
     big-endian corrections.  */
  else if (GET_CODE (ad) == PLUS
           && REG_P (XEXP (ad, 0))
           && REGNO (XEXP (ad, 0)) < FIRST_PSEUDO_REGISTER
           && CONST_INT_P (XEXP (ad, 1))
           && regno_ok_for_base_p (REGNO (XEXP (ad, 0)), mode, PLUS,
                                   CONST_INT))


There's no other clauses that apply so we eventually call:

  return find_reloads_address_1 (mode, ad, 0, MEM, SCRATCH, loc, opnum, type,
                                 ind_levels, insn);

Which recurses via the code:
       else if (code1 == CONST_INT || code1 == CONST
                 || code1 == SYMBOL_REF || code1 == LABEL_REF)
          find_reloads_address_1 (mode, orig_op0, 0, PLUS, code1,
                                  &XEXP (x, 0), opnum, type, ind_levels,
                                  insn);

Which ultimately reloads the base register leaving the out-of-range constant.

Presumably this hasn't caused us many problems in the past because we only
rarely decide to leave pseudos in memory and even rarer do we address them via
an invalid base register and an out-of-range offset.  

The fix is relatively simple, given an address of the form
(plus (reg) (const_int))

If reloading the reg doesn't make a valid address, then the problem is the
constant and we should reload the entire address.

That's a 1-line change.  Which looks something like that attached patch.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (8 preceding siblings ...)
  2011-01-31 18:45 ` law at redhat dot com
@ 2011-02-01  3:52 ` law at redhat dot com
  2011-02-01 21:21 ` law at redhat dot com
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-02-01  3:52 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2
         AssignedTo|unassigned at gcc dot       |law at redhat dot com
                   |gnu.org                     |


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (9 preceding siblings ...)
  2011-02-01  3:52 ` law at redhat dot com
@ 2011-02-01 21:21 ` law at redhat dot com
  2011-02-02  9:51 ` ibolton at gcc dot gnu.org
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-02-01 21:21 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #8 from Jeffrey A. Law <law at redhat dot com> 2011-02-01 20:06:17 UTC ---
The potential fix seems to work fine on x86 as well.  I'm going to build a
arm-elf toolchain and see if anything else pops up during a cross build.  If
someone with real arm hardware could do a bootstrap with the potential fix
applied, it'd be greatly appreciated.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (10 preceding siblings ...)
  2011-02-01 21:21 ` law at redhat dot com
@ 2011-02-02  9:51 ` ibolton at gcc dot gnu.org
  2011-02-02 14:49 ` ibolton at gcc dot gnu.org
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-02-02  9:51 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #9 from Ian Bolton <ibolton at gcc dot gnu.org> 2011-02-02 09:50:23 UTC ---
(In reply to comment #8)
> The potential fix seems to work fine on x86 as well.  I'm going to build a
> arm-elf toolchain and see if anything else pops up during a cross build.  If
> someone with real arm hardware could do a bootstrap with the potential fix
> applied, it'd be greatly appreciated.

Thanks for nailing this one so quickly, Jeff.  I will set off a native
bootstrap and report back when done.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (11 preceding siblings ...)
  2011-02-02  9:51 ` ibolton at gcc dot gnu.org
@ 2011-02-02 14:49 ` ibolton at gcc dot gnu.org
  2011-02-02 14:51 ` law at redhat dot com
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-02-02 14:49 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #10 from Ian Bolton <ibolton at gcc dot gnu.org> 2011-02-02 14:49:02 UTC ---
(In reply to comment #8)
> The potential fix seems to work fine on x86 as well.  I'm going to build a
> arm-elf toolchain and see if anything else pops up during a cross build.  If
> someone with real arm hardware could do a bootstrap with the potential fix
> applied, it'd be greatly appreciated.

The native bootstrap was successful.

I configured with: "--with-cpu=cortex-a9 --with-float=softfp
--with-fpu=vfpv3-d16 --with-mode=thumb --enable-languages=c,c++,fortran"


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (12 preceding siblings ...)
  2011-02-02 14:49 ` ibolton at gcc dot gnu.org
@ 2011-02-02 14:51 ` law at redhat dot com
  2011-02-02 15:06 ` ibolton at gcc dot gnu.org
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-02-02 14:51 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #11 from Jeffrey A. Law <law at redhat dot com> 2011-02-02 14:51:19 UTC ---
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 02/02/11 07:49, ibolton at gcc dot gnu.org wrote:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543
> 
> --- Comment #10 from Ian Bolton <ibolton at gcc dot gnu.org> 2011-02-02 14:49:02 UTC ---
> (In reply to comment #8)
>> The potential fix seems to work fine on x86 as well.  I'm going to build a
>> arm-elf toolchain and see if anything else pops up during a cross build.  If
>> someone with real arm hardware could do a bootstrap with the potential fix
>> applied, it'd be greatly appreciated.
> 
> The native bootstrap was successful.
> 
> I configured with: "--with-cpu=cortex-a9 --with-float=softfp
> --with-fpu=vfpv3-d16 --with-mode=thumb --enable-languages=c,c++,fortran"
Thanks.  After sleeping on it, I made one tweak to the patch to avoid
potential problems with creating invalid reg+reg addresses.  I'll post
the final version of the fix shortly.

Thanks for testing,

jeff

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJNSW9YAAoJEBRtltQi2kC7S2QH/jWJFLO2hRYmkk2cTEjbO+Gj
co6DifPykbJOgYn5L80LfLDF9eDvnv2OXBis0mBeMfntUjpbZbb7EKc8uC0jdGOX
upbibjvlQxhYfBdakuQB+5IZFEQMsTK+CMRem0z3Dc5egritGe8Sw8tTDCB1txki
FAdOfmQzzNq9yGNzy2PZjadfGqWLMznHCxoSkwmM+kMiMD4C4ijjnOZde6GvbcHU
G4PKw3ZOUTu65E/HsJie9Pvvsdjm4i2ER8BP10zBH8m3+AwmqRDg8iQkv0SWR5JE
vEV4vHLk+G65GHWaGPz9+rx5xYBCH/htH1kiZA/fDA9JPbjXzFu1/22+Rbge9zY=
=a9ih
-----END PGP SIGNATURE-----


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (13 preceding siblings ...)
  2011-02-02 14:51 ` law at redhat dot com
@ 2011-02-02 15:06 ` ibolton at gcc dot gnu.org
  2011-02-02 16:52 ` law at gcc dot gnu.org
  2011-02-02 16:53 ` law at redhat dot com
  16 siblings, 0 replies; 18+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-02-02 15:06 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #12 from Ian Bolton <ibolton at gcc dot gnu.org> 2011-02-02 15:06:07 UTC ---
>> The native bootstrap was successful.
>> 
>> I configured with: "--with-cpu=cortex-a9 --with-float=softfp
>> --with-fpu=vfpv3-d16 --with-mode=thumb --enable-languages=c,c++,fortran"
>Thanks.  After sleeping on it, I made one tweak to the patch to avoid
>potential problems with creating invalid reg+reg addresses.  I'll post
>the final version of the fix shortly.

I forgot to mention that I also used the bootstrapped compiler to confirm that
the reduced test case now works.

I will re-confirm when your final patch is posted.

Thanks again.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (14 preceding siblings ...)
  2011-02-02 15:06 ` ibolton at gcc dot gnu.org
@ 2011-02-02 16:52 ` law at gcc dot gnu.org
  2011-02-02 16:53 ` law at redhat dot com
  16 siblings, 0 replies; 18+ messages in thread
From: law at gcc dot gnu.org @ 2011-02-02 16:52 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

--- Comment #13 from Jeffrey A. Law <law at gcc dot gnu.org> 2011-02-02 16:52:24 UTC ---
Author: law
Date: Wed Feb  2 16:52:21 2011
New Revision: 169533

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169533
Log:

    PR middle-end/47543
    * reload.c (find_reloads_address): Handle reg+d address where both
    components are invalid by reloading the entire address.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/reload.c


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Bug target/47543] [4.6 Regression] ICE: in extract_insn, at recog.c:2109 when building zlib
  2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
                   ` (15 preceding siblings ...)
  2011-02-02 16:52 ` law at gcc dot gnu.org
@ 2011-02-02 16:53 ` law at redhat dot com
  16 siblings, 0 replies; 18+ messages in thread
From: law at redhat dot com @ 2011-02-02 16:53 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47543

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #14 from Jeffrey A. Law <law at redhat dot com> 2011-02-02 16:53:02 UTC ---
Fixed.


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2011-02-02 16:53 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-30 12:17 [Bug target/47543] New: ICE: in extract_insn, at recog.c:2109 when building zlib silver24k at gmail dot com
2011-01-30 12:39 ` [Bug target/47543] " silver24k at gmail dot com
2011-01-30 15:11 ` mikpe at it dot uu.se
2011-01-30 17:10 ` mikpe at it dot uu.se
2011-01-31 11:54 ` ibolton at gcc dot gnu.org
2011-01-31 16:33 ` law at redhat dot com
2011-01-31 16:52 ` [Bug target/47543] [4.6 Regression] " jakub at gcc dot gnu.org
2011-01-31 17:01 ` law at redhat dot com
2011-01-31 18:24 ` law at redhat dot com
2011-01-31 18:45 ` law at redhat dot com
2011-02-01  3:52 ` law at redhat dot com
2011-02-01 21:21 ` law at redhat dot com
2011-02-02  9:51 ` ibolton at gcc dot gnu.org
2011-02-02 14:49 ` ibolton at gcc dot gnu.org
2011-02-02 14:51 ` law at redhat dot com
2011-02-02 15:06 ` ibolton at gcc dot gnu.org
2011-02-02 16:52 ` law at gcc dot gnu.org
2011-02-02 16:53 ` law at redhat dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).