public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90)
@ 2015-01-07 23:01 pangbw at gmail dot com
  2015-01-07 23:06 ` [Bug rtl-optimization/64532] " pangbw at gmail dot com
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: pangbw at gmail dot com @ 2015-01-07 23:01 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 64532
           Summary: [5 regression on ARM]internal compiler error: Max.
                    number of generated reload insns per insn is achieved
                    (90)
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: pangbw at gmail dot com

I know this ICE has been reported many times, but I still want to report it
again because I am not sure if my case is same as other reported cases.

Steps to reproduce:
1. cat y.i

__attribute__((noinline)) float s32_to_f32_imm1(int x)
{
  float y;
  __asm__ ("vcvt.f32.s32 %0, %1, #1" : "=w"(y) : "0"(x));
  return y;
}

2. ./xgcc y.i -B.  -mfloat-abi=hard  -mfpu=neon -O2
y.i: In function ‘s32_to_f32_imm1’:
y.i:6:1: internal compiler error: Max. number of generated reload insns per
insn is achieved (90)

 }
 ^
0x973325 lra_constraints(bool)
    ../../../gcc/gcc/lra-constraints.c:4306
0x95f689 lra(_IO_FILE*)


This is the GCC used by me:
./xgcc -v
Using built-in specs.
COLLECT_GCC=./xgcc
Target: arm-linux-gnueabi
Configured with: ../../gcc/configure --target=arm-linux-gnueabi
Thread model: posix
gcc version 5.0.0 20150107 (experimental) (GCC)
>From gcc-bugs-return-472428-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Jan 07 23:02:30 2015
Return-Path: <gcc-bugs-return-472428-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 11170 invoked by alias); 7 Jan 2015 23:02:29 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 11135 invoked by uid 48); 7 Jan 2015 23:02:26 -0000
From: "dominiq at lps dot ens.fr" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug ada/64349] [5 Regression] Bootstrapping Ada fails on darwin(9|10).
Date: Wed, 07 Jan 2015 23:02:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: ada
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords: build
X-Bugzilla-Severity: normal
X-Bugzilla-Who: dominiq at lps dot ens.fr
X-Bugzilla-Status: REOPENED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 5.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status resolution
Message-ID: <bug-64349-4-1u20MYJWTL@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64349-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64349-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2015-01/txt/msg00422.txt.bz2
Content-length: 668

https://gcc.gnu.org/bugzilla/show_bug.cgi?idd349

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

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

--- Comment #6 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
I still get

ld: warning: can't add line info to anonymous symbol __const@0 from s-arit64.o

for r219318 on x86_64-apple-darwin10 (I have bootstrapped r219067 with Iain's
patch at https://gcc.gnu.org/ml/gcc-patches/2014-12/msg01753.html).


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

* [Bug rtl-optimization/64532] [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
@ 2015-01-07 23:06 ` pangbw at gmail dot com
  2015-01-08  4:13 ` kugan at gcc dot gnu.org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pangbw at gmail dot com @ 2015-01-07 23:06 UTC (permalink / raw)
  To: gcc-bugs

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

baoshan <pangbw at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pangbw at gmail dot com

--- Comment #1 from baoshan <pangbw at gmail dot com> ---
One observation is that without "-mfloat-abi=hard  -mfpu=neon", I will get
this:

./xgcc y.i -B.   -O2
y.i: In function ‘s32_to_f32_imm1’:
y.i:4:3: error: inconsistent operand constraints in an ‘asm’
   __asm__ ("vcvt.f32.s32 %0, %1, #1" : "=w"(y) : "0"(x));
>From gcc-bugs-return-472430-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Jan 07 23:16:04 2015
Return-Path: <gcc-bugs-return-472430-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 17725 invoked by alias); 7 Jan 2015 23:16:03 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 17693 invoked by uid 55); 7 Jan 2015 23:15:58 -0000
From: "joseph at codesourcery dot com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c/64526] No warning on function call with excessive arguments
Date: Wed, 07 Jan 2015 23:16:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: c
X-Bugzilla-Version: 5.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: joseph at codesourcery dot com
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-64526-4-bK0KkZwZ9D@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-64526-4@http.gcc.gnu.org/bugzilla/>
References: <bug-64526-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2015-01/txt/msg00424.txt.bz2
Content-length: 308

https://gcc.gnu.org/bugzilla/show_bug.cgi?idd526

--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
"has no parameters" does not mean "has a type that includes a prototype
with no parameters".  See DR#317.

http://www.open-std.org/jtc1/sc22/wg14/www/docs/dr_317.htm


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

* [Bug rtl-optimization/64532] [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
  2015-01-07 23:06 ` [Bug rtl-optimization/64532] " pangbw at gmail dot com
