msvcrt/tests: Fix dynamically loaded functions for ARM
André Hentschel
nerv at dawncrow.de
Mon Aug 5 17:16:19 CDT 2013
---
dlls/msvcrt/tests/cpp.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
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 at YAPAXI@Z");
+ SETNOFAIL(poperator_delete, "??_V at YAXPAX@Z");
+
+ SET(pexception_ctor, "??0exception at std@@QAA at ABQBD@Z");
+ SET(pexception_copy_ctor, "??0exception at std@@QAA at ABV01@@Z");
+ SET(pexception_default_ctor, "??0exception at std@@QAA at XZ");
+ SET(pexception_dtor, "??1exception at std@@UAA at XZ");
+ SET(pexception_opequals, "??4exception at std@@QAAAAV01 at ABV01@@Z");
+ SET(pexception_what, "?what at exception@std@@UBAPBDXZ");
+ SET(pexception_vector_dtor, "??_Eexception@@UAEPAXI at Z");/**/
+ SET(pexception_scalar_dtor, "??_Gexception@@UAEPAXI at Z");/**/
+
+ SET(pbad_typeid_ctor, "??0bad_typeid at std@@QAA at PBD@Z");
+ SETNOFAIL(pbad_typeid_ctor_closure, "??_Fbad_typeid at std@@QAAXXZ");
+ SET(pbad_typeid_copy_ctor, "??0bad_typeid at std@@QAA at ABV01@@Z");
+ SET(pbad_typeid_dtor, "??1bad_typeid at std@@UAA at XZ");
+ SET(pbad_typeid_opequals, "??4bad_typeid at std@@QAAAAV01 at ABV01@@Z");
+ SET(pbad_typeid_what, "?what at exception@std@@UBAPBDXZ");
+ SET(pbad_typeid_vector_dtor, "??_Ebad_cast@@UAEPAXI at Z");
+ SET(pbad_typeid_scalar_dtor, "??_Gbad_cast@@UAEPAXI at Z");
+
+ SETNOFAIL(pbad_cast_ctor, "??0bad_cast@@QAE at ABQBD@Z");
+ if (!pbad_cast_ctor)
+ SET(pbad_cast_ctor, "??0bad_cast at std@@AAA at PBQBD@Z");
+ SETNOFAIL(pbad_cast_ctor2, "??0bad_cast at std@@QAA at PBD@Z");
+ SETNOFAIL(pbad_cast_ctor_closure, "??_Fbad_cast at std@@QAAXXZ");
+ /* FIXME: No ARM equivalent for "??0bad_cast@@QAE at ABV0@@Z" */
+ SET(pbad_cast_dtor, "??1bad_cast at std@@UAA at XZ");
+ SET(pbad_cast_opequals, "??4bad_cast at std@@QAAAAV01 at ABV01@@Z");
+ SET(pbad_cast_what, "?what at exception@std@@UBAPBDXZ");
+ SET(pbad_cast_vector_dtor, "??_Ebad_cast@@UAEPAXI at Z");
+ SET(pbad_cast_scalar_dtor, "??_Gbad_cast@@UAEPAXI at Z");
+
+ SET(p__non_rtti_object_ctor, "??0__non_rtti_object at std@@QAA at PBD@Z");
+ SET(p__non_rtti_object_copy_ctor, "??0__non_rtti_object at std@@QAA at ABV01@@Z");
+ SET(p__non_rtti_object_dtor, "??1__non_rtti_object at std@@UAA at XZ");
+ SET(p__non_rtti_object_opequals, "??4__non_rtti_object at std@@QAAAAV01 at ABV01@@Z");
+ SET(p__non_rtti_object_what, "?what at exception@std@@UBAPBDXZ");
+ SET(p__non_rtti_object_vector_dtor, "??_E__non_rtti_object@@UAEPAXI at Z");
+ SET(p__non_rtti_object_scalar_dtor, "??_G__non_rtti_object@@UAEPAXI at Z");
+
+ SET(ptype_info_dtor, "??1type_info@@UAA at XZ");
+ SET(ptype_info_raw_name, "?raw_name at type_info@@QBAPBDXZ");
+ SET(ptype_info_name, "?name at type_info@@QBEPBDXZ");
+ SET(ptype_info_before, "?before at 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 at YAPAXI@Z");
SETNOFAIL(poperator_delete, "??_V at YAXPAX@Z");
@@ -285,6 +334,7 @@ static BOOL InitFunctionPtrs(void)
SET(ptype_info_before, "?before at 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)
--
1.8.1.2
More information about the wine-patches
mailing list