Re: Geoff's gmon_start fix to binutil works! (fwd)
On Sun, Oct 15, 2000 at 09:09:12PM +0200, Matthias Klose wrote:
> In gcc-2.95.2-13 I reverted the CVS updates from 20000313 to 20000220,
> because the resulting libstdc++ wasn't binary compatible (apt-get core
> dumped). Since then I didn't check again. Anyway, I upload a -17 which
> fixes two missing files in the -16 packages.
I just had a conversation with Franz Sirl about this issue.
Apparently, it is not so much a binary compatibility issue as a bad
bugfix in the vtable thunk code. He recommended something like this
(there's equivalent blocks in gcc/config/linux.h and a few others):
--- gcc/config/rs6000/linux.h 2000/04/12 06:53:25 1.16.4.2
+++ gcc/config/rs6000/linux.h 2000/10/14 18:56:37
@@ -69,7 +69,7 @@ Boston, MA 02111-1307, USA. */
#undef DEFAULT_VTABLE_THUNKS
#ifndef USE_GNULIBC_1
-#define DEFAULT_VTABLE_THUNKS 2
+#define DEFAULT_VTABLE_THUNKS 1
#endif
#undef JUMP_TABLES_IN_TEXT_SECTION
It's been reported a couple of times now... apparently something in the
bugfix gets badly miscompiled at -O2, producing a bad libstdc++. It
seems that there are no binary compatibility issues between the two
values, so we may want to look into this.
To verify that the problem's gone away, run a C++ regression suite at
-O2.
Dan
/--------------------------------\ /--------------------------------\
| Daniel Jacobowitz |__| SCS Class of 2002 |
| Debian GNU/Linux Developer __ Carnegie Mellon University |
| dan@debian.org | | dmj+@andrew.cmu.edu |
\--------------------------------/ \--------------------------------/
Reply to: