1*c2c66affSColin Finck #ifndef __CROSS_NT_INTERLOCKED__H__
2*c2c66affSColin Finck #define __CROSS_NT_INTERLOCKED__H__
3*c2c66affSColin Finck 
4*c2c66affSColin Finck LONG
5*c2c66affSColin Finck __fastcall
6*c2c66affSColin Finck CrNtInterlockedIncrement_impl_i386_MP(
7*c2c66affSColin Finck     IN OUT PLONG Addend
8*c2c66affSColin Finck     );
9*c2c66affSColin Finck 
10*c2c66affSColin Finck LONG
11*c2c66affSColin Finck __fastcall
12*c2c66affSColin Finck CrNtInterlockedIncrement_impl_i386_UP(
13*c2c66affSColin Finck     IN OUT PLONG Addend
14*c2c66affSColin Finck     );
15*c2c66affSColin Finck 
16*c2c66affSColin Finck /********************************************************/
17*c2c66affSColin Finck 
18*c2c66affSColin Finck LONG
19*c2c66affSColin Finck __fastcall
20*c2c66affSColin Finck CrNtInterlockedDecrement_impl_i386_MP(
21*c2c66affSColin Finck     IN OUT PLONG Addend
22*c2c66affSColin Finck     );
23*c2c66affSColin Finck 
24*c2c66affSColin Finck LONG
25*c2c66affSColin Finck __fastcall
26*c2c66affSColin Finck CrNtInterlockedDecrement_impl_i386_UP(
27*c2c66affSColin Finck     IN OUT PLONG Addend
28*c2c66affSColin Finck     );
29*c2c66affSColin Finck 
30*c2c66affSColin Finck /********************************************************/
31*c2c66affSColin Finck 
32*c2c66affSColin Finck LONG
33*c2c66affSColin Finck __fastcall
34*c2c66affSColin Finck CrNtInterlockedExchangeAdd_impl_i386_MP(
35*c2c66affSColin Finck     IN OUT PLONG Addend,
36*c2c66affSColin Finck     IN LONG Increment
37*c2c66affSColin Finck     );
38*c2c66affSColin Finck 
39*c2c66affSColin Finck LONG
40*c2c66affSColin Finck __fastcall
41*c2c66affSColin Finck CrNtInterlockedExchangeAdd_impl_i386_UP(
42*c2c66affSColin Finck     IN OUT PLONG Addend,
43*c2c66affSColin Finck     IN LONG Increment
44*c2c66affSColin Finck     );
45*c2c66affSColin Finck 
46*c2c66affSColin Finck /********************************************************/
47*c2c66affSColin Finck 
48*c2c66affSColin Finck PVOID
49*c2c66affSColin Finck __fastcall
50*c2c66affSColin Finck CrNtInterlockedCompareExchange_impl_i386_MP(
51*c2c66affSColin Finck     IN OUT PVOID *Destination,
52*c2c66affSColin Finck     IN PVOID ExChange,
53*c2c66affSColin Finck     IN PVOID Comperand
54*c2c66affSColin Finck     );
55*c2c66affSColin Finck 
56*c2c66affSColin Finck PVOID
57*c2c66affSColin Finck __fastcall
58*c2c66affSColin Finck CrNtInterlockedCompareExchange_impl_i386_UP(
59*c2c66affSColin Finck     IN OUT PVOID *Destination,
60*c2c66affSColin Finck     IN PVOID ExChange,
61*c2c66affSColin Finck     IN PVOID Comperand
62*c2c66affSColin Finck     );
63*c2c66affSColin Finck 
64*c2c66affSColin Finck #endif __CROSS_NT_INTERLOCKED__H__
65