This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/16129] [3.4.1 regression] g++.old-deja/g++.eh/catch[35679]*.C


------- Additional Comments From zack at gcc dot gnu dot org  2004-06-24 21:40 -------
Created an attachment (id=6623)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=6623&action=view)
preprocessed source for file being miscompiled

Compile this file as follows:

cc1plus -fpreprocessed tinfo.ii -quiet -dumpbase tinfo.cc -da -auxbase-strip
tinfo.o -g -g -O2 -O2 -O2 -Wall -W -Wwrite-strings -Wcast-qual -version
-fno-implicit-templates -fdiagnostics-show-location=once -ffunction-sections
-fdata-sections -fPIC -o tinfo.s

(a cross compiler to ia64-hp-hpux11.22 will do).  Then compare the .31.bbro and
.35.mach dumps.  You should see that in the former, insn 456 precedes insn 493,
but in the latter, insn 456 follows insn 493.  Since insn 493 reads from the
location written by insn 456, this is an invalid transformation.

The problem is believed to be a bad interaction between aliasing and inlining.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16129


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]