public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/43546] [4.4/4.5/4.6 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
@ 2010-10-01 12:10 ` jakub at gcc dot gnu.org
  2011-04-16 11:15 ` [Bug target/43546] [4.4/4.5/4.6/4.7 " jakub at gcc dot gnu.org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-10-01 12:10 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.4.5                       |4.4.6


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

* [Bug target/43546] [4.4/4.5/4.6/4.7 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
  2010-10-01 12:10 ` [Bug target/43546] [4.4/4.5/4.6 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm jakub at gcc dot gnu.org
@ 2011-04-16 11:15 ` jakub at gcc dot gnu.org
  2012-03-13 14:27 ` [Bug target/43546] [4.5/4.6/4.7/4.8 " jakub at gcc dot gnu.org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-04-16 11:15 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.4.6                       |4.4.7


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

* [Bug target/43546] [4.5/4.6/4.7/4.8 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
  2010-10-01 12:10 ` [Bug target/43546] [4.4/4.5/4.6 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm jakub at gcc dot gnu.org
  2011-04-16 11:15 ` [Bug target/43546] [4.4/4.5/4.6/4.7 " jakub at gcc dot gnu.org
@ 2012-03-13 14:27 ` jakub at gcc dot gnu.org
  2012-07-02 12:16 ` rguenth at gcc dot gnu.org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-03-13 14:27 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.4.7                       |4.5.4

--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-03-13 12:46:40 UTC ---
4.4 branch is being closed, moving to 4.5.4 target.


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

* [Bug target/43546] [4.5/4.6/4.7/4.8 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2012-03-13 14:27 ` [Bug target/43546] [4.5/4.6/4.7/4.8 " jakub at gcc dot gnu.org
@ 2012-07-02 12:16 ` rguenth at gcc dot gnu.org
  2012-11-11 20:49 ` [Bug target/43546] [4.6/4.7/4.8 " steven at gcc dot gnu.org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-07-02 12:16 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.5.4                       |4.6.4

--- Comment #11 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-02 12:15:31 UTC ---
The 4.5 branch is being closed, adjusting target milestone.


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

* [Bug target/43546] [4.6/4.7/4.8 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2012-07-02 12:16 ` rguenth at gcc dot gnu.org
@ 2012-11-11 20:49 ` steven at gcc dot gnu.org
  2013-04-12 15:17 ` [Bug target/43546] [4.7/4.8/4.9 " jakub at gcc dot gnu.org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: steven at gcc dot gnu.org @ 2012-11-11 20:49 UTC (permalink / raw)
  To: gcc-bugs


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

Steven Bosscher <steven at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ra
   Last reconfirmed|2012-01-04 00:00:00         |2012-11-11 0:00

--- Comment #12 from Steven Bosscher <steven at gcc dot gnu.org> 2012-11-11 20:49:07 UTC ---
Fails with LRA also at r193411:

t.c: In function 'foo':
t.c:2:1: internal compiler error: in assign_stack_local_1, at function.c:400
 void foo() { bar(1.0); }
 ^
0x7de43d assign_stack_local_1(machine_mode, long, int, int)
        ../../trunk/gcc/function.c:400
0x7defca assign_stack_local(machine_mode, long, int)
        ../../trunk/gcc/function.c:507
0x8ef086 assign_mem_slot
        ../../trunk/gcc/lra-spills.c:166
0x8ef32d lra_spill()
        ../../trunk/gcc/lra-spills.c:551
0x8d29c7 lra(_IO_FILE*)
        ../../trunk/gcc/lra.c:2320
0x882ea0 do_reload
        ../../trunk/gcc/ira.c:4624
0x883089 rest_of_handle_reload
        ../../trunk/gcc/ira.c:4737
Please submit a full bug report,
with preprocessed source if appropriate.


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

* [Bug target/43546] [4.7/4.8/4.9 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2012-11-11 20:49 ` [Bug target/43546] [4.6/4.7/4.8 " steven at gcc dot gnu.org
@ 2013-04-12 15:17 ` jakub at gcc dot gnu.org
  2014-02-12 12:08 ` jakub at gcc dot gnu.org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2013-04-12 15:17 UTC (permalink / raw)
  To: gcc-bugs


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.6.4                       |4.7.4

--- Comment #13 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-04-12 15:16:31 UTC ---
GCC 4.6.4 has been released and the branch has been closed.


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

* [Bug target/43546] [4.7/4.8/4.9 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2013-04-12 15:17 ` [Bug target/43546] [4.7/4.8/4.9 " jakub at gcc dot gnu.org
@ 2014-02-12 12:08 ` jakub at gcc dot gnu.org
  2014-02-12 12:18 ` jakub at gcc dot gnu.org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-12 12:08 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 32114
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32114&action=edit
gcc49-pr43546.patch

This untested patch fixes this for me, the dynamic stack realignment code is
then aware of the DFmode that might need to be possibly spilled.
The cost patch isn't wrong either, but at that level we really can't determine
if the constant load will be zero cost (when we will attempt to load it into a
i387 stack register) or more expensive (if it is loaded into a SSE register).


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

* [Bug target/43546] [4.7/4.8/4.9 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2014-02-12 12:08 ` jakub at gcc dot gnu.org
@ 2014-02-12 12:18 ` jakub at gcc dot gnu.org
  2014-02-13 13:20 ` jakub at gcc dot gnu.org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-12 12:18 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Yet another option, perhaps better, would be to add a new predicate, that would
return true for a MEM operand for which avoid_constant_pool_reference returns a
CONST_DOUBLE floating point constant (other than signalling NaN?), and add
another define_insn before *extendsfdf2_i387 that would use that predicate on
the second operand and would do what *extendsfdf2_i387 does, but have also a
"=x", "m" alternative that would be later on split into a load of the constant
widened to DFmode in memory.  Then we should get better code when trying to
load a DFmode constant into a DFmode register and compress_float_constant
decided to compress it, while it isn't a win in the end.

Or both my patch and this change.


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

* [Bug target/43546] [4.7/4.8/4.9 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (7 preceding siblings ...)
  2014-02-12 12:18 ` jakub at gcc dot gnu.org
@ 2014-02-13 13:20 ` jakub at gcc dot gnu.org
  2014-02-13 13:23 ` [Bug target/43546] [4.7/4.8 " jakub at gcc dot gnu.org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-13 13:20 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Thu Feb 13 13:20:06 2014
New Revision: 207757

URL: http://gcc.gnu.org/viewcvs?rev=207757&root=gcc&view=rev
Log:
    PR target/43546
    * expr.c (compress_float_constant): If x is a hard register,
    extend into a pseudo and then move to x.

    * gcc.target/i386/pr43546.c: New test.

Added:
    trunk/gcc/testsuite/gcc.target/i386/pr43546.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/expr.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug target/43546] [4.7/4.8 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (8 preceding siblings ...)
  2014-02-13 13:20 ` jakub at gcc dot gnu.org
@ 2014-02-13 13:23 ` jakub at gcc dot gnu.org
  2014-03-06  8:03 ` jakub at gcc dot gnu.org
  2014-06-12 12:55 ` [Bug target/43546] [4.7 " rguenth at gcc dot gnu.org
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-13 13:23 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |4.9.0
            Summary|[4.7/4.8/4.9 Regression]    |[4.7/4.8 Regression] ICE:
                   |ICE: in                     |in assign_stack_local_1, at
                   |assign_stack_local_1, at    |function.c:353 with
                   |function.c:353 with         |-mpreferred-stack-boundary=
                   |-mpreferred-stack-boundary= |2 -msseregparm
                   |2 -msseregparm              |
      Known to fail|                            |4.8.2

--- Comment #17 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed on the trunk so far.


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

* [Bug target/43546] [4.7/4.8 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (9 preceding siblings ...)
  2014-02-13 13:23 ` [Bug target/43546] [4.7/4.8 " jakub at gcc dot gnu.org
@ 2014-03-06  8:03 ` jakub at gcc dot gnu.org
  2014-06-12 12:55 ` [Bug target/43546] [4.7 " rguenth at gcc dot gnu.org
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-03-06  8:03 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #18 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Thu Mar  6 08:02:46 2014
New Revision: 208369

URL: http://gcc.gnu.org/viewcvs?rev=208369&root=gcc&view=rev
Log:
    Backport from mainline
    2014-02-13  Jakub Jelinek  <jakub@redhat.com>

    PR target/43546
    * expr.c (compress_float_constant): If x is a hard register,
    extend into a pseudo and then move to x.

    * gcc.target/i386/pr43546.c: New test.

Added:
    branches/gcc-4_8-branch/gcc/testsuite/gcc.target/i386/pr43546.c
Modified:
    branches/gcc-4_8-branch/gcc/ChangeLog
    branches/gcc-4_8-branch/gcc/expr.c
    branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


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

* [Bug target/43546] [4.7 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm
       [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
                   ` (10 preceding siblings ...)
  2014-03-06  8:03 ` jakub at gcc dot gnu.org
@ 2014-06-12 12:55 ` rguenth at gcc dot gnu.org
  11 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-06-12 12:55 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
   Target Milestone|4.7.4                       |4.8.3

--- Comment #19 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed in 4.8.3.


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

end of thread, other threads:[~2014-06-12 12:55 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-43546-4@http.gcc.gnu.org/bugzilla/>
2010-10-01 12:10 ` [Bug target/43546] [4.4/4.5/4.6 Regression] ICE: in assign_stack_local_1, at function.c:353 with -mpreferred-stack-boundary=2 -msseregparm jakub at gcc dot gnu.org
2011-04-16 11:15 ` [Bug target/43546] [4.4/4.5/4.6/4.7 " jakub at gcc dot gnu.org
2012-03-13 14:27 ` [Bug target/43546] [4.5/4.6/4.7/4.8 " jakub at gcc dot gnu.org
2012-07-02 12:16 ` rguenth at gcc dot gnu.org
2012-11-11 20:49 ` [Bug target/43546] [4.6/4.7/4.8 " steven at gcc dot gnu.org
2013-04-12 15:17 ` [Bug target/43546] [4.7/4.8/4.9 " jakub at gcc dot gnu.org
2014-02-12 12:08 ` jakub at gcc dot gnu.org
2014-02-12 12:18 ` jakub at gcc dot gnu.org
2014-02-13 13:20 ` jakub at gcc dot gnu.org
2014-02-13 13:23 ` [Bug target/43546] [4.7/4.8 " jakub at gcc dot gnu.org
2014-03-06  8:03 ` jakub at gcc dot gnu.org
2014-06-12 12:55 ` [Bug target/43546] [4.7 " rguenth 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).