This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Your June 7 change to expand_expr
- To: law at cygnus dot com, mark at markmitchell dot com
- Subject: Re: Your June 7 change to expand_expr
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Date: Wed, 1 Jul 98 07:08:22 EDT
- Cc: egcs-bugs at cygnus dot com, jfc at mit dot edu
One option is to make MEM_IN_STRUCT_P ternary (yes: definitely in
struct, no: definitely not in struct, and don't know). Then, as
Kenner points out would be desirable, we would have a conservative
setting, and yet we could still do the fixed/varying struct/not-struct
optimization.
That's an interesting idea, but I'm just not sure it's worth the
trouble. How much is really picked up by doing the struct/non-struct
case? I'd suspect it's small given "real aliasing".
Why not try an experiment: turn off the code that uses the bit and do
some benchmarks? If the effect is small, then just rip out this
ancient code.
Jeff, in the short term, perhaps we should disable the alias checks
that depend on MEM_IN_STRUCT_P. I will submit appropriate patches, if
you think this is the right thing to do. Unfortunately, Kenner, these
patches won't be appropriate for GCC2 because they will all be in
alias.c, which is not yet in GCC2.
In GCC2, there's also a reference in cse.c, though I don't know if
that still applies in EGCS. The patch to disable it is small, of
course.