This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH to remove unnecessary NOTE_INSN_DELETED
- To: Mark Mitchell <mark at codesourcery dot com>
- Subject: Re: PATCH to remove unnecessary NOTE_INSN_DELETED
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Thu, 04 Nov 1999 09:24:43 -0700
- cc: bernds at cygnus dot co dot uk, amylaar at cygnus dot co dot uk, gcc-patches at gcc dot gnu dot org
- Reply-To: law at cygnus dot com
In message <19991104080746G.mitchell@codesourcery.com>you write:
> In the bad case, you can use the tables to work out what's going on.
> Yes, this will be a pain, but it's not that bad. I've certainly
> tracked worse processes, like keeping track of all the entries in the
> CSE hash-table.
>
> One of the wins of this pass is that we can scrap the LUID tables in
> most cases; just run renumber_insns before the patch, and set max_luid
> equal to luid.
But are you going to commit to renumbering before every pass?
The advantage I see of adding a new field is that passes that need it can
use it; passes that don't just ignore it. It also allows passes to cleanly
isolate themselves and use that integer id# field in whatever way makes the
most sense. Most of the time that field would be for LUIDs, but it could
just as easily be bit flags for the duration of a particular pass.
For debugging, we don't have to worry about turning off squashing or looking
at a remap table since the uids are constant for the duration of the compile.
IMHO by adding the field we get the advantages of both schemes.
jeff