public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations
@ 2011-04-05  8:43 rearnsha at gcc dot gnu.org
  2011-04-05  9:22 ` [Bug rtl-optimization/48455] " ebotcazou at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2011-04-05  8:43 UTC (permalink / raw)
  To: gcc-bugs

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

           Summary: Huge code size regression for all ARM configurations
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: rearnsha@gcc.gnu.org


SVN rev 171649 has caused huge code size (>3%) regressions on ARM, particularly
when compiling for Thumb2 or when using VFP.  This is equivalent to reversing
all the improvements of the last 2 years.

How to reproduce

Use the CSiBE benchmark. (ttp://www.inf.u-szeged.hu/csibe/)


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

* [Bug rtl-optimization/48455] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
@ 2011-04-05  9:22 ` ebotcazou at gcc dot gnu.org
  2011-04-05 11:21 ` [Bug rtl-optimization/48455] [4.7 Regression] " rguenth at gcc dot gnu.org
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-04-05  9:22 UTC (permalink / raw)
  To: gcc-bugs

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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

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

--- Comment #1 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-04-05 09:17:48 UTC ---
Probably related to PR rtl-opt/48434.


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
  2011-04-05  9:22 ` [Bug rtl-optimization/48455] " ebotcazou at gcc dot gnu.org
@ 2011-04-05 11:21 ` rguenth at gcc dot gnu.org
  2011-04-05 18:00 ` steven at gcc dot gnu.org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-04-05 11:21 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.7.0
            Summary|Huge code size regression   |[4.7 Regression] Huge code
                   |for all ARM configurations  |size regression for all ARM
                   |                            |configurations


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
  2011-04-05  9:22 ` [Bug rtl-optimization/48455] " ebotcazou at gcc dot gnu.org
  2011-04-05 11:21 ` [Bug rtl-optimization/48455] [4.7 Regression] " rguenth at gcc dot gnu.org
@ 2011-04-05 18:00 ` steven at gcc dot gnu.org
  2011-04-06 16:58 ` vmakarov at redhat dot com
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: steven at gcc dot gnu.org @ 2011-04-05 18:00 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #2 from Steven Bosscher <steven at gcc dot gnu.org> 2011-04-05 18:00:12 UTC ---
Do you have compiler options for a particularly bad configuration? 
Which benchmark files grow the most?


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2011-04-05 18:00 ` steven at gcc dot gnu.org
@ 2011-04-06 16:58 ` vmakarov at redhat dot com
  2011-04-06 20:46 ` ramana at gcc dot gnu.org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: vmakarov at redhat dot com @ 2011-04-06 16:58 UTC (permalink / raw)
  To: gcc-bugs

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

Vladimir Makarov <vmakarov at redhat dot com> changed:

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

--- Comment #3 from Vladimir Makarov <vmakarov at redhat dot com> 2011-04-06 16:58:02 UTC ---
That is a huge degradation. I am going to work on it.

Could you provide me a small test?  I can not even download CSiBE.  Something
wrong with their web-server.


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2011-04-06 16:58 ` vmakarov at redhat dot com
@ 2011-04-06 20:46 ` ramana at gcc dot gnu.org
  2011-04-07 16:00 ` rearnsha at gcc dot gnu.org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: ramana at gcc dot gnu.org @ 2011-04-06 20:46 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |missed-optimization
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011.04.06 20:46:33
                 CC|                            |ramana at gcc dot gnu.org
     Ever Confirmed|0                           |1


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2011-04-06 20:46 ` ramana at gcc dot gnu.org
@ 2011-04-07 16:00 ` rearnsha at gcc dot gnu.org
  2011-04-08 13:02 ` rearnsha at gcc dot gnu.org
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2011-04-07 16:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Richard Earnshaw <rearnsha at gcc dot gnu.org> 2011-04-07 16:00:04 UTC ---
Created attachment 23914
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23914
first testcase

Compile with -Os -mcpu=arm7tdmi -marm -fno-short-enums -fno-builtin


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2011-04-07 16:00 ` rearnsha at gcc dot gnu.org
@ 2011-04-08 13:02 ` rearnsha at gcc dot gnu.org
  2011-04-13 15:22 ` vmakarov at redhat dot com
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2011-04-08 13:02 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Richard Earnshaw <rearnsha at gcc dot gnu.org> 2011-04-08 13:01:41 UTC ---
Created attachment 23928
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23928
second testcase

Compile with -Os -mcpu=arm7tdmi -marm -fno-short-enums

