[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

__register_frame_* in libc and libstdc++. Okay?



Hi,

I am trying to track down why I am getting uncaught exceptions in some
C++ code.  I'm no expert in object level stuff, so this may be off
base, but is the following okay:


bviren@minos:bviren> objdump --dynamic-sym /lib/libc.so.6 | grep _frame
001142d0 l    d  .eh_frame	00000000              
000f6b94 g    DF .text	00000037  GLIBC_2.0   __register_frame
000f8be4 g    DF .text	00000073  GLIBC_2.0   __frame_state_for
000f6c80 g    DF .text	00000032  GLIBC_2.0   __register_frame_table
000f6ae0 g    DF .text	0000008a  GCC_3.0     __register_frame_info_bases
000f6da8 g    DF .text	00000023  GLIBC_2.0   __deregister_frame_info
000f6cb4 g    DF .text	000000f4  GCC_3.0     __deregister_frame_info_bases
000f6bcc g    DF .text	00000089  GCC_3.0     __register_frame_info_table_bases
000f6dcc g    DF .text	00000032  GLIBC_2.0   __deregister_frame
000f6c58 g    DF .text	00000027  GLIBC_2.0   __register_frame_info_table
000f6b6c g    DF .text	00000027  GLIBC_2.0   __register_frame_info
bviren@minos:bviren> objdump --dynamic-sym /usr/lib/libstdc++-libc6.2-2.so.3 | grep _frame
0003707c l    d  .eh_frame	00000000              
00033160 g    DF .text	00000032  Base        __register_frame
00033324 g    DF .text	0000017b  Base        __frame_state_for
00033210 g    DF .text	00000032  Base        __register_frame_table
00033244 g    DF .text	000000b4  Base        __deregister_frame_info
000332f8 g    DF .text	0000002c  Base        __deregister_frame
00033194 g    DF .text	00000079  Base        __register_frame_info_table
000330e0 g    DF .text	0000007d  Base        __register_frame_info


As I understand things, this is where stack unwinding and exception
handling is done.  If there are two different version linked in, could
this be a source of my uncaught exceptions?

This is on a sarge/sid x86 system using latest GCC 2.95 and libc6
2.2.5-13.


-Brett.
PS: please CC: me as I'm not on the list (hope thats okay).



Reply to: