mirror of
https://github.com/reactos/reactos.git
synced 2025-02-28 19:32:59 +00:00
[CRT] Split MSVC C++ aliases from cpp.s to cpp_alias.s
This commit is contained in:
parent
40ea081198
commit
e2d69ad98c
7 changed files with 224 additions and 192 deletions
|
@ -28,62 +28,4 @@ DEFINE_EXCEPTION_VTABLE bad_typeid, ??_7bad_typeid@@6B@
|
|||
DEFINE_EXCEPTION_VTABLE bad_cast, ??_7bad_cast@@6B@
|
||||
DEFINE_EXCEPTION_VTABLE __non_rtti_object, ??_7__non_rtti_object@@6B@
|
||||
|
||||
|
||||
MACRO(DEFINE_ALIAS, alias, orig)
|
||||
EXTERN &orig:ABS
|
||||
ALIAS <&alias> = <&orig>
|
||||
ENDM
|
||||
|
||||
DEFINE_ALIAS ??3@YAXPEAX@Z, operator_delete
|
||||
DEFINE_ALIAS ??_U@YAPEAX_K@Z, operator_new
|
||||
DEFINE_ALIAS ??_U@YAPEAX_KHPEBDH@Z, operator_new_dbg
|
||||
DEFINE_ALIAS ??_V@YAXPEAX@Z, operator_delete
|
||||
DEFINE_ALIAS ??2@YAPEAX_K@Z, operator_new
|
||||
DEFINE_ALIAS ??2@YAPEAX_KHPEBDH@Z, operator_new_dbg
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AHI@ZXZ, _query_new_handler
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z, _set_new_handler
|
||||
DEFINE_ALIAS ?set_new_handler@@YAP6AXXZP6AXXZ@Z, set_new_handler
|
||||
DEFINE_ALIAS ?_query_new_mode@@YAHXZ, _query_new_mode
|
||||
DEFINE_ALIAS ?_set_new_mode@@YAHH@Z, _set_new_mode
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, _set_se_translator
|
||||
DEFINE_ALIAS ?set_terminate@@YAP6AXXZP6AXXZ@Z, set_terminate
|
||||
DEFINE_ALIAS ?set_unexpected@@YAP6AXXZP6AXXZ@Z, set_unexpected
|
||||
DEFINE_ALIAS ?terminate@@YAXXZ, terminate
|
||||
DEFINE_ALIAS ?unexpected@@YAXXZ, unexpected
|
||||
DEFINE_ALIAS ?what@exception@@UEBAPEBDXZ, exception_what
|
||||
DEFINE_ALIAS ??0exception@@QEAA@AEBQEBDH@Z, exception_ctor_noalloc
|
||||
DEFINE_ALIAS ??0exception@@QEAA@AEBV0@@Z, exception_copy_ctor
|
||||
DEFINE_ALIAS ??0exception@@QEAA@XZ, exception_default_ctor
|
||||
DEFINE_ALIAS ??1exception@@UEAA@XZ, exception_dtor
|
||||
DEFINE_ALIAS ??4exception@@QEAAAEAV0@AEBV0@@Z, exception_opequals
|
||||
DEFINE_ALIAS ??1type_info@@UEAA@XZ, type_info_dtor
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QEAA@AEBV0@@Z, __non_rtti_object_copy_ctor
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QEAA@PEBD@Z, __non_rtti_object_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@AAE@PBQBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@AEAA@PEBQEBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QAE@ABQBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QEAA@AEBQEBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QEAA@AEBV0@@Z, bad_cast_copy_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QEAA@PEBD@Z, bad_cast_ctor_charptr
|
||||
DEFINE_ALIAS ??0bad_typeid@@QEAA@AEBV0@@Z, bad_typeid_copy_ctor
|
||||
DEFINE_ALIAS ??0bad_typeid@@QEAA@PEBD@Z, bad_typeid_ctor
|
||||
DEFINE_ALIAS ??0exception@@QEAA@AEBQEBD@Z, exception_ctor
|
||||
DEFINE_ALIAS ??1__non_rtti_object@@UEAA@XZ, __non_rtti_object_dtor
|
||||
DEFINE_ALIAS ??1bad_cast@@UEAA@XZ, bad_cast_dtor
|
||||
DEFINE_ALIAS ??1bad_typeid@@UEAA@XZ, bad_typeid_dtor
|
||||
DEFINE_ALIAS ??4bad_cast@@QEAAAEAV0@AEBV0@@Z, bad_cast_opequals
|
||||
DEFINE_ALIAS ??4bad_typeid@@QEAAAEAV0@AEBV0@@Z, bad_typeid_opequals
|
||||
DEFINE_ALIAS ??8type_info@@QEBAHAEBV0@@Z, type_info_opequals_equals
|
||||
DEFINE_ALIAS ??9type_info@@QEBAHAEBV0@@Z, type_info_opnot_equals
|
||||
DEFINE_ALIAS ??_Fbad_cast@@QEAAXXZ, bad_cast_default_ctor
|
||||
DEFINE_ALIAS ??_Fbad_typeid@@QEAAXXZ, bad_typeid_default_ctor
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AH_K@ZXZ, _query_new_handler
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AH_K@ZP6AH0@Z@Z, _set_new_handler
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, _set_se_translator
|
||||
DEFINE_ALIAS ?before@type_info@@QEBAHAEBV1@@Z, type_info_before
|
||||
DEFINE_ALIAS ?name@type_info@@QEBAPEBDXZ, type_info_name
|
||||
DEFINE_ALIAS ?raw_name@type_info@@QEBAPEBDXZ, type_info_raw_name
|
||||
DEFINE_ALIAS ??4__non_rtti_object@@QEAAAEAV0@AEBV0@@Z, __non_rtti_object_opequals
|
||||
|
||||
END
|
||||
|
||||
|
|
64
sdk/lib/crt/except/amd64/cpp_alias.s
Normal file
64
sdk/lib/crt/except/amd64/cpp_alias.s
Normal file
|
@ -0,0 +1,64 @@
|
|||
|
||||
|
||||
#include <asm.inc>
|
||||
|
||||
.code64
|
||||
.align 4
|
||||
|
||||
MACRO(DEFINE_ALIAS, alias, orig)
|
||||
EXTERN &orig:ABS
|
||||
ALIAS <&alias> = <&orig>
|
||||
ENDM
|
||||
|
||||
DEFINE_ALIAS ??3@YAXPEAX@Z, operator_delete
|
||||
DEFINE_ALIAS ??_U@YAPEAX_K@Z, operator_new
|
||||
DEFINE_ALIAS ??_U@YAPEAX_KHPEBDH@Z, operator_new_dbg
|
||||
DEFINE_ALIAS ??_V@YAXPEAX@Z, operator_delete
|
||||
DEFINE_ALIAS ??2@YAPEAX_K@Z, operator_new
|
||||
DEFINE_ALIAS ??2@YAPEAX_KHPEBDH@Z, operator_new_dbg
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AHI@ZXZ, _query_new_handler
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z, _set_new_handler
|
||||
DEFINE_ALIAS ?set_new_handler@@YAP6AXXZP6AXXZ@Z, set_new_handler
|
||||
DEFINE_ALIAS ?_query_new_mode@@YAHXZ, _query_new_mode
|
||||
DEFINE_ALIAS ?_set_new_mode@@YAHH@Z, _set_new_mode
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, _set_se_translator
|
||||
DEFINE_ALIAS ?set_terminate@@YAP6AXXZP6AXXZ@Z, set_terminate
|
||||
DEFINE_ALIAS ?set_unexpected@@YAP6AXXZP6AXXZ@Z, set_unexpected
|
||||
DEFINE_ALIAS ?terminate@@YAXXZ, terminate
|
||||
DEFINE_ALIAS ?unexpected@@YAXXZ, unexpected
|
||||
DEFINE_ALIAS ?what@exception@@UEBAPEBDXZ, exception_what
|
||||
DEFINE_ALIAS ??0exception@@QEAA@AEBQEBDH@Z, exception_ctor_noalloc
|
||||
DEFINE_ALIAS ??0exception@@QEAA@AEBV0@@Z, exception_copy_ctor
|
||||
DEFINE_ALIAS ??0exception@@QEAA@XZ, exception_default_ctor
|
||||
DEFINE_ALIAS ??1exception@@UEAA@XZ, exception_dtor
|
||||
DEFINE_ALIAS ??4exception@@QEAAAEAV0@AEBV0@@Z, exception_opequals
|
||||
DEFINE_ALIAS ??1type_info@@UEAA@XZ, type_info_dtor
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QEAA@AEBV0@@Z, __non_rtti_object_copy_ctor
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QEAA@PEBD@Z, __non_rtti_object_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@AAE@PBQBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@AEAA@PEBQEBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QAE@ABQBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QEAA@AEBQEBD@Z, bad_cast_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QEAA@AEBV0@@Z, bad_cast_copy_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@QEAA@PEBD@Z, bad_cast_ctor_charptr
|
||||
DEFINE_ALIAS ??0bad_typeid@@QEAA@AEBV0@@Z, bad_typeid_copy_ctor
|
||||
DEFINE_ALIAS ??0bad_typeid@@QEAA@PEBD@Z, bad_typeid_ctor
|
||||
DEFINE_ALIAS ??0exception@@QEAA@AEBQEBD@Z, exception_ctor
|
||||
DEFINE_ALIAS ??1__non_rtti_object@@UEAA@XZ, __non_rtti_object_dtor
|
||||
DEFINE_ALIAS ??1bad_cast@@UEAA@XZ, bad_cast_dtor
|
||||
DEFINE_ALIAS ??1bad_typeid@@UEAA@XZ, bad_typeid_dtor
|
||||
DEFINE_ALIAS ??4bad_cast@@QEAAAEAV0@AEBV0@@Z, bad_cast_opequals
|
||||
DEFINE_ALIAS ??4bad_typeid@@QEAAAEAV0@AEBV0@@Z, bad_typeid_opequals
|
||||
DEFINE_ALIAS ??8type_info@@QEBAHAEBV0@@Z, type_info_opequals_equals
|
||||
DEFINE_ALIAS ??9type_info@@QEBAHAEBV0@@Z, type_info_opnot_equals
|
||||
DEFINE_ALIAS ??_Fbad_cast@@QEAAXXZ, bad_cast_default_ctor
|
||||
DEFINE_ALIAS ??_Fbad_typeid@@QEAAXXZ, bad_typeid_default_ctor
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AH_K@ZXZ, _query_new_handler
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AH_K@ZP6AH0@Z@Z, _set_new_handler
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, _set_se_translator
|
||||
DEFINE_ALIAS ?before@type_info@@QEBAHAEBV1@@Z, type_info_before
|
||||
DEFINE_ALIAS ?name@type_info@@QEBAPEBDXZ, type_info_name
|
||||
DEFINE_ALIAS ?raw_name@type_info@@QEBAPEBDXZ, type_info_raw_name
|
||||
DEFINE_ALIAS ??4__non_rtti_object@@QEAAAEAV0@AEBV0@@Z, __non_rtti_object_opequals
|
||||
|
||||
END
|
|
@ -13,58 +13,6 @@
|
|||
|
||||
TEXTAREA
|
||||
|
||||
MACRO
|
||||
DEFINE_ALIAS $FuncName, $Target
|
||||
LCLS _FuncName
|
||||
LCLS _Target
|
||||
_FuncName SETS "|$FuncName|"
|
||||
_Target SETS "|$Target|"
|
||||
IMPORT $_FuncName, WEAK $_Target
|
||||
MEND
|
||||
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QAA@ABV0@@Z, __non_rtti_object_copy_ctor
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QAA@PBD@Z, __non_rtti_object_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@AAA@PBQBD@Z, bad_cast_ctor // private: __cdecl bad_cast::bad_cast(char const * const *)
|
||||
DEFINE_ALIAS ??0bad_cast@@QAA@ABV0@@Z, bad_cast_copy_ctor // public: __cdecl bad_cast::bad_cast(class bad_cast const &)
|
||||
DEFINE_ALIAS ??0bad_cast@@QAA@PBD@Z, bad_cast_ctor // public: __cdecl bad_cast::bad_cast(char const *)
|
||||
DEFINE_ALIAS ??0bad_typeid@@QAA@ABV0@@Z, bad_typeid_copy_ctor // public: __cdecl bad_typeid::bad_typeid(class bad_typeid const &)
|
||||
DEFINE_ALIAS ??0bad_typeid@@QAA@PBD@Z, bad_typeid_ctor // public: __cdecl bad_typeid::bad_typeid(char const *)
|
||||
DEFINE_ALIAS ??0exception@@QAA@ABQBD@Z, exception_ctor // public: __cdecl exception::exception(char const * const &)
|
||||
DEFINE_ALIAS ??0exception@@QAA@ABQBDH@Z, exception_ctor_noalloc // public: __cdecl exception::exception(char const * const &,int)
|
||||
DEFINE_ALIAS ??0exception@@QAA@ABV0@@Z, exception_copy_ctor // public: __cdecl exception::exception(class exception const &)
|
||||
DEFINE_ALIAS ??0exception@@QAA@XZ, exception_default_ctor // public: __cdecl exception::exception(void)
|
||||
DEFINE_ALIAS ??1__non_rtti_object@@UAA@XZ, __non_rtti_object_dtor // public: virtual __cdecl __non_rtti_object::~__non_rtti_object(void)
|
||||
DEFINE_ALIAS ??1bad_cast@@UAA@XZ, bad_cast_dtor // public: virtual __cdecl bad_cast::~bad_cast(void)
|
||||
DEFINE_ALIAS ??1bad_typeid@@UAA@XZ, bad_typeid_dtor // public: virtual __cdecl bad_typeid::~bad_typeid(void)
|
||||
DEFINE_ALIAS ??1exception@@UAA@XZ, exception_dtor // public: virtual __cdecl exception::~exception(void)
|
||||
DEFINE_ALIAS ??1type_info@@UAA@XZ, type_info_dtor // public: virtual __cdecl type_info::~type_info(void)
|
||||
DEFINE_ALIAS ??2@YAPAXI@Z, operator_new // void * __cdecl operator new(unsigned int)
|
||||
DEFINE_ALIAS ??2@YAPAXIHPBDH@Z, operator_new_dbg // void * __cdecl operator new(unsigned int,int,char const *,int)
|
||||
DEFINE_ALIAS ??3@YAXPAX@Z, operator_delete // void __cdecl operator delete(void *)
|
||||
DEFINE_ALIAS ??4__non_rtti_object@@QAAAAV0@ABV0@@Z, __non_rtti_object_opequals // public: class __non_rtti_object & __cdecl __non_rtti_object::operator=(class __non_rtti_object const &)
|
||||
DEFINE_ALIAS ??4bad_cast@@QAAAAV0@ABV0@@Z, bad_cast_opequals // public: class bad_cast & __cdecl bad_cast::operator=(class bad_cast const &)
|
||||
DEFINE_ALIAS ??4bad_typeid@@QAAAAV0@ABV0@@Z, bad_typeid_opequals // public: class bad_typeid & __cdecl bad_typeid::operator=(class bad_typeid const &)
|
||||
DEFINE_ALIAS ??4exception@@QAAAAV0@ABV0@@Z, exception_opequals // public: class exception & __cdecl exception::operator=(class exception const &)
|
||||
DEFINE_ALIAS ??8type_info@@QBAHABV0@@Z, type_info_opequals_equals // public: int __cdecl type_info::operator==(class type_info const &)const
|
||||
DEFINE_ALIAS ??9type_info@@QBAHABV0@@Z, type_info_opnot_equals // public: int __cdecl type_info::operator!=(class type_info const &)const
|
||||
DEFINE_ALIAS ??_Fbad_cast@@QAAXXZ, bad_cast_default_ctor // public: void __cdecl bad_cast::`default constructor closure'(void)
|
||||
DEFINE_ALIAS ??_Fbad_typeid@@QAAXXZ, bad_typeid_default_ctor // public: void __cdecl bad_typeid::`default constructor closure'(void)
|
||||
DEFINE_ALIAS ??_U@YAPAXI@Z, operator_new // void * __cdecl operator new[](unsigned int)
|
||||
DEFINE_ALIAS ??_U@YAPAXIHPBDH@Z, operator_new_dbg // void * __cdecl operator new[](unsigned int,int,char const *,int)
|
||||
DEFINE_ALIAS ??_V@YAXPAX@Z, operator_delete // void __cdecl operator delete[](void *)
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AHI@ZXZ, _query_new_handler // int (__cdecl*__cdecl _query_new_handler(void))(unsigned int)
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z, _set_new_handler // int (__cdecl*__cdecl _set_new_handler(int (__cdecl*)(unsigned int)))(unsigned int)
|
||||
DEFINE_ALIAS ?_set_new_mode@@YAHH@Z, _set_new_mode // int __cdecl _set_new_mode(int)
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, _set_se_translator // void (__cdecl*__cdecl _set_se_translator(void (__cdecl*)(unsigned int,struct _EXCEPTION_POINTERS *)))(unsigned int,struct _EXCEPTION_POINTERS *)
|
||||
DEFINE_ALIAS ?before@type_info@@QBAHABV1@@Z, type_info_before // public: int __cdecl type_info::before(class type_info const &)const
|
||||
DEFINE_ALIAS ?name@type_info@@QBAPBDXZ, type_info_name // public: char const * __cdecl type_info::name(void)const
|
||||
DEFINE_ALIAS ?raw_name@type_info@@QBAPBDXZ, type_info_raw_name // public: char const * __cdecl type_info::raw_name(void)const
|
||||
DEFINE_ALIAS ?set_terminate@@YAP6AXXZP6AXXZ@Z, set_terminate // void (__cdecl*__cdecl set_terminate(void (__cdecl*)(void)))(void)
|
||||
DEFINE_ALIAS ?set_unexpected@@YAP6AXXZP6AXXZ@Z, set_unexpected // void (__cdecl*__cdecl set_unexpected(void (__cdecl*)(void)))(void)
|
||||
DEFINE_ALIAS ?terminate@@YAXXZ, terminate // void __cdecl terminate(void)
|
||||
DEFINE_ALIAS ?unexpected@@YAXXZ, unexpected // void __cdecl unexpected(void)
|
||||
DEFINE_ALIAS ?what@exception@@UBAPBDXZ, exception_what // public: virtual char const * __cdecl exception::what(void)const
|
||||
|
||||
#undef _MSVCRT_
|
||||
MACRO
|
||||
START_VTABLE $ShortName, $CxxName
|
||||
|
|
69
sdk/lib/crt/except/arm/cpp_alias.s
Normal file
69
sdk/lib/crt/except/arm/cpp_alias.s
Normal file
|
@ -0,0 +1,69 @@
|
|||
/*
|
||||
* COPYRIGHT: BSD - See COPYING.ARM in the top level directory
|
||||
* PROJECT: ReactOS CRT library
|
||||
* PURPOSE: MSVC wrappers for C++ functions
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <kxarm.h>
|
||||
|
||||
/* CODE **********************************************************************/
|
||||
|
||||
TEXTAREA
|
||||
|
||||
MACRO
|
||||
DEFINE_ALIAS $FuncName, $Target
|
||||
LCLS _FuncName
|
||||
LCLS _Target
|
||||
_FuncName SETS "|$FuncName|"
|
||||
_Target SETS "|$Target|"
|
||||
IMPORT $_FuncName, WEAK $_Target
|
||||
MEND
|
||||
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QAA@ABV0@@Z, __non_rtti_object_copy_ctor
|
||||
DEFINE_ALIAS ??0__non_rtti_object@@QAA@PBD@Z, __non_rtti_object_ctor
|
||||
DEFINE_ALIAS ??0bad_cast@@AAA@PBQBD@Z, bad_cast_ctor // private: __cdecl bad_cast::bad_cast(char const * const *)
|
||||
DEFINE_ALIAS ??0bad_cast@@QAA@ABV0@@Z, bad_cast_copy_ctor // public: __cdecl bad_cast::bad_cast(class bad_cast const &)
|
||||
DEFINE_ALIAS ??0bad_cast@@QAA@PBD@Z, bad_cast_ctor // public: __cdecl bad_cast::bad_cast(char const *)
|
||||
DEFINE_ALIAS ??0bad_typeid@@QAA@ABV0@@Z, bad_typeid_copy_ctor // public: __cdecl bad_typeid::bad_typeid(class bad_typeid const &)
|
||||
DEFINE_ALIAS ??0bad_typeid@@QAA@PBD@Z, bad_typeid_ctor // public: __cdecl bad_typeid::bad_typeid(char const *)
|
||||
DEFINE_ALIAS ??0exception@@QAA@ABQBD@Z, exception_ctor // public: __cdecl exception::exception(char const * const &)
|
||||
DEFINE_ALIAS ??0exception@@QAA@ABQBDH@Z, exception_ctor_noalloc // public: __cdecl exception::exception(char const * const &,int)
|
||||
DEFINE_ALIAS ??0exception@@QAA@ABV0@@Z, exception_copy_ctor // public: __cdecl exception::exception(class exception const &)
|
||||
DEFINE_ALIAS ??0exception@@QAA@XZ, exception_default_ctor // public: __cdecl exception::exception(void)
|
||||
DEFINE_ALIAS ??1__non_rtti_object@@UAA@XZ, __non_rtti_object_dtor // public: virtual __cdecl __non_rtti_object::~__non_rtti_object(void)
|
||||
DEFINE_ALIAS ??1bad_cast@@UAA@XZ, bad_cast_dtor // public: virtual __cdecl bad_cast::~bad_cast(void)
|
||||
DEFINE_ALIAS ??1bad_typeid@@UAA@XZ, bad_typeid_dtor // public: virtual __cdecl bad_typeid::~bad_typeid(void)
|
||||
DEFINE_ALIAS ??1exception@@UAA@XZ, exception_dtor // public: virtual __cdecl exception::~exception(void)
|
||||
DEFINE_ALIAS ??1type_info@@UAA@XZ, type_info_dtor // public: virtual __cdecl type_info::~type_info(void)
|
||||
DEFINE_ALIAS ??2@YAPAXI@Z, operator_new // void * __cdecl operator new(unsigned int)
|
||||
DEFINE_ALIAS ??2@YAPAXIHPBDH@Z, operator_new_dbg // void * __cdecl operator new(unsigned int,int,char const *,int)
|
||||
DEFINE_ALIAS ??3@YAXPAX@Z, operator_delete // void __cdecl operator delete(void *)
|
||||
DEFINE_ALIAS ??4__non_rtti_object@@QAAAAV0@ABV0@@Z, __non_rtti_object_opequals // public: class __non_rtti_object & __cdecl __non_rtti_object::operator=(class __non_rtti_object const &)
|
||||
DEFINE_ALIAS ??4bad_cast@@QAAAAV0@ABV0@@Z, bad_cast_opequals // public: class bad_cast & __cdecl bad_cast::operator=(class bad_cast const &)
|
||||
DEFINE_ALIAS ??4bad_typeid@@QAAAAV0@ABV0@@Z, bad_typeid_opequals // public: class bad_typeid & __cdecl bad_typeid::operator=(class bad_typeid const &)
|
||||
DEFINE_ALIAS ??4exception@@QAAAAV0@ABV0@@Z, exception_opequals // public: class exception & __cdecl exception::operator=(class exception const &)
|
||||
DEFINE_ALIAS ??8type_info@@QBAHABV0@@Z, type_info_opequals_equals // public: int __cdecl type_info::operator==(class type_info const &)const
|
||||
DEFINE_ALIAS ??9type_info@@QBAHABV0@@Z, type_info_opnot_equals // public: int __cdecl type_info::operator!=(class type_info const &)const
|
||||
DEFINE_ALIAS ??_Fbad_cast@@QAAXXZ, bad_cast_default_ctor // public: void __cdecl bad_cast::`default constructor closure'(void)
|
||||
DEFINE_ALIAS ??_Fbad_typeid@@QAAXXZ, bad_typeid_default_ctor // public: void __cdecl bad_typeid::`default constructor closure'(void)
|
||||
DEFINE_ALIAS ??_U@YAPAXI@Z, operator_new // void * __cdecl operator new[](unsigned int)
|
||||
DEFINE_ALIAS ??_U@YAPAXIHPBDH@Z, operator_new_dbg // void * __cdecl operator new[](unsigned int,int,char const *,int)
|
||||
DEFINE_ALIAS ??_V@YAXPAX@Z, operator_delete // void __cdecl operator delete[](void *)
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AHI@ZXZ, _query_new_handler // int (__cdecl*__cdecl _query_new_handler(void))(unsigned int)
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z, _set_new_handler // int (__cdecl*__cdecl _set_new_handler(int (__cdecl*)(unsigned int)))(unsigned int)
|
||||
DEFINE_ALIAS ?_set_new_mode@@YAHH@Z, _set_new_mode // int __cdecl _set_new_mode(int)
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, _set_se_translator // void (__cdecl*__cdecl _set_se_translator(void (__cdecl*)(unsigned int,struct _EXCEPTION_POINTERS *)))(unsigned int,struct _EXCEPTION_POINTERS *)
|
||||
DEFINE_ALIAS ?before@type_info@@QBAHABV1@@Z, type_info_before // public: int __cdecl type_info::before(class type_info const &)const
|
||||
DEFINE_ALIAS ?name@type_info@@QBAPBDXZ, type_info_name // public: char const * __cdecl type_info::name(void)const
|
||||
DEFINE_ALIAS ?raw_name@type_info@@QBAPBDXZ, type_info_raw_name // public: char const * __cdecl type_info::raw_name(void)const
|
||||
DEFINE_ALIAS ?set_terminate@@YAP6AXXZP6AXXZ@Z, set_terminate // void (__cdecl*__cdecl set_terminate(void (__cdecl*)(void)))(void)
|
||||
DEFINE_ALIAS ?set_unexpected@@YAP6AXXZP6AXXZ@Z, set_unexpected // void (__cdecl*__cdecl set_unexpected(void (__cdecl*)(void)))(void)
|
||||
DEFINE_ALIAS ?terminate@@YAXXZ, terminate // void __cdecl terminate(void)
|
||||
DEFINE_ALIAS ?unexpected@@YAXXZ, unexpected // void __cdecl unexpected(void)
|
||||
DEFINE_ALIAS ?what@exception@@UBAPBDXZ, exception_what // public: virtual char const * __cdecl exception::what(void)const
|
||||
|
||||
END
|
||||
/* EOF */
|
|
@ -13,7 +13,8 @@ if(ARCH STREQUAL "i386")
|
|||
)
|
||||
if(MSVC)
|
||||
list(APPEND CRT_EXCEPT_ASM_SOURCE
|
||||
except/i386/cpp.s)
|
||||
except/i386/cpp.s
|
||||
except/i386/cpp_alias.s)
|
||||
endif()
|
||||
elseif(ARCH STREQUAL "amd64")
|
||||
list(APPEND LIBCNTPR_EXCEPT_SOURCE
|
||||
|
@ -28,7 +29,8 @@ elseif(ARCH STREQUAL "amd64")
|
|||
)
|
||||
if(MSVC)
|
||||
list(APPEND CRT_EXCEPT_ASM_SOURCE
|
||||
except/amd64/cpp.s)
|
||||
except/amd64/cpp.s
|
||||
except/amd64/cpp_alias.s)
|
||||
endif()
|
||||
elseif(ARCH STREQUAL "arm")
|
||||
list(APPEND LIBCNTPR_EXCEPT_SOURCE
|
||||
|
@ -53,7 +55,8 @@ elseif(ARCH STREQUAL "arm")
|
|||
)
|
||||
if(MSVC)
|
||||
list(APPEND CRT_EXCEPT_ASM_SOURCE
|
||||
except/arm/cpp.s)
|
||||
except/arm/cpp.s
|
||||
except/arm/cpp_alias.s)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
|
@ -7,55 +7,6 @@
|
|||
|
||||
EXTERN _cxx_frame_handler:PROC
|
||||
|
||||
MACRO(DEFINE_THISCALL_ALIAS, cxxname, target)
|
||||
#ifdef _USE_ML
|
||||
EXTERN ___thiscall&target:PROC
|
||||
ALIAS <&cxxname> = <___thiscall&target>
|
||||
#else
|
||||
PUBLIC cxxname
|
||||
.weakref &cxxname, &target
|
||||
#endif
|
||||
ENDM
|
||||
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@ABQBD@Z, _exception_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@ABQBDH@Z, _exception_ctor_noalloc
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@ABV0@@Z, _exception_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@XZ, _exception_default_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1exception@@UAE@XZ, _exception_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4exception@@QAEAAV0@ABV0@@Z, _exception_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_Eexception@@UAEPAXI@Z, _exception_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_Gexception@@UAEPAXI@Z, _exception_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ?what@exception@@UBEPBDXZ, _exception_what
|
||||
DEFINE_THISCALL_ALIAS ??0bad_typeid@@QAE@ABV0@@Z, _bad_typeid_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_typeid@@QAE@PBD@Z, _bad_typeid_ctor
|
||||
DEFINE_THISCALL_ALIAS ??_Fbad_typeid@@QAEXXZ, _bad_typeid_default_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1bad_typeid@@UAE@XZ, _bad_typeid_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4bad_typeid@@QAEAAV0@ABV0@@Z, _bad_typeid_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_Ebad_typeid@@UAEPAXI@Z, _bad_typeid_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_Gbad_typeid@@UAEPAXI@Z, _bad_typeid_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ??0__non_rtti_object@@QAE@ABV0@@Z, ___non_rtti_object_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0__non_rtti_object@@QAE@PBD@Z, ___non_rtti_object_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1__non_rtti_object@@UAE@XZ, ___non_rtti_object_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4__non_rtti_object@@QAEAAV0@ABV0@@Z, ___non_rtti_object_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_E__non_rtti_object@@UAEPAXI@Z, ___non_rtti_object_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_G__non_rtti_object@@UAEPAXI@Z, ___non_rtti_object_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@AAE@PBQBD@Z, _bad_cast_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@QAE@ABQBD@Z, _bad_cast_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@QAE@ABV0@@Z, _bad_cast_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@QAE@PBD@Z, _bad_cast_ctor_charptr
|
||||
DEFINE_THISCALL_ALIAS ??_Fbad_cast@@QAEXXZ, _bad_cast_default_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1bad_cast@@UAE@XZ, _bad_cast_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4bad_cast@@QAEAAV0@ABV0@@Z, _bad_cast_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_Ebad_cast@@UAEPAXI@Z, _bad_cast_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_Gbad_cast@@UAEPAXI@Z, _bad_cast_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ??8type_info@@QBEHABV0@@Z, _type_info_opequals_equals
|
||||
DEFINE_THISCALL_ALIAS ??9type_info@@QBEHABV0@@Z, _type_info_opnot_equals
|
||||
DEFINE_THISCALL_ALIAS ?before@type_info@@QBEHABV1@@Z, _type_info_before
|
||||
DEFINE_THISCALL_ALIAS ??1type_info@@UAE@XZ, _type_info_dtor
|
||||
DEFINE_THISCALL_ALIAS ?name@type_info@@QBEPBDXZ, _type_info_name
|
||||
DEFINE_THISCALL_ALIAS ?raw_name@type_info@@QBEPBDXZ, _type_info_raw_name
|
||||
|
||||
|
||||
#undef _MSVCRT_
|
||||
MACRO(START_VTABLE, shortname, cxxname)
|
||||
EXTERN _&shortname&_rtti:PROC
|
||||
|
@ -80,36 +31,6 @@ DEFINE_EXCEPTION_VTABLE bad_typeid, ??_7bad_typeid@@6B@
|
|||
DEFINE_EXCEPTION_VTABLE bad_cast, ??_7bad_cast@@6B@
|
||||
DEFINE_EXCEPTION_VTABLE __non_rtti_object, ??_7__non_rtti_object@@6B@
|
||||
|
||||
EXTERN _operator_delete:PROC
|
||||
PUBLIC ??3@YAXPAX@Z
|
||||
??3@YAXPAX@Z:
|
||||
jmp _operator_delete
|
||||
|
||||
EXTERN _operator_new:PROC
|
||||
PUBLIC ??_U@YAPAXI@Z
|
||||
??_U@YAPAXI@Z:
|
||||
jmp _operator_new
|
||||
|
||||
|
||||
MACRO(DEFINE_ALIAS, alias, orig, type)
|
||||
EXTERN &orig:&type
|
||||
ALIAS <&alias> = <&orig>
|
||||
ENDM
|
||||
|
||||
DEFINE_ALIAS ??_V@YAXPAX@Z, _operator_delete, PROC
|
||||
DEFINE_ALIAS ??2@YAPAXI@Z, _operator_new, PROC
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AHI@ZXZ, __query_new_handler, PROC
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z, __set_new_handler, PROC
|
||||
DEFINE_ALIAS ?set_new_handler@@YAP6AXXZP6AXXZ@Z, _set_new_handler, PROC
|
||||
DEFINE_ALIAS ?_query_new_mode@@YAHXZ, __query_new_mode, PROC
|
||||
DEFINE_ALIAS ?_set_new_mode@@YAHH@Z, __set_new_mode, PROC
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, __set_se_translator, PROC
|
||||
DEFINE_ALIAS ?set_terminate@@YAP6AXXZP6AXXZ@Z, _set_terminate, PROC
|
||||
DEFINE_ALIAS ?set_unexpected@@YAP6AXXZP6AXXZ@Z, _set_unexpected, PROC
|
||||
DEFINE_ALIAS ?terminate@@YAXXZ, _terminate, PROC
|
||||
DEFINE_ALIAS ?unexpected@@YAXXZ, _unexpected, PROC
|
||||
|
||||
|
||||
// void call_copy_ctor( void *func, void *this, void *src, int has_vbase );
|
||||
PUBLIC _call_copy_ctor
|
||||
_call_copy_ctor:
|
||||
|
|
85
sdk/lib/crt/except/i386/cpp_alias.s
Normal file
85
sdk/lib/crt/except/i386/cpp_alias.s
Normal file
|
@ -0,0 +1,85 @@
|
|||
|
||||
|
||||
#include <asm.inc>
|
||||
|
||||
.code
|
||||
.align 4
|
||||
|
||||
MACRO(DEFINE_THISCALL_ALIAS, cxxname, target)
|
||||
#ifdef _USE_ML
|
||||
EXTERN ___thiscall&target:PROC
|
||||
ALIAS <&cxxname> = <___thiscall&target>
|
||||
#else
|
||||
PUBLIC cxxname
|
||||
.weakref &cxxname, &target
|
||||
#endif
|
||||
ENDM
|
||||
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@ABQBD@Z, _exception_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@ABQBDH@Z, _exception_ctor_noalloc
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@ABV0@@Z, _exception_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0exception@@QAE@XZ, _exception_default_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1exception@@UAE@XZ, _exception_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4exception@@QAEAAV0@ABV0@@Z, _exception_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_Eexception@@UAEPAXI@Z, _exception_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_Gexception@@UAEPAXI@Z, _exception_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ?what@exception@@UBEPBDXZ, _exception_what
|
||||
DEFINE_THISCALL_ALIAS ??0bad_typeid@@QAE@ABV0@@Z, _bad_typeid_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_typeid@@QAE@PBD@Z, _bad_typeid_ctor
|
||||
DEFINE_THISCALL_ALIAS ??_Fbad_typeid@@QAEXXZ, _bad_typeid_default_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1bad_typeid@@UAE@XZ, _bad_typeid_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4bad_typeid@@QAEAAV0@ABV0@@Z, _bad_typeid_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_Ebad_typeid@@UAEPAXI@Z, _bad_typeid_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_Gbad_typeid@@UAEPAXI@Z, _bad_typeid_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ??0__non_rtti_object@@QAE@ABV0@@Z, ___non_rtti_object_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0__non_rtti_object@@QAE@PBD@Z, ___non_rtti_object_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1__non_rtti_object@@UAE@XZ, ___non_rtti_object_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4__non_rtti_object@@QAEAAV0@ABV0@@Z, ___non_rtti_object_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_E__non_rtti_object@@UAEPAXI@Z, ___non_rtti_object_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_G__non_rtti_object@@UAEPAXI@Z, ___non_rtti_object_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@AAE@PBQBD@Z, _bad_cast_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@QAE@ABQBD@Z, _bad_cast_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@QAE@ABV0@@Z, _bad_cast_copy_ctor
|
||||
DEFINE_THISCALL_ALIAS ??0bad_cast@@QAE@PBD@Z, _bad_cast_ctor_charptr
|
||||
DEFINE_THISCALL_ALIAS ??_Fbad_cast@@QAEXXZ, _bad_cast_default_ctor
|
||||
DEFINE_THISCALL_ALIAS ??1bad_cast@@UAE@XZ, _bad_cast_dtor
|
||||
DEFINE_THISCALL_ALIAS ??4bad_cast@@QAEAAV0@ABV0@@Z, _bad_cast_opequals
|
||||
DEFINE_THISCALL_ALIAS ??_Ebad_cast@@UAEPAXI@Z, _bad_cast_vector_dtor
|
||||
DEFINE_THISCALL_ALIAS ??_Gbad_cast@@UAEPAXI@Z, _bad_cast_scalar_dtor
|
||||
DEFINE_THISCALL_ALIAS ??8type_info@@QBEHABV0@@Z, _type_info_opequals_equals
|
||||
DEFINE_THISCALL_ALIAS ??9type_info@@QBEHABV0@@Z, _type_info_opnot_equals
|
||||
DEFINE_THISCALL_ALIAS ?before@type_info@@QBEHABV1@@Z, _type_info_before
|
||||
DEFINE_THISCALL_ALIAS ??1type_info@@UAE@XZ, _type_info_dtor
|
||||
DEFINE_THISCALL_ALIAS ?name@type_info@@QBEPBDXZ, _type_info_name
|
||||
DEFINE_THISCALL_ALIAS ?raw_name@type_info@@QBEPBDXZ, _type_info_raw_name
|
||||
|
||||
EXTERN _operator_delete:PROC
|
||||
PUBLIC ??3@YAXPAX@Z
|
||||
??3@YAXPAX@Z:
|
||||
jmp _operator_delete
|
||||
|
||||
EXTERN _operator_new:PROC
|
||||
PUBLIC ??_U@YAPAXI@Z
|
||||
??_U@YAPAXI@Z:
|
||||
jmp _operator_new
|
||||
|
||||
MACRO(DEFINE_ALIAS, alias, orig, type)
|
||||
EXTERN &orig:&type
|
||||
ALIAS <&alias> = <&orig>
|
||||
ENDM
|
||||
|
||||
DEFINE_ALIAS ??_V@YAXPAX@Z, _operator_delete, PROC
|
||||
DEFINE_ALIAS ??2@YAPAXI@Z, _operator_new, PROC
|
||||
DEFINE_ALIAS ?_query_new_handler@@YAP6AHI@ZXZ, __query_new_handler, PROC
|
||||
DEFINE_ALIAS ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z, __set_new_handler, PROC
|
||||
DEFINE_ALIAS ?set_new_handler@@YAP6AXXZP6AXXZ@Z, _set_new_handler, PROC
|
||||
DEFINE_ALIAS ?_query_new_mode@@YAHXZ, __query_new_mode, PROC
|
||||
DEFINE_ALIAS ?_set_new_mode@@YAHH@Z, __set_new_mode, PROC
|
||||
DEFINE_ALIAS ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z, __set_se_translator, PROC
|
||||
DEFINE_ALIAS ?set_terminate@@YAP6AXXZP6AXXZ@Z, _set_terminate, PROC
|
||||
DEFINE_ALIAS ?set_unexpected@@YAP6AXXZP6AXXZ@Z, _set_unexpected, PROC
|
||||
DEFINE_ALIAS ?terminate@@YAXXZ, _terminate, PROC
|
||||
DEFINE_ALIAS ?unexpected@@YAXXZ, _unexpected, PROC
|
||||
|
||||
END
|
||||
|
Loading…
Reference in a new issue