This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Sythetic registers: modrm/gas question.
- From: Tom Lord <lord at emf dot net>
- To: dewar at gnat dot com
- Cc: dewar at gnat dot com, gcc at gcc dot gnu dot org, ja_walker at earthlink dot net
- Date: Sun, 5 Jan 2003 06:33:59 -0800 (PST)
- Subject: Re: Sythetic registers: modrm/gas question.
- References: <20030105141714.A8A65F2D5D@nile.gnat.com>
I disagree. In practice references to the local stack frame are
nearly always in cache.
Yeah, I see what you're saying (I think):
Blindly tricking the register allocator isn't _quite_ right. It has
to know not to bother storing locals and args in synthregs, and not to
bother moving a spilled value to a synthreg.
The thing I like about synthregs is the idea of moving some values not
in those classes into locations that will be cache-favored. Just
tricking the reg allocator seemed initially like an easy way to do it,
but it's (hopefully only slightly) more complicated than that.
> "Yeah, well, until you've done the same you've no
> business talking about the SR proposal"
Gosh, you took the words out of my mouth :-) :-)
It's hard to articulate. I believe there's a perspective on
architecture that transcends particular machines and that tends to
predict the future pretty well. It's sort of like you look at the
logical dependencies among various parts of the state of the abstract
machine -- and those logical dependencies tell you a lot about how
machines can be implemented and optimized (they are computations that
have to be physically realized) -- and real machines tend sharply,
over time, to take advantage of those optimizations. It's hard to
articulate.
It will take me a little while to digest the rest of your post.
-t