msvcrt: Avoid using inline assembly in __ExceptionPtrDestroy().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com> Signed-off-by: Piotr Caban <piotr@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
e6e7976d66
commit
6f819b49c1
|
@ -1718,10 +1718,12 @@ void __cdecl __ExceptionPtrCreate(exception_ptr *ep)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __i386__
|
#ifdef __i386__
|
||||||
static inline void call_dtor(const cxx_exception_type *type, void *func, void *object)
|
extern void call_dtor(const cxx_exception_type *type, void *func, void *object);
|
||||||
{
|
|
||||||
__asm__ __volatile__("call *%0" : : "m" (func), "c" (object) : "eax", "edx", "memory");
|
__ASM_GLOBAL_FUNC( call_dtor,
|
||||||
}
|
"movl 12(%esp),%ecx\n\t"
|
||||||
|
"call *8(%esp)\n\t"
|
||||||
|
"ret" );
|
||||||
#elif __x86_64__
|
#elif __x86_64__
|
||||||
static inline void call_dtor(const cxx_exception_type *type, unsigned int dtor, void *object)
|
static inline void call_dtor(const cxx_exception_type *type, unsigned int dtor, void *object)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue