From: Michael Matz <matz@suse.de>
To: Lawrence Crowl <crowl@googlers.com>
Cc: "gcc@gcc.gnu.org" <gcc@gcc.gnu.org>
Subject: Re: Simplifying Gimple Generation
Date: Fri, 16 Nov 2012 12:44:00 -0000 [thread overview]
Message-ID: <alpine.LNX.2.00.1211161339060.21868@wotan.suse.de> (raw)
In-Reply-To: <CAGqM8fbeEONGiT2b6sRv0vWxuomKCQ31NZs_UcibKv2XXDKeOg@mail.gmail.com>
Hi,
On Thu, 15 Nov 2012, Lawrence Crowl wrote:
> They allow us to use the same name for the same actions in two
> different contexts. In particular, distinguishing between statement
> construction in SSA and non-SSA.
I don't see the difference, and I don't see where you need context data to
distinguis that, in case you really need to.
> > That is, I'm not yet convinced that you really need any local
> > data for which you'd have to add helper classes.
>
> We also need to ask if we will ever need local data. If we plan
> for it now, future changes might be possible without affecting
> existing code. Otherwise, we might require more substantial patches.
But so it _now_ requires substantial patches without it being clear that
we ever need the complications. Please don't optimize prematurely.
> > statements without introduction of any helper class. Basically,
> > whenever a helper class merely contains one member of a different
> > type, then I think that other type should be improved so that the
> > wrapper class isn't necessary anymore. Fewer types -> good :)
>
> While I would agree that unnecessary types are bad, I have found that
> having types to represent distinct concepts is a good way to structure
> my thinking and catch my errors.
But where exactly are your concepts different? We have gimple_seq, we can
append to it. You had ssa_seq, you could append to it (nicer). We can
construct new statements already (boilerplaty), you can construct new
statements (nicer). It just the same with a leaner interface.
Ciao,
Michael.
next prev parent reply other threads:[~2012-11-16 12:44 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-15 1:13 Lawrence Crowl
2012-11-15 6:06 ` Basile Starynkevitch
2012-11-15 19:34 ` Lawrence Crowl
2012-11-16 13:15 ` Diego Novillo
2012-11-15 7:32 ` Xinliang David Li
2012-11-16 13:13 ` Diego Novillo
2012-11-17 1:05 ` Xinliang David Li
2012-11-15 14:48 ` Michael Matz
2012-11-15 16:52 ` Gabriel Dos Reis
2012-11-15 17:01 ` Michael Matz
2012-11-15 17:07 ` Xinliang David Li
2012-11-15 19:59 ` Lawrence Crowl
2012-11-16 12:44 ` Michael Matz [this message]
2012-11-16 13:59 ` Diego Novillo
2012-11-16 14:30 ` Michael Matz
2012-11-16 17:31 ` Andrew Pinski
2012-11-20 16:49 ` Andrew MacLeod
2012-11-25 1:35 ` 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=alpine.LNX.2.00.1211161339060.21868@wotan.suse.de \
--to=matz@suse.de \
--cc=crowl@googlers.com \
--cc=gcc@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).