------- Comment #12 from atgraham at gmail dot com 2006-08-09 01:30 ------- (In reply to comment #11) [...] > it may be a problem with WRS running initializers or > initializing the frame tables.
Both of the gcc builds I'm testing with are cross compilers (host i686-pc-linux-gnu): $ powerpc-linux-gcc -v Using built-in specs. Target: powerpc-linux Configured with: ../gcc-4.1.1/configure --target=powerpc-linux --prefix=/content/opt --with-gnu-as --with-gnu-ld --disable-shared --disable-libssp --enable-languages=c,c++ --enable-libstdcxx-allocator=mt --enable-sjlj-exceptions Thread model: posix gcc version 4.1.1 $ powerpc-wrs-vxworks-gcc -v Using built-in specs. Target: powerpc-wrs-vxworks Configured with: ../gcc-4.1.1/configure --target=powerpc-wrs-vxworks --prefix=/opt/vxppc --with-headers=/home/agraham/gnu/vxh --with-gnu-as --with-gnu-ld --disable-shared --disable-libssp --enable-languages=c,c++ --enable-libstdcxx-allocator=mt --enable-sjlj-exceptions Thread model: vxworks gcc version 4.1.1 Using both of the above compilers, the disassembly of tryfunc() looks _exactly_ the same for both targets when compiling my test case with the following command line switches: [...]-g++ -O0 -msoft-float -mcpu=405 -c bug.cc ...and both appear to be buggy. I can attach those disassemblies, if anyone wants confirmation of this assertion. Perhaps this isn't a WRS issue so much as a cross-compiler issue. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28493