This is the mail archive of the
mailing list for the GCC project.
Re: [tree-ssa] must-alias fixes...
> On Thu, 2003-11-20 at 18:51, Jan Hubicka wrote:
> > Hi,
> > this patch contains all fixes I accumulated for aliasing, all of these were
> > discussed earlier. With some furhter massaging I can now bootstrap with tail
> > call optimization enabled on machines where it failed same way as for nightly
> > testers, but I want to send this part separately.
> > This patch has been tested on i686-linux on RH machine, partly on i386-linux
> > Debian machine (libstdc++ fails for unrelated reasons) and x86-64-linux
> > (libjava fails for unrelated reasons). Given the bugfixing nature, I hope this
> > testing is fine. I will try to sort out the other reasons.
> > OK?
> > Honza
> > 2003-11-21 Jan Hubicka <firstname.lastname@example.org>
> > * tree-must-alias.c (tree_compute_must_alias): Promote pointers.
> > (find_addressable_vars): Deal with complex references.
> > (promote_var): Do not clear may_point_to_global_mem
> > * tree-dfa.c (get_expr_operands): FIx handling of i386.
> No. This does not bootstrap on x86 nor amd64.
Oops, sorry, I tought I've commited the setting of 's' in parser.c as
obvious. Will do so shortly.
The variable really can stay uninitialized in some code paths.
> Also, could you elaborate on the changes to find_addressable_vars, how
> are those complex references getting in?
We can construct such a complex referenced via folding (they are valid
gimple operands) and we can promote them into PHI nodes during constant
> stage1/xgcc -Bstage1/ -B/home/cygnus/dnovillo/tree-ssa-00/native.amd64/x86_64-un
> known-linux-gnu/bin/ -c -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-p
> rototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wold-style-definition -
> Werror -Werror -fno-common -DHAVE_CONFIG_H -I. -Icp -I/home/cygnus/dnovillo
> /tree-ssa-00/src.amd64/gcc -I/home/cygnus/dnovillo/tree-ssa-00/src.amd64/gcc/cp
> -I/home/cygnus/dnovillo/tree-ssa-00/src.amd64/gcc/../include -I/home/cygnus/dnov
> illo/tree-ssa-00/src.amd64/gcc/../libbanshee/libcompat -I/home/cygnus/dnovillo/t
> ree-ssa-00/src.amd64/gcc/../libbanshee -I/home/cygnus/dnovillo/tree-ssa-00/src.a
> md64/gcc/../libbanshee/points-to /home/cygnus/dnovillo/tree-ssa-00/src.amd64/gc
> c/cp/parser.c -o cp/parser.o
> /home/cygnus/dnovillo/tree-ssa-00/src.amd64/gcc/cp/parser.c: In function `cp_par
> /home/cygnus/dnovillo/tree-ssa-00/src.amd64/gcc/cp/parser.c:3696: warning: 's' m
> ight be used uninitialized in this function
> make: *** [cp/parser.o] Error 1