Alexandre Julliard
d5a372abbb
include: Move inline assembly definitions to a new wine/asm.h header.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-14 13:45:07 +02:00
Michael Stefaniuc
ce2be144ea
vcomp: Use the ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-29 22:01:38 +02:00
André Hentschel
33a8f192b0
vcomp: Add ARM64 support.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-11 18:25:48 +02:00
Sebastian Lackner
b228f16c0d
vcomp: Handle begin == NULL in _vcomp_for_static_init.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-24 19:19:15 +02:00
Sebastian Lackner
0c4c6d603b
vcomp: Implement _vcomp_reduction_r8 and add tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-08 23:15:01 +09:00
Sebastian Lackner
363d8d2140
vcomp: Implement _vcomp_reduction_r4 and add tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-08 23:15:01 +09:00
Sebastian Lackner
38c29640df
vcomp: Implement _vcomp_reduction_{u,i}8 and add tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-08 23:15:00 +09:00
Sebastian Lackner
b5f95498a9
vcomp: Implement _vcomp_reduction_{u,i}1 and add tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 22:16:05 +09:00
Sebastian Lackner
86dea350ea
vcomp: Implement _vcomp_reduction_{u,i}2 and add tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 22:16:00 +09:00
Sebastian Lackner
96e0c994b2
vcomp: Implement _vcomp_reduction_{u,i}4 and add tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-07 22:15:55 +09:00
Sebastian Lackner
de1ba602ef
vcomp: Prefer builtin version.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 18:47:16 +09:00
Sebastian Lackner
c3fec9b556
vcomp: Implement 8-bit atomic instructions.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 19:59:30 +09:00
Sebastian Lackner
284058073d
vcomp: Implement 16-bit atomic instructions.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 11:02:22 +09:00
Sebastian Lackner
b29c072e31
vcomp: Implement 64-bit atomic instructions.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 21:49:47 +09:00
Sebastian Lackner
2964c2b34b
vcomp: Use RtlIsCriticalSectionLockedByThread to check lock owner.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:45 +09:00
Sebastian Lackner
0410cf9cbe
vcomp: Implement _vcomp_get_thread_num.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-07 21:28:49 +09:00
Sebastian Lackner
146df7dab1
vcomp: Implement OpenMP regular locking functions.
...
Native OpenMP also immediately terminates the process (without
exception) when calling omp_set_lock while holding the lock from the
same thread.
2015-08-18 14:30:30 +09:00
Sebastian Lackner
f212a137a6
vcomp: Implement OpenMP nested locking functions.
...
The test marked with todo_wine suggests that native OpenMP might use a
separate counter for the nesting level. However, to implement the owner
checks required for regular locks we need to access the critical section
private members anyway.
2015-08-18 14:29:53 +09:00
Sebastian Lackner
a283d14b3d
vcomp: Implement omp_init_lock and omp_destroy_lock.
2015-08-18 14:29:39 +09:00
Sebastian Lackner
ce18a73304
vcomp: Implement stub for _vcomp_flush and add tests.
2015-08-18 14:29:31 +09:00
André Hentschel
3ad5a07856
vcomp: Add ARM support.
2015-08-17 16:58:47 +09:00
Sebastian Lackner
b0e4fd05e5
vcomp: Implement _vcomp_enter_critsect and _vcomp_leave_critsect.
2015-08-07 16:11:46 +09:00
Sebastian Lackner
ea188ea054
vcomp: Implement _vcomp_single_begin and _vcomp_single_end.
2015-08-07 16:10:00 +09:00
Sebastian Lackner
bf4daa3395
vcomp: Implement _vcomp_master_begin and _vcomp_master_end.
2015-08-07 16:09:41 +09:00
Sebastian Lackner
2c8f5e09ed
vcomp: Also initialize dynamic_type in _vcomp_fork.
2015-08-07 16:09:28 +09:00
Sebastian Lackner
69ec890455
vcomp: Implement _vcomp_for_dynamic_init and _vcomp_for_dynamic_next.
2015-08-06 23:36:02 +09:00
Sebastian Lackner
36fe1f8a82
vcomp: Implement atomic double functions.
2015-07-28 16:56:01 +02:00
Sebastian Lackner
2a0890fe55
vcomp: Implement atomic float functions.
2015-07-28 16:55:29 +02:00
Sebastian Lackner
7bf779f377
vcomp: Implement 32-bit atomic integer functions.
2015-07-28 16:54:54 +02:00
Sebastian Lackner
c34c9b4f39
vcomp: Implement _vcomp_for_static_init.
2015-07-20 06:34:44 +02:00
Sebastian Lackner
6f34d0fe1f
vcomp: Implement _vcomp_for_static_simple_init and _vcomp_for_static_end.
2015-07-20 06:34:27 +02:00
Sebastian Lackner
bc10d127b4
vcomp: Implement omp_in_parallel and add tests.
2015-07-20 06:34:03 +02:00
Sebastian Lackner
c06167b172
vcomp: Fix handling of _vcomp_fork with ifval == FALSE.
...
Forks with ifval == FALSE do not count as "parallel", so nested forks are
still allowed. Please note that calling _vcomp_fork(FALSE, ...) or directly
calling the callback is still different in some aspects, the synchronization
functions run in a different context for example.
2015-07-20 06:33:47 +02:00
Sebastian Lackner
889eba36e9
vcomp: Allow calls to _vcomp_sections_init outside of parallel environment.
2015-07-20 06:33:33 +02:00
Sebastian Lackner
c019ebc82f
vcomp: Implement _vcomp_sections_init and _vcomp_sections_next.
2015-07-17 16:12:35 +09:00
Sebastian Lackner
e26a9fb4ad
vcomp: Implement _vcomp_barrier.
2015-07-17 16:09:04 +09:00
Sebastian Lackner
ee34265f8f
vcomp: Add multithreaded implementation for _vcomp_fork.
2015-07-17 15:54:57 +09:00
Dan Kegel
ad1077f94b
vcomp: Implement stub for _vcomp_fork.
2015-07-17 15:42:19 +09:00
Sebastian Lackner
f59551c222
vcomp: Implement _vcomp_set_num_threads and omp_get_thread_num.
2015-07-15 15:10:05 +09:00
Sebastian Lackner
800ca050df
vcomp: Implement omp_{get,set}_nested.
2015-07-15 15:09:58 +09:00
Sebastian Lackner
4dea3e071d
vcomp: Implement omp_get_max_threads and omp_set_num_threads.
2015-07-15 15:09:53 +09:00
Alexandre Julliard
f02cdd877f
Remove empty DLL_PROCESS_DETACH case statements.
2013-04-15 16:45:35 +02:00
Dan Kegel
c99a19208a
vcomp: No-op stubs for _vcomp_single_begin, _vcomp_single_end.
2012-10-16 12:09:03 +02:00
Dan Kegel
fd104f83d3
vcomp: No-op stub for _vcomp_barrier.
2012-10-16 12:08:10 +02:00
Dan Kegel
d0955b1bd6
vcomp: Better stub for omp_get_thread_num.
2012-10-02 14:08:37 +02:00
Dan Kegel
15b59d75c6
vcomp: Better stubs for omp_get_nested, omp_set_nested.
2012-10-02 14:08:37 +02:00
Dan Kegel
d58ade2d42
vcomp: Better stubs for omp_get_dynamic, omp_set_dynamic.
2012-10-02 14:08:37 +02:00
Dan Kegel
ed23241733
vcomp: Better stub for omp_get_max_threads.
2012-10-02 14:08:37 +02:00
Dan Kegel
54a10eb1aa
vcomp: Better stub for omp_set_num_threads.
2012-10-02 14:08:36 +02:00
Dan Kegel
9ba01e0246
vcomp: Better stub for omp_get_num_threads.
2012-10-02 14:08:36 +02:00