Module: wine Branch: master Commit: 3d6ebecedbe46746dff1c3e0c1787db7e7ceadbc URL: http://source.winehq.org/git/wine.git/?a=commit;h=3d6ebecedbe46746dff1c3e0c1... Author: André Hentschel <nerv(a)dawncrow.de> Date: Tue Aug 6 00:16:19 2013 +0200 msvcrt/tests: Fix dynamically loaded functions for ARM. --- dlls/msvcrt/tests/cpp.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 50 insertions(+), 0 deletions(-) diff --git a/dlls/msvcrt/tests/cpp.c b/dlls/msvcrt/tests/cpp.c index fc223c5..3693014 100644 --- a/dlls/msvcrt/tests/cpp.c +++ b/dlls/msvcrt/tests/cpp.c @@ -238,6 +238,55 @@ static BOOL InitFunctionPtrs(void) } else { +#ifdef __arm__ + SETNOFAIL(poperator_new, "??_U(a)YAPAXI@Z"); + SETNOFAIL(poperator_delete, "??_V(a)YAXPAX@Z"); + + SET(pexception_ctor, "??0exception(a)std@@QAA(a)ABQBD@Z"); + SET(pexception_copy_ctor, "??0exception(a)std@@QAA(a)ABV01@@Z"); + SET(pexception_default_ctor, "??0exception(a)std@@QAA(a)XZ"); + SET(pexception_dtor, "??1exception(a)std@@UAA(a)XZ"); + SET(pexception_opequals, "??4exception(a)std@@QAAAAV01(a)ABV01@@Z"); + SET(pexception_what, "?what(a)exception@std@@UBAPBDXZ"); + SET(pexception_vector_dtor, "??_Eexception@@UAEPAXI(a)Z");/**/ + SET(pexception_scalar_dtor, "??_Gexception@@UAEPAXI(a)Z");/**/ + + SET(pbad_typeid_ctor, "??0bad_typeid(a)std@@QAA(a)PBD@Z"); + SETNOFAIL(pbad_typeid_ctor_closure, "??_Fbad_typeid(a)std@@QAAXXZ"); + SET(pbad_typeid_copy_ctor, "??0bad_typeid(a)std@@QAA(a)ABV01@@Z"); + SET(pbad_typeid_dtor, "??1bad_typeid(a)std@@UAA(a)XZ"); + SET(pbad_typeid_opequals, "??4bad_typeid(a)std@@QAAAAV01(a)ABV01@@Z"); + SET(pbad_typeid_what, "?what(a)exception@std@@UBAPBDXZ"); + SET(pbad_typeid_vector_dtor, "??_Ebad_cast@@UAEPAXI(a)Z"); + SET(pbad_typeid_scalar_dtor, "??_Gbad_cast@@UAEPAXI(a)Z"); + + SETNOFAIL(pbad_cast_ctor, "??0bad_cast@@QAE(a)ABQBD@Z"); + if (!pbad_cast_ctor) + SET(pbad_cast_ctor, "??0bad_cast(a)std@@AAA(a)PBQBD@Z"); + SETNOFAIL(pbad_cast_ctor2, "??0bad_cast(a)std@@QAA(a)PBD@Z"); + SETNOFAIL(pbad_cast_ctor_closure, "??_Fbad_cast(a)std@@QAAXXZ"); + /* FIXME: No ARM equivalent for "??0bad_cast@@QAE(a)ABV0@@Z" */ + SET(pbad_cast_dtor, "??1bad_cast(a)std@@UAA(a)XZ"); + SET(pbad_cast_opequals, "??4bad_cast(a)std@@QAAAAV01(a)ABV01@@Z"); + SET(pbad_cast_what, "?what(a)exception@std@@UBAPBDXZ"); + SET(pbad_cast_vector_dtor, "??_Ebad_cast@@UAEPAXI(a)Z"); + SET(pbad_cast_scalar_dtor, "??_Gbad_cast@@UAEPAXI(a)Z"); + + SET(p__non_rtti_object_ctor, "??0__non_rtti_object(a)std@@QAA(a)PBD@Z"); + SET(p__non_rtti_object_copy_ctor, "??0__non_rtti_object(a)std@@QAA(a)ABV01@@Z"); + SET(p__non_rtti_object_dtor, "??1__non_rtti_object(a)std@@UAA(a)XZ"); + SET(p__non_rtti_object_opequals, "??4__non_rtti_object(a)std@@QAAAAV01(a)ABV01@@Z"); + SET(p__non_rtti_object_what, "?what(a)exception@std@@UBAPBDXZ"); + SET(p__non_rtti_object_vector_dtor, "??_E__non_rtti_object@@UAEPAXI(a)Z"); + SET(p__non_rtti_object_scalar_dtor, "??_G__non_rtti_object@@UAEPAXI(a)Z"); + + SET(ptype_info_dtor, "??1type_info@@UAA(a)XZ"); + SET(ptype_info_raw_name, "?raw_name(a)type_info@@QBAPBDXZ"); + SET(ptype_info_name, "?name(a)type_info@@QBEPBDXZ"); + SET(ptype_info_before, "?before(a)type_info@@QBEHABV1@@Z"); + SET(ptype_info_opequals_equals, "??8type_info@@QBA_NABV0@@Z"); + SET(ptype_info_opnot_equals, "??9type_info@@QBA_NABV0@@Z"); +#else SETNOFAIL(poperator_new, "??_U(a)YAPAXI@Z"); SETNOFAIL(poperator_delete, "??_V(a)YAXPAX@Z"); @@ -285,6 +334,7 @@ static BOOL InitFunctionPtrs(void) SET(ptype_info_before, "?before(a)type_info@@QBEHABV1@@Z"); SET(ptype_info_opequals_equals, "??8type_info@@QBEHABV0@@Z"); SET(ptype_info_opnot_equals, "??9type_info@@QBEHABV0@@Z"); +#endif /* __arm__ */ } if (!poperator_new)