A patch to make libgcc local in shared library
H.J. Lu
hjl@lucon.org
Fri Dec 11 21:55:00 GMT 1998
>
> >>>>> H J Lu <hjl@lucon.org> writes:
>
> > Here is a patch for egcs. It will make libgcc functions local in
> > shared libraries.
>
> This is inappropriate for new and delete, which can be overridden by the
> user.
>
I think I handled it correctly. That is why I used EXTRACT_LIGBCC. Here
is my libgcc.map. Can you tell me which ones are new and delete? Please
give it a try and let me know which ones should not be made local. I
will fix it.
Thanks.
--
H.J. Lu (hjl@gnu.org)
---
GCC.INTERNAL {
local:
_._10bad_typeid;
_._13bad_exception;
_._14__si_type_info;
_._16__user_type_info;
_._17__class_type_info;
_._8bad_cast;
_._9bad_alloc;
_._9exception;
_._9type_info;
__10bad_typeid;
__13bad_exception;
__14__si_type_infoPCcRC16__user_type_info;
__16__user_type_infoPCc;
__17__class_type_infoPCcPCQ217__class_type_info9base_infoUi;
__8bad_cast;
__9exception;
__9type_infoPCc;
__ashldi3;
__ashrdi3;
__bb_exit_func;
__bb_init_func;
__bb_init_trace_func;
__bb_trace_func;
__bb_trace_ret;
__builtin_saveregs;
__check_eh_spec;
__clear_cache;
__cmpdi2;
__cp_eh_info;
__cp_exception_info;
__cp_pop_exception;
__cp_push_exception;
__cplus_type_matcher;
__default_terminate;
__default_unexpected__Fv;
__deregister_frame;
__deregister_frame_info;
__divdi3;
__dummy;
__dynamic_cast;
__eh_alloc;
__eh_free;
__empty;
__eprintf;
__eq__C9type_infoRC9type_info;
__ffsdi2;
__fixdfdi;
__fixsfdi;
__fixunsdfdi;
__fixunsdfsi;
__fixunssfdi;
__fixunssfsi;
__fixunsxfdi;
__fixunsxfsi;
__fixxfdi;
__floatdidf;
__floatdisf;
__floatdixf;
__frame_state_for;
__gcc_bcmp;
__get_dynamic_handler_chain;
__get_eh_context;
__get_eh_info;
__get_eh_table_language;
__get_eh_table_version;
__is_pointer__FPv;
__lshrdi3;
__moddi3;
__muldi3;
__ne__C9type_infoRC9type_info;
__negdi2;
__nw__FUiPv;
__pure_virtual;
__register_frame;
__register_frame_info;
__register_frame_info_table;
__register_frame_table;
__rtti_array;
__rtti_attr;
__rtti_class;
__rtti_func;
__rtti_ptmd;
__rtti_ptmf;
__rtti_ptr;
__rtti_si;
__rtti_user;
__sjpopnthrow;
__sjthrow;
__terminate;
__tf10bad_typeid;
__tf13bad_exception;
__tf14__si_type_info;
__tf16__user_type_info;
__tf17__class_type_info;
__tf8bad_cast;
__tf9bad_alloc;
__tf9exception;
__tf9type_info;
__tfSc;
__tfUc;
__tfUi;
__tfUl;
__tfUs;
__tfUx;
__tfb;
__tfc;
__tfd;
__tff;
__tfi;
__tfl;
__tfr;
__tfs;
__tfv;
__tfw;
__tfx;
__throw;
__throw_bad_cast;
__throw_bad_typeid;
__throw_type_match;
__throw_type_match_rtti;
__ucmpdi2;
__udiv_w_sdiv;
__udivdi3;
__udivmoddi4;
__umoddi3;
__uncatch_exception;
__vn__FUiPv;
before__C9type_infoRC9type_info;
dcast__C14__si_type_infoRC9type_infoiPvPC9type_infoT3;
dcast__C16__user_type_infoRC9type_infoiPvPC9type_infoT3;
dcast__C17__class_type_infoRC9type_infoiPvPC9type_infoT3;
name__C9type_info;
set_new_handler__FPFv_v;
set_terminate__FPFv_v;
set_unexpected__FPFv_v;
terminate__Fv;
uncaught_exception__Fv;
unexpected__Fv;
what__C9bad_alloc;
what__C9exception;
};
More information about the Gcc-patches
mailing list