This is the mail archive of the gcc-patches@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]

Re: Outdated stuff in gcc.texi



From: "Martin v. Loewis" <martin@loewis.home.cs.tu-berlin.de>
> > I was surprised by that statement, so I did some experimentation.
> > Compiling
> 
> > struct A{
> >   ~A();
> > };
> 
> > int foo();
> 
> > int main()
> > {
> >   for(int i=0;i<4;i++){
> >     A a;
> >     foo();
> >   }
> > }
> 
> > with -O2 -funroll-loops indeed generates duplicate assembler labels on
> > i586-pc-linux-gnu, due to gcc recycling the assembler labels for the
> > exception cleanup regions when unrolling.

Mike Stump writes:
> Not for me it doesn't, maybe your sources are out of date.  ;-P

With the 2000-01-10 snapshot, I'm seeing the same bug on the Sparc.
Are your fixes more recent than the snapshot?

Output of "gcc -v -c -O2 -funroll-loops eh.cxx"  where eh.cxx is
the above code:

Reading specs from /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/specs
gcc version 2.96 20000110 (experimental)
 /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/cpp -lang-c++ -v -iprefix /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/ -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=96 -D__cplusplus -Dsparc -Dsun -Dunix -D__svr4__ -D__SVR4 -D__sparc__ -D__sun__ -D__unix__ -D__svr4__ -D__SVR4 -D__sparc -D__sun -D__unix -Asystem(unix) -Asystem(svr4) -D__EXCEPTIONS -D__OPTIMIZE__ -D__GCC_NEW_VARARGS__ -Acpu(sparc) -Amachine(sparc) eh.cxx /var/tmp/ccD62kVa.ii
GNU CPP version 2.96 20000110 (experimental) (sparc)
#include "..." search starts here:
#include <...> search starts here:
 /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/../../../../include/g++-3
 /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/../../../../sparc-sun-solaris2.5.1/include
 /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/include
 /u/jbuck/egcs/lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/../../../../include/g++-3
 /usr/local/include
 /u/jbuck/egcs/lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/../../../../sparc-sun-solaris2.5.1/include
 /u/jbuck/egcs/lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/include
 /usr/include
End of search list.
The following default directories have been omitted from the search path:
End of omitted list.
 /remote/dtg103/jbuck/egcs/bin/../lib/gcc-lib/sparc-sun-solaris2.5.1/2.96/cc1plus /var/tmp/ccD62kVa.ii -quiet -dumpbase eh.cc -O2 -version -funroll-loops -o /var/tmp/ccIyUtNc.s
GNU C++ version 2.96 20000110 (experimental) (sparc-sun-solaris2.5.1) compiled by GNU C version 2.96 20000110 (experimental).
 /usr/ccs/bin/as -V -Qy -s -o eh.o /var/tmp/ccIyUtNc.s
/usr/ccs/bin/as: WorkShop Compilers 4.2 dev 13 May 1996
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 22: error: redefinition of symbol ".LLEHB7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 25: error: redefinition of symbol ".LLEHE7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 29: error: redefinition of symbol ".LLEHB7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 32: error: redefinition of symbol ".LLEHE7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 36: error: redefinition of symbol ".LLEHB7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 39: error: redefinition of symbol ".LLEHE7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 76: error: redefinition of symbol ".LLRTH7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 82: error: redefinition of symbol ".LLRTH7"
/usr/ccs/bin/as: "/var/tmp/ccIyUtNc.s", line 88: error: redefinition of symbol ".LLRTH7"




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