This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] (wrong) Fix IVOPTS rewrite_address_base (!?)
- From: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- To: Richard Guenther <rguenth at tat dot physik dot uni-tuebingen dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Sun, 5 Jun 2005 20:03:28 +0200
- Subject: Re: [PATCH] (wrong) Fix IVOPTS rewrite_address_base (!?)
- References: <Pine.LNX.4.44.0506021106210.30087-100000@alwazn.tat.physik.uni-tuebingen.de>
Hello,
> Ok, here's my shot at fixing my problems mentioned in
> http://gcc.gnu.org/ml/gcc/2005-06/msg00021.html
>
> Basically it looks like the wrong "part" of *op is rewritten
> (i.e. we get the base address (bvar), but do not use it).
>
> Of course it doesn't survive bootstrap - I seem to mess up
> with virtual operands or such. I know too little about
> IVOPTS anyway - please someone help me here.
your approach just loses all the alias information (preserving it
is the only reason for the ugly hack leading to type weirdness caused
by rewrite_address_base).
You may want to have a look at
http://gcc.gnu.org/ml/gcc-patches/2005-05/msg02478.html
and related patches; they attempt to solve a related problem
in vectorizer.
Or you may just wait for the TARGET_MEM_REFs patch
(http://gcc.gnu.org/ml/gcc-patches/2005-05/msg00059.html)
that removes rewrite_address_base completely.
Zdenek