Note, it looks like a common problem in compiling this file is that the
compiler has created a CSE of SP+const which now needs another call-saved reg,
rather than re-materializing the value on each use.


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2011-04-08 13:02 ` rearnsha at gcc dot gnu.org
@ 2011-04-13 15:22 ` vmakarov at redhat dot com
  2011-04-13 18:27 ` vmakarov at gcc dot gnu.org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: vmakarov at redhat dot com @ 2011-04-13 15:22 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Vladimir Makarov <vmakarov at redhat dot com> 2011-04-13 15:21:23 UTC ---
I found one problem with reg equivalences.  They were just ignored.  It is a
result of bad merging the big IRA patch and changes in IRA for last half year.

I found the problem solution improves the code size (at least for -O2).  I'll
send the patch today.

But I guess it does not solve all the code size degradation.  Therefore I
continue my work on the PR.

Thanks for the small tests, Richard.  It saved a lot of my time.


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2011-04-13 15:22 ` vmakarov at redhat dot com
@ 2011-04-13 18:27 ` vmakarov at gcc dot gnu.org
  2011-08-02 13:58 ` rguenth at gcc dot gnu.org
  2011-11-23 19:00 ` vmakarov at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: vmakarov at gcc dot gnu.org @ 2011-04-13 18:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Vladimir Makarov <vmakarov at gcc dot gnu.org> 2011-04-13 18:26:55 UTC ---
Author: vmakarov
Date: Wed Apr 13 18:26:52 2011
New Revision: 172389

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=172389
Log:
2011-04-13  Vladimir Makarov  <vmakarov@redhat.com>

    PR rtl-optimization/48455
    * ira-costs.c (find_costs_and_classes): Use i_mem_cost instead of
    `temp_costs->mem_cost'.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/ira-costs.c


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2011-04-13 18:27 ` vmakarov at gcc dot gnu.org
@ 2011-08-02 13:58 ` rguenth at gcc dot gnu.org
  2011-11-23 19:00 ` vmakarov at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-08-02 13:58 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #8 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-08-02 13:56:55 UTC ---
Fixed I suppose.


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

* [Bug rtl-optimization/48455] [4.7 Regression] Huge code size regression for all ARM configurations
  2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2011-08-02 13:58 ` rguenth at gcc dot gnu.org
@ 2011-11-23 19:00 ` vmakarov at gcc dot gnu.org
  10 siblings, 0 replies; 12+ messages in thread
From: vmakarov at gcc dot gnu.org @ 2011-11-23 19:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Vladimir Makarov <vmakarov at gcc dot gnu.org> 2011-11-23 18:51:21 UTC ---
Author: vmakarov
Date: Wed Nov 23 18:51:17 2011
New Revision: 181675

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181675
Log:
2011-11-23  Vladimir Makarov  <vmakarov@redhat.com>

    PR rtl-optimization/48455
    * doc/invoke.texi (-fira-region): Document default values.

    * flags-types.h (enum ira_region): Add new value
    IRA_REGION_AUTODETECT.

    * common.opt (fira-region): Set up initial value to
    IRA_REGION_AUTODETECT.

    * toplev.c (process_options): Set up flag_ira_region depending on
    -O options.

    * ira.c (ira.c): Remove optimize guard for ira_build.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/common.opt
    trunk/gcc/doc/invoke.texi
    trunk/gcc/flag-types.h
    trunk/gcc/ira.c
    trunk/gcc/toplev.c


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

end of thread, other threads:[~2011-11-23 18:53 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-05  8:43 [Bug rtl-optimization/48455] New: Huge code size regression for all ARM configurations rearnsha at gcc dot gnu.org
2011-04-05  9:22 ` [Bug rtl-optimization/48455] " ebotcazou at gcc dot gnu.org
2011-04-05 11:21 ` [Bug rtl-optimization/48455] [4.7 Regression] " rguenth at gcc dot gnu.org
2011-04-05 18:00 ` steven at gcc dot gnu.org
2011-04-06 16:58 ` vmakarov at redhat dot com
2011-04-06 20:46 ` ramana at gcc dot gnu.org
2011-04-07 16:00 ` rearnsha at gcc dot gnu.org
2011-04-08 13:02 ` rearnsha at gcc dot gnu.org
2011-04-13 15:22 ` vmakarov at redhat dot com
2011-04-13 18:27 ` vmakarov at gcc dot gnu.org
2011-08-02 13:58 ` rguenth at gcc dot gnu.org
2011-11-23 19:00 ` vmakarov 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).