summaryrefslogtreecommitdiffstats
path: root/private/ntos/init/i386def.src
blob: 192f0c90f89f22d850ef3aed23667378f16fc9ac (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
    Exi386InterlockedDecrementLong
    Exi386InterlockedIncrementLong
    Exi386InterlockedExchangeUlong

    ExfInterlockedAddUlong
    ExfInterlockedInsertHeadList
    ExfInterlockedInsertTailList
    ExfInterlockedRemoveHeadList
    ExfInterlockedPopEntryList
    ExfInterlockedPushEntryList
    Exfi386InterlockedDecrementLong
    Exfi386InterlockedIncrementLong
    Exfi386InterlockedExchangeUlong

    ExInterlockedCompareExchange64
    ExInterlockedPopEntrySList
    ExInterlockedPushEntrySList

    ExAllocateFromPagedLookasideList
    ExFreeToPagedLookasideList

    InterlockedIncrement
    InterlockedDecrement
    InterlockedExchange
    InterlockedCompareExchange
    InterlockedExchangeAdd

    KeSetProfileIrql
    KeIsExecutingDpc
    KeI386MachineType CONSTANT
    KeI386SetGdtSelector
    KeI386Call16BitFunction
    KeI386Call16BitCStyleFunction

    KefAcquireSpinLockAtDpcLevel
    KefReleaseSpinLockFromDpcLevel

#if NT_INST

    KiInst_AcquireSpinLock
    KiInst_SpinOnSpinLock
    KiInst_ReleaseSpinLock

#endif  // NT_INST

    Kii386SpinOnSpinLock                // debug only

    MmLockPagableImageSection=MmLockPagableDataSection

//
// The following are macros on MIPS, but real procedures on the x86
//

    KeGetCurrentThread
    KeGetPreviousMode
    READ_REGISTER_UCHAR
    READ_REGISTER_ULONG
    READ_REGISTER_USHORT
    READ_REGISTER_BUFFER_UCHAR
    READ_REGISTER_BUFFER_ULONG
    READ_REGISTER_BUFFER_USHORT
    WRITE_REGISTER_UCHAR
    WRITE_REGISTER_ULONG
    WRITE_REGISTER_USHORT
    WRITE_REGISTER_BUFFER_UCHAR
    WRITE_REGISTER_BUFFER_ULONG
    WRITE_REGISTER_BUFFER_USHORT

//
// The following are 386 architecture specific
//

    KiIpiServiceRoutine
    KiCoprocessorError
    KiDeliverApc
    KiDispatchInterrupt
    KiUnexpectedInterrupt
    Kei386EoiHelper

    Ke386IoSetAccessProcess
    Ke386QueryIoAccessMap
    Ke386SetIoAccessMap

    KeI386AbiosCall
    KeI386AllocateGdtSelectors
    KeI386ReleaseGdtSelectors
    KeI386FlatToGdtSelector
    KeI386GetLid
    KeI386ReleaseLid
    Ke386CallBios
    KeSaveFloatingPointState
    KeRestoreFloatingPointState

    memcpy
    memmove
    memset

    _abnormal_termination
    _except_handler2
    _global_unwind2
    _local_unwind2
// Int64 helper functions (currently linked in from int64.lib)

    _aullrem
    _aulldiv
    _aullshr
    _allshr
    _allshl
    _allrem
    _allmul
    _alldiv