public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Daniel Berlin <dberlin@dberlin.org>
To: kenner@vlsi1.ultra.nyu.edu (Richard Kenner)
Cc: gcc-patches@gcc.gnu.org, mark@codesourcery.com
Subject: Re: Patch to allow Ada to work with tree-ssa
Date: Tue, 22 Jun 2004 22:16:00 -0000	[thread overview]
Message-ID: <E47C7FAA-C48F-11D8-8402-000A95DA505C@dberlin.org> (raw)
In-Reply-To: <10406222028.AA10260@vlsi1.ultra.nyu.edu>


On Jun 22, 2004, at 4:28 PM, Richard Kenner wrote:

>     Since Richard Henderson and Zack seem to think it's best, why 
> don't you
>     just create new tree nodes for these variable-length cases?  That 
> seems
>     to be the consensus point of view on how to solve the problem.
>
> Except that the authors of the optimizers haven't weighed in here yet
> and they were very much against adding new nodes to GIMPLE, which is
> what this would be doing.  Having played with some of that code, I can
> tell you that it won't be pleasant to add all the extra cases to
> deal with the additional nodes.

As a part who writes optimizers, as a general principle, i'm very 
against adding nodes to GIMPLE.
However, if it's a node that is just a variable sized analogue of a 
node that already exists in the grammar, and retains the same basic 
grammar as the old node, it's not that a big a deal.

IE if you allow VARIABLE_ARRAY_REF (or whatever) *only* where you 
currently allow array_ref, it's not that big a deal from an optimizer 
perspective.

It's when you start making significant actual grammar changes that make 
GIMPLE much more complex, that the optimizers run into problems.

The most painful changes in the optimizers and other walkers i've had 
to deal with were when we started allowing things like ADDR_EXPR's in 
call arguments (at one point that wasn't allowed), when we started 
allowing INDIRECT_REFS on both sides of the same expression (at one 
point that wasn't allowed), etc.

In other words, things that significantly modified the shape of 
expressions you would see.

Having a VARIABLE_ARRAY_REF (or whatever it was, i keep forgetting) 
exactly where you allow array_ref, doesn't change the shape of 
expressions you see much, if at all.

--Dan

  parent reply	other threads:[~2004-06-22 21:05 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-22 21:10 Richard Kenner
2004-06-22 21:12 ` Mark Mitchell
2004-06-22 22:16 ` Daniel Berlin [this message]
  -- strict thread matches above, loose matches on Subject: below --
2004-07-29 19:02 Richard Kenner
2004-07-29 18:43 Richard Kenner
2004-07-29 17:12 Richard Kenner
2004-07-29 17:13 ` Diego Novillo
2004-07-29 17:57 ` Richard Henderson
2004-06-25 15:28 Richard Kenner
2004-06-28 15:09 ` Paolo Bonzini
2004-06-24 15:58 Richard Kenner
2004-06-24 16:04 ` Nathan Sidwell
2004-06-25 14:43 ` Joseph S. Myers
2004-06-23  5:54 Richard Kenner
2004-06-23  2:32 Richard Kenner
2004-06-23  4:54 ` Bryce McKinlay
2004-06-23  0:16 Richard Kenner
2004-06-22 23:05 Richard Kenner
2004-06-23 11:42 ` Nathan Sidwell
2004-06-22 22:18 Richard Kenner
2004-06-23  1:07 ` Richard Henderson
2004-06-22 21:30 Richard Kenner
2004-06-22 22:04 ` Paul Brook
2004-06-22 21:27 Richard Kenner
2004-06-22 21:29 ` Mark Mitchell
2004-06-22 21:07 Richard Kenner
2004-06-22 21:12 ` Bryce McKinlay
2004-06-22 21:05 Richard Kenner
2004-06-22 21:01 Richard Kenner
2004-06-22 20:54 Richard Kenner
2004-06-22 21:06 ` Paul Brook
2004-06-22 21:37 ` Richard Henderson
2004-06-22 20:44 Richard Kenner
2004-06-22 21:03 ` Mark Mitchell
2004-06-23 20:58 ` Geoffrey Keating
2004-06-22 20:40 Richard Kenner
2004-06-22 22:02 ` Nathan Sidwell
2004-06-22 22:27   ` Joseph S. Myers
2004-06-22 20:23 Richard Kenner
2004-06-22 20:37 ` Joseph S. Myers
2004-06-23 20:47 ` Geoffrey Keating
2004-06-24 14:59   ` Joseph S. Myers
2004-06-24 16:26     ` Richard Earnshaw
2004-06-24 19:57       ` Laurent GUERBY
2004-06-24 20:06         ` Diego Novillo
2004-06-24 20:24           ` Andrew Pinski
2004-06-24 22:35             ` Laurent GUERBY
2004-06-24 21:33           ` Laurent GUERBY
2004-06-24 21:01         ` Joseph S. Myers
2004-06-25 14:51         ` Richard Earnshaw
2004-06-22 20:22 Richard Kenner
2004-06-22 20:30 ` Mark Mitchell
2004-06-22 19:05 Richard Kenner
2004-06-22 20:10 ` Joseph S. Myers
2004-06-22 20:27 ` Andrew Haley
     [not found] <10406221359.AA05860@vlsi1.ultra.nyu.edu>
2004-06-22 18:47 ` Richard Henderson
2004-06-22 18:33 Richard Kenner
2004-06-22 18:19 Richard Kenner
2004-06-22 18:36 ` Nathan Sidwell
2004-06-22 18:37   ` Nathan Sidwell
2004-06-22 18:45 ` Mark Mitchell
2004-06-22 17:05 Richard Kenner
2004-06-22 17:21 ` Andrew Haley
2004-06-22 19:01   ` Richard Henderson
2004-06-22 16:34 Richard Kenner
2004-06-22 16:33 Richard Kenner
2004-06-22 17:46 ` Mark Mitchell
2004-06-22 18:17   ` Joseph S. Myers
2004-06-22 18:52   ` Richard Henderson
2004-06-22 19:37     ` Zack Weinberg
2004-06-22  7:05 Richard Kenner
2004-06-22  7:29 ` Mark Mitchell
2004-06-22  9:14   ` Andrew Pinski
2004-06-22 14:16   ` Andrew Haley
2004-06-22 11:00 ` Richard Henderson
2004-06-22 13:52 ` Ranjit Mathew
2004-07-29 17:02 ` Diego Novillo

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=E47C7FAA-C48F-11D8-8402-000A95DA505C@dberlin.org \
    --to=dberlin@dberlin.org \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=kenner@vlsi1.ultra.nyu.edu \
    --cc=mark@codesourcery.com \
    /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).