Piotr Caban : msvcp90: Added allocator<char> 64-bit exports.
Module: wine Branch: master Commit: 2a866928c9834dbc94b506225b58276a4198d937 URL: http://source.winehq.org/git/wine.git/?a=commit;h=2a866928c9834dbc94b506225b... Author: Piotr Caban <piotr(a)codeweavers.com> Date: Wed Aug 18 10:36:10 2010 +0200 msvcp90: Added allocator<char> 64-bit exports. --- dlls/msvcp90/memory.c | 19 +++++++++++++++---- dlls/msvcp90/msvcp90.spec | 22 +++++++++++----------- 2 files changed, 26 insertions(+), 15 deletions(-) diff --git a/dlls/msvcp90/memory.c b/dlls/msvcp90/memory.c index 14e6ea0..6c0c50a 100644 --- a/dlls/msvcp90/memory.c +++ b/dlls/msvcp90/memory.c @@ -29,6 +29,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(msvcp90); /* ?address@?$allocator(a)D@std@@QBEPADAAD(a)Z */ +/* ?address@?$allocator(a)D@std@@QEBAPEADAEAD(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_address, 8) char* __stdcall MSVCP_allocator_char_address(void *this, char *ptr) { @@ -36,6 +37,7 @@ char* __stdcall MSVCP_allocator_char_address(void *this, char *ptr) } /* ?address@?$allocator(a)D@std@@QBEPBDABD(a)Z */ +/* ?address@?$allocator(a)D@std@@QEBAPEBDAEBD(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_const_address, 8) const char* __stdcall MSVCP_allocator_char_const_address(void *this, const char *ptr) { @@ -43,6 +45,7 @@ const char* __stdcall MSVCP_allocator_char_const_address(void *this, const char } /* ??0?$allocator(a)D@std@@QAE(a)XZ */ +/* ??0?$allocator(a)D@std@@QEAA(a)XZ */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_ctor, 4) void* __stdcall MSVCP_allocator_char_ctor(void *this) { @@ -50,6 +53,7 @@ void* __stdcall MSVCP_allocator_char_ctor(void *this) } /* ??0?$allocator(a)D@std@@QAE(a)ABV01@@Z */ +/* ??0?$allocator(a)D@std@@QEAA(a)AEBV01@@Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_copy_ctor, 8) void* __stdcall MSVCP_allocator_char_copy_ctor(void *this, void *copy) { @@ -57,6 +61,7 @@ void* __stdcall MSVCP_allocator_char_copy_ctor(void *this, void *copy) } /* ??4?$allocator(a)D@std@@QAEAAV01(a)ABV01@@Z */ +/* ??4?$allocator(a)D@std@@QEAAAEAV01(a)AEBV01@@Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_assign, 8); void* __stdcall MSVCP_allocator_char_assign(void *this, void *assign) { @@ -64,29 +69,33 @@ void* __stdcall MSVCP_allocator_char_assign(void *this, void *assign) } /* ?deallocate@?$allocator(a)D@std@@QAEXPADI(a)Z */ +/* ?deallocate@?$allocator(a)D@std@@QEAAXPEAD_K(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_deallocate, 12); -void __stdcall MSVCP_allocator_char_deallocate(void *this, char *ptr, unsigned int size) +void __stdcall MSVCP_allocator_char_deallocate(void *this, char *ptr, size_t size) { MSVCRT_operator_delete(ptr); } /* ?allocate@?$allocator(a)D@std@@QAEPADI(a)Z */ +/* ?allocate@?$allocator(a)D@std@@QEAAPEAD_K(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_allocate, 8); -char* __stdcall MSVCP_allocator_char_allocate(void *this, unsigned int count) +char* __stdcall MSVCP_allocator_char_allocate(void *this, size_t count) { return MSVCRT_operator_new(sizeof(char[count])); } /* ?allocate@?$allocator(a)D@std@@QAEPADIPBX(a)Z */ +/* ?allocate@?$allocator(a)D@std@@QEAAPEAD_KPEBX(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_allocate_hint, 12); char* __stdcall MSVCP_allocator_char_allocate_hint(void *this, - unsigned int count, const void *hint) + size_t count, const void *hint) { /* Native ignores hint */ return MSVCP_allocator_char_allocate(this, count); } /* ?construct@?$allocator(a)D@std@@QAEXPADABD(a)Z */ +/* ?construct@?$allocator(a)D@std@@QEAAXPEADAEBD(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_construct, 12); void __stdcall MSVCP_allocator_char_construct(void *this, char *ptr, const char *val) { @@ -94,14 +103,16 @@ void __stdcall MSVCP_allocator_char_construct(void *this, char *ptr, const char } /* ?destroy@?$allocator(a)D@std@@QAEXPAD(a)Z */ +/* ?destroy@?$allocator(a)D@std@@QEAAXPEAD(a)Z */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_destroy, 8); void __stdcall MSVCP_allocator_char_destroy(void *this, char *ptr) { } /* ?max_size@?$allocator(a)D@std@@QBEIXZ */ +/* ?max_size@?$allocator(a)D@std@@QEBA_KXZ */ DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_max_size, 4); -unsigned int __stdcall MSVCP_allocator_char_max_size(void *this) +size_t __stdcall MSVCP_allocator_char_max_size(void *this) { return UINT_MAX/sizeof(char); } diff --git a/dlls/msvcp90/msvcp90.spec b/dlls/msvcp90/msvcp90.spec index 34d19f1..34c9061 100644 --- a/dlls/msvcp90/msvcp90.spec +++ b/dlls/msvcp90/msvcp90.spec @@ -531,9 +531,9 @@ @ stub -arch=win32 ??0?$_String_val(a)_WV?$allocator(a)_W@std@@@std@@QAE(a)ABV01@@Z @ stub -arch=win64 ??0?$_String_val(a)_WV?$allocator(a)_W@std@@@std@@QEAA(a)AEBV01@@Z @ cdecl -arch=win32 -i386 -norelay ??0?$allocator(a)D@std@@QAE(a)ABV01@@Z(ptr) __thiscall_MSVCP_allocator_char_copy_ctor -@ stub -arch=win64 ??0?$allocator(a)D@std@@QEAA(a)AEBV01@@Z +@ cdecl -arch=win64 ??0?$allocator(a)D@std@@QEAA(a)AEBV01@@Z(ptr ptr) MSVCP_allocator_char_copy_ctor @ cdecl -arch=win32 -i386 -norelay ??0?$allocator(a)D@std@@QAE(a)XZ() __thiscall_MSVCP_allocator_char_ctor -@ stub -arch=win64 ??0?$allocator(a)D@std@@QEAA(a)XZ +@ cdecl -arch=win64 ??0?$allocator(a)D@std@@QEAA(a)XZ(ptr) MSVCP_allocator_char_ctor @ stub -arch=win32 ??0?$allocator(a)G@std@@QAE(a)ABV01@@Z @ stub -arch=win64 ??0?$allocator(a)G@std@@QEAA(a)AEBV01@@Z @ stub -arch=win32 ??0?$allocator(a)G@std@@QAE(a)XZ @@ -1373,7 +1373,7 @@ @ stub -arch=win32 ??4?$_String_val(a)_WV?$allocator(a)_W@std@@@std@@QAEAAV01(a)ABV01@@Z @ stub -arch=win64 ??4?$_String_val(a)_WV?$allocator(a)_W@std@@@std@@QEAAAEAV01(a)AEBV01@@Z @ cdecl -arch=win32 -i386 -norelay ??4?$allocator(a)D@std@@QAEAAV01(a)ABV01@@Z(ptr) __thiscall_MSVCP_allocator_char_assign -@ stub -arch=win64 ??4?$allocator(a)D@std@@QEAAAEAV01(a)AEBV01@@Z +@ cdecl -arch=win64 ??4?$allocator(a)D@std@@QEAAAEAV01(a)AEBV01@@Z(ptr ptr) MSVCP_allocator_char_assign @ stub -arch=win32 ??4?$allocator(a)G@std@@QAEAAV01(a)ABV01@@Z @ stub -arch=win64 ??4?$allocator(a)G@std@@QEAAAEAV01(a)AEBV01@@Z @ stub -arch=win32 ??4?$allocator(a)X@std@@QAEAAV01(a)ABV01@@Z @@ -2891,9 +2891,9 @@ @ stub -arch=win64 ?_Xsgetn_s@?$basic_streambuf(a)_WU?$char_traits(a)_W@std@@@std@@MEAA_JPEA_W_K_J(a)Z @ stub ?_Xweak(a)tr1@std@@YAXXZ @ cdecl -arch=win32 -i386 -norelay ?address@?$allocator(a)D@std@@QBEPADAAD(a)Z(ptr) __thiscall_MSVCP_allocator_char_address -@ stub -arch=win64 ?address@?$allocator(a)D@std@@QEBAPEADAEAD(a)Z +@ cdecl -arch=win64 ?address@?$allocator(a)D@std@@QEBAPEADAEAD(a)Z(ptr ptr) MSVCP_allocator_char_address @ cdecl -arch=win32 -i386 -norelay ?address@?$allocator(a)D@std@@QBEPBDABD(a)Z(ptr) __thiscall_MSVCP_allocator_char_const_address -@ stub -arch=win64 ?address@?$allocator(a)D@std@@QEBAPEBDAEBD(a)Z +@ cdecl -arch=win64 ?address@?$allocator(a)D@std@@QEBAPEBDAEBD(a)Z(ptr ptr) MSVCP_allocator_char_const_address @ stub -arch=win32 ?address@?$allocator(a)G@std@@QBEPAGAAG(a)Z @ stub -arch=win64 ?address@?$allocator(a)G@std@@QEBAPEAGAEAG(a)Z @ stub -arch=win32 ?address@?$allocator(a)G@std@@QBEPBGABG(a)Z @@ -2903,9 +2903,9 @@ @ stub -arch=win32 ?address@?$allocator(a)_W@std@@QBEPB_WAB_W(a)Z @ stub -arch=win64 ?address@?$allocator(a)_W@std@@QEBAPEB_WAEB_W(a)Z @ cdecl -arch=win32 -i386 -norelay ?allocate@?$allocator(a)D@std@@QAEPADI(a)Z(long) __thiscall_MSVCP_allocator_char_allocate -@ stub -arch=win64 ?allocate@?$allocator(a)D@std@@QEAAPEAD_K(a)Z +@ cdecl -arch=win64 ?allocate@?$allocator(a)D@std@@QEAAPEAD_K(a)Z(ptr long) MSVCP_allocator_char_allocate @ cdecl -arch=win32 -i386 -norelay ?allocate@?$allocator(a)D@std@@QAEPADIPBX(a)Z(long ptr) __thiscall_MSVCP_allocator_char_allocate_hint -@ stub -arch=win64 ?allocate@?$allocator(a)D@std@@QEAAPEAD_KPEBX(a)Z +@ cdecl -arch=win64 ?allocate@?$allocator(a)D@std@@QEAAPEAD_KPEBX(a)Z(ptr long ptr) MSVCP_allocator_char_allocate_hint @ stub -arch=win32 ?allocate@?$allocator(a)G@std@@QAEPAGI(a)Z @ stub -arch=win64 ?allocate@?$allocator(a)G@std@@QEAAPEAG_K(a)Z @ stub -arch=win32 ?allocate@?$allocator(a)G@std@@QAEPAGIPBX(a)Z @@ -3163,7 +3163,7 @@ @ stub -arch=win32 ?compare@?$collate(a)_W@std@@QBEHPB_W000(a)Z @ stub -arch=win64 ?compare@?$collate(a)_W@std@@QEBAHPEB_W000(a)Z @ cdecl -arch=win32 -i386 -norelay ?construct@?$allocator(a)D@std@@QAEXPADABD(a)Z(ptr ptr) __thiscall_MSVCP_allocator_char_construct -@ stub -arch=win64 ?construct@?$allocator(a)D@std@@QEAAXPEADAEBD(a)Z +@ cdecl -arch=win64 ?construct@?$allocator(a)D@std@@QEAAXPEADAEBD(a)Z(ptr ptr ptr) MSVCP_allocator_char_construct @ stub -arch=win32 ?construct@?$allocator(a)G@std@@QAEXPAGABG(a)Z @ stub -arch=win64 ?construct@?$allocator(a)G@std@@QEAAXPEAGAEBG(a)Z @ stub -arch=win32 ?construct@?$allocator(a)_W@std@@QAEXPA_WAB_W(a)Z @@ -3211,7 +3211,7 @@ @ stub -arch=win32 ?date_order@?$time_get(a)_WV?$istreambuf_iterator(a)_WU?$char_traits(a)_W@std@@@std@@@std@@QBE?AW4dateorder(a)time_base@2(a)XZ @ stub -arch=win64 ?date_order@?$time_get(a)_WV?$istreambuf_iterator(a)_WU?$char_traits(a)_W@std@@@std@@@std@@QEBA?AW4dateorder(a)time_base@2(a)XZ @ cdecl -arch=win32 -i386 -norelay ?deallocate@?$allocator(a)D@std@@QAEXPADI(a)Z(ptr long) __thiscall_MSVCP_allocator_char_deallocate -@ stub -arch=win64 ?deallocate@?$allocator(a)D@std@@QEAAXPEAD_K(a)Z +@ cdecl -arch=win64 ?deallocate@?$allocator(a)D@std@@QEAAXPEAD_K(a)Z(ptr ptr long) MSVCP_allocator_char_deallocate @ stub -arch=win32 ?deallocate@?$allocator(a)G@std@@QAEXPAGI(a)Z @ stub -arch=win64 ?deallocate@?$allocator(a)G@std@@QEAAXPEAG_K(a)Z @ stub -arch=win32 ?deallocate@?$allocator(a)_W@std@@QAEXPA_WI(a)Z @@ -3245,7 +3245,7 @@ @ stub ?denorm_min@?$numeric_limits(a)_N@std@@SA_NXZ @ stub ?denorm_min@?$numeric_limits(a)_W@std@@SA_WXZ @ cdecl -arch=win32 -i386 -norelay ?destroy@?$allocator(a)D@std@@QAEXPAD(a)Z(ptr) __thiscall_MSVCP_allocator_char_destroy -@ stub -arch=win64 ?destroy@?$allocator(a)D@std@@QEAAXPEAD(a)Z +@ cdecl -arch=win64 ?destroy@?$allocator(a)D@std@@QEAAXPEAD(a)Z(ptr ptr) MSVCP_allocator_char_destroy @ stub -arch=win32 ?destroy@?$allocator(a)G@std@@QAEXPAG(a)Z @ stub -arch=win64 ?destroy@?$allocator(a)G@std@@QEAAXPEAG(a)Z @ stub -arch=win32 ?destroy@?$allocator(a)_W@std@@QAEXPA_W(a)Z @@ -4510,7 +4510,7 @@ @ stub -arch=win32 ?max_length(a)codecvt_base@std@@QBEHXZ @ stub -arch=win64 ?max_length(a)codecvt_base@std@@QEBAHXZ @ cdecl -arch=win32 -i386 -norelay ?max_size@?$allocator(a)D@std@@QBEIXZ() __thiscall_MSVCP_allocator_char_max_size -@ stub -arch=win64 ?max_size@?$allocator(a)D@std@@QEBA_KXZ +@ cdecl -arch=win64 ?max_size@?$allocator(a)D@std@@QEBA_KXZ(ptr) MSVCP_allocator_char_max_size @ stub -arch=win32 ?max_size@?$allocator(a)G@std@@QBEIXZ @ stub -arch=win64 ?max_size@?$allocator(a)G@std@@QEBA_KXZ @ stub -arch=win32 ?max_size@?$allocator(a)_W@std@@QBEIXZ
participants (1)
-
Alexandre Julliard