This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Removing unnecessary ADDR_EXPRs
On 5/17/05, Jeffrey A Law <law@redhat.com> wrote:
> On Tue, 2005-05-17 at 20:22 +0200, Richard Guenther wrote:
>
> > Maybe it's bad interaction with the cfg inliner which is top of my
> > ChangeLog. Otherwise just
> >
> > ./cvs/gcc-4.1/configure --enable-threads=posix --enable-__cxa_atexit
> > --disable-libunwind-exceptions --enable-languages=c,c++
> >
> > and make.
> Nope. Still not getting that failure. Though after updating I am
> getting a failure in libjava:
>
> /fuel98/export/virgin/libjava/jni.cc:2141: error: Statement marked for
> throw, but doesn't.
> # VUSE <D.15186_67(ab)>;
> D.28047_69 = D.15186;
>
> /fuel98/export/virgin/libjava/jni.cc:2141: internal compiler error:
> verify_stmts failed.
>
> Can you send me your .ii file and I'll see if I can make it fail.
>
> Based on the information you've provided so far we must have done a
> ADDR_EXPR substitution into an INDIRECT_REF which did not fold away
> the ADDR_EXPR and INDIRECT_REF for one reason or another. I can't
> immediately think of what would cause a failure to fold, but I'll
> poke around and see if anything looks interesting. At the worst
> fixing this just means using a little more memory so that we can
> undo the propagation if folding fails.
Preprocessed source is at
http://www.tat.physik.uni-tuebingen.de/~rguenth/fstream-inst.ii.gz
pinska said it ICEs somehow different on ppc-darwin. I forgot to mention
I'm building on i686 with CC=gcc-3.4 and CFLAGS=-g, i.e. it's a -O0
build. A standard build doesn't show the ICE.
Richard.