@ 2015-01-08  4:13 ` kugan at gcc dot gnu.org
  2015-01-08  4:18 ` pinskia at gcc dot gnu.org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: kugan at gcc dot gnu.org @ 2015-01-08  4:13 UTC (permalink / raw)
  To: gcc-bugs

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

kugan at gcc dot gnu.org changed:

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

--- Comment #2 from kugan at gcc dot gnu.org ---
x is an integer "w" floating point constraint. I think you need a cast here as
below.

__attribute__((noinline)) float s32_to_f32_imm1(int x)
{
  float y;
  __asm__ ("vcvt.f32.s32 %0, %1, #1" : "=w"(y) : "0"((float)x));
  return y;
}


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

* [Bug rtl-optimization/64532] [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
  2015-01-07 23:06 ` [Bug rtl-optimization/64532] " pangbw at gmail dot com
  2015-01-08  4:13 ` kugan at gcc dot gnu.org
@ 2015-01-08  4:18 ` pinskia at gcc dot gnu.org
  2015-01-09  0:58 ` pangbw at gmail dot com
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu.org @ 2015-01-08  4:18 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to kugan from comment #2)
> x is an integer "w" floating point constraint. I think you need a cast here
> as below.
> 
> __attribute__((noinline)) float s32_to_f32_imm1(int x)
> {
>   float y;
>   __asm__ ("vcvt.f32.s32 %0, %1, #1" : "=w"(y) : "0"((float)x));
>   return y;
> }

Why w means the floating point register.  The instruction vcvt.f32.s32 converts
from signed 32bit int to a 32bit floating point (with an optional shift).  The
inline-asm is correct and 100% valid.


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

* [Bug rtl-optimization/64532] [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (2 preceding siblings ...)
  2015-01-08  4:18 ` pinskia at gcc dot gnu.org
@ 2015-01-09  0:58 ` pangbw at gmail dot com
  2015-01-09 11:20 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pangbw at gmail dot com @ 2015-01-09  0:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from baoshan <pangbw at gmail dot com> ---
Can someone help to 'confirm' this bug?


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

* [Bug rtl-optimization/64532] [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (3 preceding siblings ...)
  2015-01-09  0:58 ` pangbw at gmail dot com
@ 2015-01-09 11:20 ` rguenth at gcc dot gnu.org
  2015-01-15 10:08 ` [Bug rtl-optimization/64532] [4.9, 5 Regression] internal " ramana at gcc dot gnu.org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-09 11:20 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |5.0


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

* [Bug rtl-optimization/64532] [4.9, 5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (4 preceding siblings ...)
  2015-01-09 11:20 ` rguenth at gcc dot gnu.org
@ 2015-01-15 10:08 ` ramana at gcc dot gnu.org
  2015-01-19 14:56 ` [Bug target/64532] [4.9/5 " ramana at gcc dot gnu.org
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: ramana at gcc dot gnu.org @ 2015-01-15 10:08 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-01-15
                 CC|                            |ramana at gcc dot gnu.org
            Summary|[5 Regression] internal     |[4.9, 5 Regression]
                   |compiler error: Max. number |internal compiler error:
                   |of generated reload insns   |Max. number of generated
                   |per insn is achieved (90)   |reload insns per insn is
                   |                            |achieved (90)
     Ever confirmed|0                           |1
      Known to fail|                            |5.0

--- Comment #5 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> ---
Looks like an lra issue. Works on 4.9 with -mno-lra but fails on head of 4.9
branch without -mno-lra.


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

* [Bug target/64532] [4.9/5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (5 preceding siblings ...)
  2015-01-15 10:08 ` [Bug rtl-optimization/64532] [4.9, 5 Regression] internal " ramana at gcc dot gnu.org
@ 2015-01-19 14:56 ` ramana at gcc dot gnu.org
  2015-01-19 14:57 ` ramana at gcc dot gnu.org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: ramana at gcc dot gnu.org @ 2015-01-19 14:56 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> ---
Author: ramana
Date: Mon Jan 19 14:55:28 2015
New Revision: 219847

URL: https://gcc.gnu.org/viewcvs?rev=219847&root=gcc&view=rev
Log:
Improve documentation of register constraints.

While looking at PR target/64532- I realized we haven't documented all
the register constraints. I'm not documenting the other immediate
constraints as it is not clear to me how much of that is actually
useful yet and I don't have the time this afternoon to clean this up.

Built documentation and looked at it.

Applied.

Ramana


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/doc/md.texi


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

* [Bug target/64532] [4.9/5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (6 preceding siblings ...)
  2015-01-19 14:56 ` [Bug target/64532] [4.9/5 " ramana at gcc dot gnu.org
@ 2015-01-19 14:57 ` ramana at gcc dot gnu.org
  2015-01-19 17:40 ` pangbw at gmail dot com
  2015-01-20  8:13 ` ramana at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: ramana at gcc dot gnu.org @ 2015-01-19 14:57 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

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


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

* [Bug target/64532] [4.9/5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (7 preceding siblings ...)
  2015-01-19 14:57 ` ramana at gcc dot gnu.org
@ 2015-01-19 17:40 ` pangbw at gmail dot com
  2015-01-20  8:13 ` ramana at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: pangbw at gmail dot com @ 2015-01-19 17:40 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from baoshan <pangbw at gmail dot com> ---
I have a second thought:
As the 'y' is declared as float, should GCC infer the register is a single
float register even the constraint is 'w' ?


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

* [Bug target/64532] [4.9/5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
  2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
                   ` (8 preceding siblings ...)
  2015-01-19 17:40 ` pangbw at gmail dot com
@ 2015-01-20  8:13 ` ramana at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: ramana at gcc dot gnu.org @ 2015-01-20  8:13 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> ---
(In reply to baoshan from comment #10)
> I have a second thought:
> As the 'y' is declared as float, should GCC infer the register is a single
> float register even the constraint is 'w' ?

I don't know an easy way today to do that - yes we could have better error
messages but as of now I'd rather just document this and move on.


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

end of thread, other threads:[~2015-01-20  8:13 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-07 23:01 [Bug rtl-optimization/64532] New: [5 regression on ARM]internal compiler error: Max. number of generated reload insns per insn is achieved (90) pangbw at gmail dot com
2015-01-07 23:06 ` [Bug rtl-optimization/64532] " pangbw at gmail dot com
2015-01-08  4:13 ` kugan at gcc dot gnu.org
2015-01-08  4:18 ` pinskia at gcc dot gnu.org
2015-01-09  0:58 ` pangbw at gmail dot com
2015-01-09 11:20 ` rguenth at gcc dot gnu.org
2015-01-15 10:08 ` [Bug rtl-optimization/64532] [4.9, 5 Regression] internal " ramana at gcc dot gnu.org
2015-01-19 14:56 ` [Bug target/64532] [4.9/5 " ramana at gcc dot gnu.org
2015-01-19 14:57 ` ramana at gcc dot gnu.org
2015-01-19 17:40 ` pangbw at gmail dot com
2015-01-20  8:13 ` 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).