public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Alexandre Oliva <aoliva@redhat.com>
To: gcc-patches@gcc.gnu.org
Subject: Re: [trunk<-vta] Re: [vtab] Permit coalescing of user variables
Date: Mon, 01 Jun 2009 07:44:00 -0000	[thread overview]
Message-ID: <oroct8z9dr.fsf@free.oliva.athome.lsd.ic.unicamp.br> (raw)
In-Reply-To: <orskikz9mh.fsf_-_@free.oliva.athome.lsd.ic.unicamp.br> (Alexandre Oliva's message of "Mon\, 01 Jun 2009 04\:38\:46 -0300")

[-- Attachment #1: Type: text/plain, Size: 786 bytes --]

On Jun  1, 2009, Alexandre Oliva <aoliva@redhat.com> wrote:

> The patch below (ping) implements two other possibilities: refraining
> from coalescing even inlined SSA names, which might enable better debug
> information to be generated, and enabling coalescing of all related
> variables, for better code at the expense of debug information.  The
> default remains unchanged.

And the patch below changes the default so that we can optimize more.
This will worsen debug information unless VTA is enabled by default, so
I request a review and approval for inclusion only after VTA or
something equivalent makes it to the trunk.

Ok to install then?

This was bootstrapped and regtested on x86_64-linux-gnu and
i686-pc-linux-gnu, along with the other patches I'm pinging in this
batch.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: gcc-ssa-coalesce-all-vars.patch --]
[-- Type: text/x-patch, Size: 1772 bytes --]

for  gcc/ChangeLog
from  Alexandre Oliva  <aoliva@redhat.com>

	* common.opt (ftree-coalesce-inlined-vars): Change default.
	* doc/invoke.texi: Document default change.  Mention
	var-tracking-assignments.

Index: gcc/common.opt
===================================================================
--- gcc/common.opt.orig	2009-05-28 20:59:37.000000000 -0300
+++ gcc/common.opt	2009-05-28 21:01:15.000000000 -0300
@@ -1171,7 +1171,7 @@ Common Report Var(flag_tree_ch) Optimiza
 Enable loop header copying on trees
 
 ftree-coalesce-inlined-vars
-Common Report Var(flag_ssa_coalesce_vars,1) Init(1) RejectNegative Optimization
+Common Report Var(flag_ssa_coalesce_vars,1) Init(2) RejectNegative Optimization
 Permit SSA coalescing of inlined variables only
 
 ftree-coalesce-vars
Index: gcc/doc/invoke.texi
===================================================================
--- gcc/doc/invoke.texi.orig	2009-05-28 20:58:46.000000000 -0300
+++ gcc/doc/invoke.texi	2009-05-28 21:01:05.000000000 -0300
@@ -6473,11 +6473,12 @@ Permit the copyrename pass to subject in
 into other variables.  This may harm debug information of such inlined
 variables, but it will keep variables of the main function apart from
 each other, such that they are more likely to contain the expected
-values in a debugging session.  This option is enabled by default.
+values in a debugging session.
 
 @item -ftree-coalesce-vars
 Permit the copyrename pass to subject all variables to SSA coalescing.
-This may severely limit the ability to debug a program.  In the negated
+This may severely limit the ability to debug an optimized program
+compiled without @option{-fvar-tracking-assignments}.  In the negated
 form, this flag prevents SSA coalescing of user variables, including
 inlined ones.
 

[-- Attachment #3: Type: text/plain, Size: 258 bytes --]



-- 
Alexandre Oliva, freedom fighter    http://FSFLA.org/~lxoliva/
You must be the change you wish to see in the world. -- Gandhi
Be Free! -- http://FSFLA.org/   FSF Latin America board member
Free Software Evangelist      Red Hat Brazil Compiler Engineer

  reply	other threads:[~2009-06-01  7:44 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-01 19:05 Alexandre Oliva
2007-10-02  9:15 ` Richard Guenther
2007-10-02 21:02 ` Andrew MacLeod
2007-10-03  1:11   ` Alexandre Oliva
2007-10-09 21:32     ` Alexandre Oliva
2009-06-01  7:39       ` [trunk<-vta] " Alexandre Oliva
2009-06-01  7:44         ` Alexandre Oliva [this message]
2009-06-01 16:11         ` Ian Lance Taylor
2009-06-01 17:35           ` Andrew MacLeod
2009-06-01 19:23             ` Alexandre Oliva
2009-06-02  9:54               ` Richard Guenther
2009-06-02 21:42                 ` Alexandre Oliva
2009-06-03  1:13                   ` Andrew MacLeod
2009-06-03 10:18                     ` Richard Guenther
2009-06-03 17:43                       ` Alexandre Oliva
2009-06-03 18:06                         ` Daniel Jacobowitz
2009-06-03 19:17                           ` Alexandre Oliva
2009-06-03 19:45                             ` Daniel Jacobowitz
2009-06-03 21:42                               ` Alexandre Oliva
2009-06-03 18:18                         ` Richard Guenther
2009-06-03 19:15                           ` Alexandre Oliva
2009-06-03 19:50                             ` Richard Guenther
2009-06-03 19:53                               ` Ian Lance Taylor
2009-10-13 21:27         ` Alexandre Oliva
2011-06-04 12:45           ` Alexandre Oliva
2011-06-04 13:02             ` Jakub Jelinek
2011-06-05 21:07               ` Alexandre Oliva
2011-06-06  2:42                 ` Alexandre Oliva
2012-04-09  5:56             ` Alexandre Oliva
2012-06-13  8:34               ` Alexandre Oliva
2012-06-13  9:48                 ` Richard Guenther

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=oroct8z9dr.fsf@free.oliva.athome.lsd.ic.unicamp.br \
    --to=aoliva@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).