This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Tree sharing issues...
> In message <20031119221355.GN11681@kam.mff.cuni.cz>, Jan Hubicka writes:
> >> > On Wed, Nov 19, 2003 at 08:01:52PM +0100, Jan Hubicka wrote:
> >> > > I am almost done with verify_stmts except for tree sharing, as I am
> >> > > still not clear about the tree sharing rules. (Did I mentioned it in
> >> > > original email?)
> >> >
> >> > Yes. I don't know anything about tree sharing rules. I expect we
> >> > can't share much.
> >>
> >> I think we do pretty heavy shaing via CCP that does move around the
> >> constant PLUS_EXPRs and friends. I am not even aware of way to copy
> >> tree expressions.
> >> I wrote the code for testing and will run it once my other bootstrap
> >> finish and come back with results.
> >OK, first possitive in bootstrap is not very far:
> >stage1/xgcc -Bstage1/ -B/usr/local/i686-pc-linux-gnu/bin/ -c -g -O2
> >-DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes
> >-Wmissing-prototypes -pedantic -Wno-long-long -Wold-style-definition
> >-Werror -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I.
> >-I../../gcc -I../../gcc/.
> >-I../../gcc/../include ../../gcc/gengtype.c -o gengtype.o
> >(const char *)"*x";
> >
> >../../gcc/gengtype.c: In function `write_local_func_for_structure':
> >
> >../../gcc/gengtype.c:2184: error: Wrong sharing of tree nodes
> >../../gcc/gengtype.c:2184: internal compiler error: verify_stmts failed.
> >
> >
> >A shared NOP. Is this valid? If not, how to duplicate the nodes in CCP?
> Not enough context to know if it's valid.
You may see dump above:
(const char *)"*x";
It is constant.
>
> I would expect a NOP of a constant to be shared since that's still a
> constant and we generally try to share constants.
OK, I will extend my sharing test by is_gimple_min_invariant. Does that
look right?
Honza
>
> jeff