Module: wine Branch: master Commit: 07a9909ccaea1e9626731c4b259f555877d50bb2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=07a9909ccaea1e9626731c4b25...
Author: Piotr Caban piotr@codeweavers.com Date: Thu Dec 15 10:16:08 2011 +0100
msvcp90: Removed __ASM_EXCEPTION_VTABLE macro.
---
dlls/msvcp90/exception.c | 23 ++++++----------------- dlls/msvcp90/msvcp90.h | 4 ++++ 2 files changed, 10 insertions(+), 17 deletions(-)
diff --git a/dlls/msvcp90/exception.c b/dlls/msvcp90/exception.c index 0008f43..f2ff017 100644 --- a/dlls/msvcp90/exception.c +++ b/dlls/msvcp90/exception.c @@ -61,17 +61,6 @@ typedef struct __cxx_exception_type void WINAPI _CxxThrowException(exception*,const cxx_exception_type*);
/* vtables */ - -#ifdef _WIN64 - -#define __ASM_EXCEPTION_VTABLE(name, what_func) \ - __ASM_VTABLE(name, "\t.quad " THISCALL_NAME(what_func) ) -#else - -#define __ASM_EXCEPTION_VTABLE(name, what_func) \ - __ASM_VTABLE(name, "\t.long " THISCALL_NAME(what_func) ) -#endif /* _WIN64 */ - extern const vtable_ptr MSVCP_bad_alloc_vtable; extern const vtable_ptr MSVCP_logic_error_vtable; extern const vtable_ptr MSVCP_length_error_vtable; @@ -806,12 +795,12 @@ const char* __thiscall MSVCP_runtime_error_what(runtime_error *this) #ifndef __GNUC__ void __asm_dummy_vtables(void) { #endif - __ASM_EXCEPTION_VTABLE(bad_alloc, MSVCP_what_exception); - __ASM_EXCEPTION_VTABLE(logic_error, MSVCP_logic_error_what); - __ASM_EXCEPTION_VTABLE(length_error, MSVCP_logic_error_what); - __ASM_EXCEPTION_VTABLE(out_of_range, MSVCP_logic_error_what); - __ASM_EXCEPTION_VTABLE(invalid_argument, MSVCP_logic_error_what); - __ASM_EXCEPTION_VTABLE(runtime_error, MSVCP_runtime_error_what); + __ASM_VTABLE(bad_alloc, VTABLE_ADD_FUNC(MSVCP_what_exception)); + __ASM_VTABLE(logic_error, VTABLE_ADD_FUNC(MSVCP_logic_error_what)); + __ASM_VTABLE(length_error, VTABLE_ADD_FUNC(MSVCP_logic_error_what)); + __ASM_VTABLE(out_of_range, VTABLE_ADD_FUNC(MSVCP_logic_error_what)); + __ASM_VTABLE(invalid_argument, VTABLE_ADD_FUNC(MSVCP_logic_error_what)); + __ASM_VTABLE(runtime_error, VTABLE_ADD_FUNC(MSVCP_runtime_error_what)); #ifndef __GNUC__ } #endif diff --git a/dlls/msvcp90/msvcp90.h b/dlls/msvcp90/msvcp90.h index ed66d23..5d61779 100644 --- a/dlls/msvcp90/msvcp90.h +++ b/dlls/msvcp90/msvcp90.h @@ -66,6 +66,8 @@ extern void* (__cdecl *MSVCRT_set_new_handler)(void*);
#ifdef _WIN64
+#define VTABLE_ADD_FUNC(name) "\t.quad " THISCALL_NAME(name) "\n" + #define __ASM_VTABLE(name,funcs) \ __asm__(".data\n" \ "\t.align 8\n" \ @@ -77,6 +79,8 @@ extern void* (__cdecl *MSVCRT_set_new_handler)(void*);
#else
+#define VTABLE_ADD_FUNC(name) "\t.long " THISCALL_NAME(name) "\n" + #define __ASM_VTABLE(name,funcs) \ __asm__(".data\n" \ "\t.align 4\n" \