Commit cef3dcbd authored by Torge Matthies's avatar Torge Matthies Committed by Alexandre Julliard

msvcr100: Implement missing_wait exception.

parent d1468c2b
...@@ -180,12 +180,12 @@ ...@@ -180,12 +180,12 @@
@ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ @ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ
@ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ @ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ
@ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ @ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@XZ @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@XZ(ptr) missing_wait_ctor
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ(ptr) missing_wait_ctor
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ(ptr) missing_wait_ctor
@ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z @ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z
@ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z @ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z
@ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z @ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z
......
...@@ -122,10 +122,10 @@ ...@@ -122,10 +122,10 @@
@ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@PEBD@Z @ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@PEBD@Z
@ stub -arch=win32 ??0message_not_found@Concurrency@@QAE@XZ @ stub -arch=win32 ??0message_not_found@Concurrency@@QAE@XZ
@ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ @ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ
@ stub -arch=win32 ??0missing_wait@Concurrency@@QAE@PBD@Z @ thiscall -arch=win32 ??0missing_wait@Concurrency@@QAE@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=win32 ??0missing_wait@Concurrency@@QAE@XZ @ thiscall -arch=win32 ??0missing_wait@Concurrency@@QAE@XZ(ptr) missing_wait_ctor
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ(ptr) missing_wait_ctor
@ stub -arch=win32 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z @ stub -arch=win32 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z
@ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z @ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z
@ stub -arch=win32 ??0nested_scheduler_missing_detach@Concurrency@@QAE@XZ @ stub -arch=win32 ??0nested_scheduler_missing_detach@Concurrency@@QAE@XZ
......
...@@ -209,12 +209,12 @@ ...@@ -209,12 +209,12 @@
@ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ @ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ
@ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ @ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ
@ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ @ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@XZ @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@XZ(ptr) missing_wait_ctor
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ(ptr) missing_wait_ctor
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ(ptr) missing_wait_ctor
@ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z @ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z
@ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z @ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z
@ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z @ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z
......
...@@ -206,12 +206,12 @@ ...@@ -206,12 +206,12 @@
@ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ @ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ
@ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ @ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ
@ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ @ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z(ptr str) missing_wait_ctor_str
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@XZ @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@XZ(ptr) missing_wait_ctor
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ(ptr) missing_wait_ctor
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ(ptr) missing_wait_ctor
@ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z @ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z
@ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z @ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z
@ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z @ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z
......
...@@ -204,12 +204,12 @@ ...@@ -204,12 +204,12 @@
@ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ @ stub -arch=arm ??0message_not_found@Concurrency@@QAA@XZ
@ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ @ stub -arch=i386 ??0message_not_found@Concurrency@@QAE@XZ
@ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ @ stub -arch=win64 ??0message_not_found@Concurrency@@QEAA@XZ
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@PBD@Z(ptr str) msvcr120.??0missing_wait@Concurrency@@QAA@PBD@Z
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@PBD@Z(ptr str) msvcr120.??0missing_wait@Concurrency@@QAE@PBD@Z
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@PEBD@Z(ptr str) msvcr120.??0missing_wait@Concurrency@@QEAA@PEBD@Z
@ stub -arch=arm ??0missing_wait@Concurrency@@QAA@XZ @ cdecl -arch=arm ??0missing_wait@Concurrency@@QAA@XZ(ptr) msvcr120.??0missing_wait@Concurrency@@QAA@XZ
@ stub -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ @ thiscall -arch=i386 ??0missing_wait@Concurrency@@QAE@XZ(ptr) msvcr120.??0missing_wait@Concurrency@@QAE@XZ
@ stub -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ @ cdecl -arch=win64 ??0missing_wait@Concurrency@@QEAA@XZ(ptr) msvcr120.??0missing_wait@Concurrency@@QEAA@XZ
@ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z @ stub -arch=arm ??0nested_scheduler_missing_detach@Concurrency@@QAA@PBD@Z
@ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z @ stub -arch=i386 ??0nested_scheduler_missing_detach@Concurrency@@QAE@PBD@Z
@ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z @ stub -arch=win64 ??0nested_scheduler_missing_detach@Concurrency@@QEAA@PEBD@Z
......
...@@ -361,6 +361,9 @@ extern const vtable_ptr invalid_scheduler_policy_thread_specification_vtable; ...@@ -361,6 +361,9 @@ extern const vtable_ptr invalid_scheduler_policy_thread_specification_vtable;
typedef exception invalid_scheduler_policy_value; typedef exception invalid_scheduler_policy_value;
extern const vtable_ptr invalid_scheduler_policy_value_vtable; extern const vtable_ptr invalid_scheduler_policy_value_vtable;
typedef exception missing_wait;
extern const vtable_ptr missing_wait_vtable;
typedef struct { typedef struct {
exception e; exception e;
HRESULT hr; HRESULT hr;
...@@ -584,6 +587,34 @@ invalid_scheduler_policy_value * __thiscall invalid_scheduler_policy_value_copy_ ...@@ -584,6 +587,34 @@ invalid_scheduler_policy_value * __thiscall invalid_scheduler_policy_value_copy_
return __exception_copy_ctor(_this, rhs, &invalid_scheduler_policy_value_vtable); return __exception_copy_ctor(_this, rhs, &invalid_scheduler_policy_value_vtable);
} }
/* ??0missing_wait@Concurrency@@QAA@PBD@Z */
/* ??0missing_wait@Concurrency@@QAE@PBD@Z */
/* ??0missing_wait@Concurrency@@QEAA@PEBD@Z */
DEFINE_THISCALL_WRAPPER(missing_wait_ctor_str, 8)
missing_wait* __thiscall missing_wait_ctor_str(
missing_wait *this, const char *str)
{
TRACE("(%p %p)\n", this, str);
return __exception_ctor(this, str, &missing_wait_vtable);
}
/* ??0missing_wait@Concurrency@@QAA@XZ */
/* ??0missing_wait@Concurrency@@QAE@XZ */
/* ??0missing_wait@Concurrency@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(missing_wait_ctor, 4)
missing_wait* __thiscall missing_wait_ctor(missing_wait *this)
{
return missing_wait_ctor_str(this, NULL);
}
DEFINE_THISCALL_WRAPPER(missing_wait_copy_ctor,8)
missing_wait * __thiscall missing_wait_copy_ctor(
missing_wait * _this, const missing_wait * rhs)
{
TRACE("(%p %p)\n", _this, rhs);
return __exception_copy_ctor(_this, rhs, &missing_wait_vtable);
}
/* ??0scheduler_resource_allocation_error@Concurrency@@QAE@PBDJ@Z */ /* ??0scheduler_resource_allocation_error@Concurrency@@QAE@PBDJ@Z */
/* ??0scheduler_resource_allocation_error@Concurrency@@QEAA@PEBDJ@Z */ /* ??0scheduler_resource_allocation_error@Concurrency@@QEAA@PEBDJ@Z */
DEFINE_THISCALL_WRAPPER(scheduler_resource_allocation_error_ctor_name, 12) DEFINE_THISCALL_WRAPPER(scheduler_resource_allocation_error_ctor_name, 12)
...@@ -643,6 +674,8 @@ DEFINE_RTTI_DATA1(invalid_scheduler_policy_thread_specification, 0, &cexception_ ...@@ -643,6 +674,8 @@ DEFINE_RTTI_DATA1(invalid_scheduler_policy_thread_specification, 0, &cexception_
".?AVinvalid_scheduler_policy_thread_specification@Concurrency@@") ".?AVinvalid_scheduler_policy_thread_specification@Concurrency@@")
DEFINE_RTTI_DATA1(invalid_scheduler_policy_value, 0, &cexception_rtti_base_descriptor, DEFINE_RTTI_DATA1(invalid_scheduler_policy_value, 0, &cexception_rtti_base_descriptor,
".?AVinvalid_scheduler_policy_value@Concurrency@@") ".?AVinvalid_scheduler_policy_value@Concurrency@@")
DEFINE_RTTI_DATA1(missing_wait, 0, &cexception_rtti_base_descriptor,
".?AVmissing_wait@Concurrency@@")
DEFINE_RTTI_DATA1(scheduler_resource_allocation_error, 0, &cexception_rtti_base_descriptor, DEFINE_RTTI_DATA1(scheduler_resource_allocation_error, 0, &cexception_rtti_base_descriptor,
".?AVscheduler_resource_allocation_error@Concurrency@@") ".?AVscheduler_resource_allocation_error@Concurrency@@")
...@@ -677,6 +710,9 @@ __ASM_BLOCK_BEGIN(concurrency_exception_vtables) ...@@ -677,6 +710,9 @@ __ASM_BLOCK_BEGIN(concurrency_exception_vtables)
__ASM_VTABLE(invalid_scheduler_policy_value, __ASM_VTABLE(invalid_scheduler_policy_value,
VTABLE_ADD_FUNC(cexception_vector_dtor) VTABLE_ADD_FUNC(cexception_vector_dtor)
VTABLE_ADD_FUNC(cexception_what)); VTABLE_ADD_FUNC(cexception_what));
__ASM_VTABLE(missing_wait,
VTABLE_ADD_FUNC(cexception_vector_dtor)
VTABLE_ADD_FUNC(cexception_what));
__ASM_VTABLE(scheduler_resource_allocation_error, __ASM_VTABLE(scheduler_resource_allocation_error,
VTABLE_ADD_FUNC(cexception_vector_dtor) VTABLE_ADD_FUNC(cexception_vector_dtor)
VTABLE_ADD_FUNC(cexception_what)); VTABLE_ADD_FUNC(cexception_what));
...@@ -3391,6 +3427,7 @@ void msvcrt_init_concurrency(void *base) ...@@ -3391,6 +3427,7 @@ void msvcrt_init_concurrency(void *base)
init_invalid_scheduler_policy_key_rtti(base); init_invalid_scheduler_policy_key_rtti(base);
init_invalid_scheduler_policy_thread_specification_rtti(base); init_invalid_scheduler_policy_thread_specification_rtti(base);
init_invalid_scheduler_policy_value_rtti(base); init_invalid_scheduler_policy_value_rtti(base);
init_missing_wait_rtti(base);
init_scheduler_resource_allocation_error_rtti(base); init_scheduler_resource_allocation_error_rtti(base);
init_Context_rtti(base); init_Context_rtti(base);
init_ContextBase_rtti(base); init_ContextBase_rtti(base);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment