public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
@ 2014-12-06 15:15 siarhei.siamashka at gmail dot com
  2014-12-08 13:34 ` [Bug target/64208] " rguenth at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: siarhei.siamashka at gmail dot com @ 2014-12-06 15:15 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

            Bug ID: 64208
           Summary: [4.9 Regression][iwmmxt] ICE: internal compiler error:
                    Max. number of generated reload insns per insn is
                    achieved (90)
           Product: gcc
           Version: 4.9.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: siarhei.siamashka at gmail dot com

GCC 4.9.2

$ arm-none-linux-gnueabi-gcc -c -O1 -march=iwmmxt test.c
test.c: In function 'x2':
test.c:16:1: internal compiler error: Max. number of generated reload insns per
insn is achieved (90)

The test program itself (generated by creduce):

/********************************/
long long x6(void);
void x7(long long, long long);
void x8(long long);

int x0;
long long *x1;

void x2(void) {
  long long *x3 = x1;
  while (x1) {
    long long x4 = x0, x5 = x6();
    x7(x4, x5);
    x8(x5);
    *x3 = 0;
  }
}
/********************************/


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
@ 2014-12-08 13:34 ` rguenth at gcc dot gnu.org
  2014-12-08 13:42 ` ktkachov at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-12-08 13:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ra
             Target|                            |arm-none-linux-gnueabi
          Component|rtl-optimization            |target
   Target Milestone|---                         |4.9.3


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
  2014-12-08 13:34 ` [Bug target/64208] " rguenth at gcc dot gnu.org
@ 2014-12-08 13:42 ` ktkachov at gcc dot gnu.org
  2015-03-17 15:41 ` yroux at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: ktkachov at gcc dot gnu.org @ 2014-12-08 13:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

ktkachov at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2014-12-08
                 CC|                            |ktkachov at gcc dot gnu.org
      Known to work|                            |4.8.4, 5.0
     Ever confirmed|0                           |1
      Known to fail|                            |4.9.2

--- Comment #1 from ktkachov at gcc dot gnu.org ---
Confirmed. On trunk and 4.8.4 it works fine though.
-mno-lra works. Trying other march values didn't trigger this for me.
Only iwmmxt and iwmmxt2 triggered this.


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
  2014-12-08 13:34 ` [Bug target/64208] " rguenth at gcc dot gnu.org
  2014-12-08 13:42 ` ktkachov at gcc dot gnu.org
@ 2015-03-17 15:41 ` yroux at gcc dot gnu.org
  2015-03-17 15:57 ` yroux at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: yroux at gcc dot gnu.org @ 2015-03-17 15:41 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

Yvan Roux <yroux at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |yroux at gcc dot gnu.org
           Assignee|unassigned at gcc dot gnu.org      |yroux at gcc dot gnu.org

--- Comment #2 from Yvan Roux <yroux at gcc dot gnu.org> ---
Regression was introduced on trunk and 4.9 branch by fix of PR
rtl-optimization/60969 and then workaround by r211798 (-fuse-caller-save enable
for ARM).

The PR fix changes some IRA cost which makes it choose a IWMMXT_REGS (instead
of a GENERAL_REGS one) for the result of iwmmxt_arm_movdi insn and the
alternatives of this pattern make LRA stuck in a loop.

The -fuse-caller-save patch fixed the issue because it adds IP and CC cloobers
to CALL_INSN_FUNCTION_USAGE, which changes the register allocation (a
GENERAL_REGS is selected this time), but the real issue is in the alternatives
description of iwmmxt_arm_movdi insn.  I've a patch for it that I'll submit.


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
                   ` (2 preceding siblings ...)
  2015-03-17 15:41 ` yroux at gcc dot gnu.org
@ 2015-03-17 15:57 ` yroux at gcc dot gnu.org
  2015-05-06 14:24 ` yroux at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: yroux at gcc dot gnu.org @ 2015-03-17 15:57 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

--- Comment #3 from Yvan Roux <yroux at gcc dot gnu.org> ---
Notice that this bug is latent on trunk.


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
                   ` (3 preceding siblings ...)
  2015-03-17 15:57 ` yroux at gcc dot gnu.org
@ 2015-05-06 14:24 ` yroux at gcc dot gnu.org
  2015-05-06 14:33 ` yroux at gcc dot gnu.org
  2015-05-21  9:15 ` ramana at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: yroux at gcc dot gnu.org @ 2015-05-06 14:24 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

--- Comment #4 from Yvan Roux <yroux at gcc dot gnu.org> ---
Author: yroux
Date: Wed May  6 14:23:57 2015
New Revision: 222853

URL: https://gcc.gnu.org/viewcvs?rev=222853&root=gcc&view=rev
Log:
gcc/
2015-05-06  Yvan Roux  <yvan.roux@linaro.org>

        PR target/64208
        * config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Cleanup redundant
        alternatives.

gcc/testsuite/
2015-05-06  Yvan Roux  <yvan.roux@linaro.org>

        PR target/64208
        * gcc.target/arm/pr64208.c: New test.


Added:
    trunk/gcc/testsuite/gcc.target/arm/pr64208.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/arm/iwmmxt.md
    trunk/gcc/testsuite/ChangeLog


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
                   ` (4 preceding siblings ...)
  2015-05-06 14:24 ` yroux at gcc dot gnu.org
@ 2015-05-06 14:33 ` yroux at gcc dot gnu.org
  2015-05-21  9:15 ` ramana at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: yroux at gcc dot gnu.org @ 2015-05-06 14:33 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

--- Comment #5 from Yvan Roux <yroux at gcc dot gnu.org> ---
The latent bug on trunk is now fixed, but the issue is still present in 4.9.2
branch as the patch needs validation on that branch.  I don't plan to validate
it right now, as I don't always have access to the Cubox I validate trunk patch
on and it's really long to do it.


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

* [Bug target/64208] [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
                   ` (5 preceding siblings ...)
  2015-05-06 14:33 ` yroux at gcc dot gnu.org
@ 2015-05-21  9:15 ` ramana at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: ramana at gcc dot gnu.org @ 2015-05-21  9:15 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64208

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
                 CC|                            |ramana at gcc dot gnu.org
         Resolution|---                         |FIXED
   Target Milestone|4.9.3                       |6.0

--- Comment #6 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> ---
Fixed on trunk.


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

end of thread, other threads:[~2015-05-21  9:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-06 15:15 [Bug rtl-optimization/64208] New: [4.9 Regression][iwmmxt] ICE: internal compiler error: Max. number of generated reload insns per insn is achieved (90) siarhei.siamashka at gmail dot com
2014-12-08 13:34 ` [Bug target/64208] " rguenth at gcc dot gnu.org
2014-12-08 13:42 ` ktkachov at gcc dot gnu.org
2015-03-17 15:41 ` yroux at gcc dot gnu.org
2015-03-17 15:57 ` yroux at gcc dot gnu.org
2015-05-06 14:24 ` yroux at gcc dot gnu.org
2015-05-06 14:33 ` yroux at gcc dot gnu.org
2015-05-21  9:15 ` ramana at gcc dot gnu.org

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).