mirror of
https://github.com/reactos/reactos.git
synced 2025-04-20 20:36:35 +00:00
- Add -fms-extensions for arm build
- Add _NT_TIB_KPCR to compensate for a missing NT_TIB (hackfix) - add KERNEL_STACK_SIZE & co for arm - Add missing KeGetCurrentThread prototype for arm - define INTERLOCKED_RESULT for X86 only - Add _CONTEXT and _EXCEPTION_RECORD forward declarations svn path=/trunk/; revision=46741
This commit is contained in:
parent
c96838e350
commit
84f23f68d1
5 changed files with 34 additions and 6 deletions
|
@ -28,6 +28,7 @@
|
|||
<if property="OPTIMIZE" value="1">
|
||||
<compilerflag>-ftracer</compilerflag>
|
||||
</if>
|
||||
<compilerflag>-fms-extensions</compilerflag>
|
||||
<compilerflag>-Wno-attributes</compilerflag>
|
||||
<compilerflag>-U_UNICODE</compilerflag>
|
||||
<compilerflag>-UUNICODE</compilerflag>
|
||||
|
|
|
@ -3303,13 +3303,14 @@ ExFreeToZone(
|
|||
#define ExIsResourceAcquired ExIsResourceAcquiredSharedLite
|
||||
#define ExReleaseResourceForThread ExReleaseResourceForThreadLite
|
||||
|
||||
#ifdef _X86_
|
||||
|
||||
typedef enum _INTERLOCKED_RESULT {
|
||||
ResultNegative = RESULT_NEGATIVE,
|
||||
ResultZero = RESULT_ZERO,
|
||||
ResultPositive = RESULT_POSITIVE
|
||||
} INTERLOCKED_RESULT;
|
||||
|
||||
#ifdef _X86_
|
||||
NTKERNELAPI
|
||||
INTERLOCKED_RESULT
|
||||
FASTCALL
|
||||
|
|
|
@ -565,6 +565,9 @@ typedef struct _PROCESSOR_NUMBER {
|
|||
UCHAR Reserved;
|
||||
} PROCESSOR_NUMBER, *PPROCESSOR_NUMBER;
|
||||
|
||||
struct _CONTEXT;
|
||||
struct _EXCEPTION_RECORD;
|
||||
|
||||
typedef EXCEPTION_DISPOSITION
|
||||
(NTAPI *PEXCEPTION_ROUTINE)(
|
||||
IN struct _EXCEPTION_RECORD *ExceptionRecord,
|
||||
|
|
|
@ -54,13 +54,16 @@ extern ULONG_PTR MmUserProbeAddress;
|
|||
//
|
||||
#define MAXIMUM_VECTOR 16
|
||||
|
||||
#define KERNEL_STACK_SIZE 12288
|
||||
#define KERNEL_LARGE_STACK_SIZE 61440
|
||||
#define KERNEL_LARGE_STACK_COMMIT 12288
|
||||
|
||||
//
|
||||
// Used to contain PFNs and PFN counts
|
||||
//
|
||||
typedef ULONG PFN_COUNT;
|
||||
typedef ULONG PFN_NUMBER, *PPFN_NUMBER;
|
||||
typedef LONG SPFN_NUMBER, *PSPFN_NUMBER;
|
||||
//typedef ULONG PFN_COUNT;
|
||||
//typedef ULONG PFN_NUMBER, *PPFN_NUMBER;
|
||||
//typedef LONG SPFN_NUMBER, *PSPFN_NUMBER;
|
||||
|
||||
//
|
||||
// Stub
|
||||
|
@ -124,11 +127,25 @@ typedef struct _CONTEXT {
|
|||
#ifdef _WINNT_H
|
||||
#define KIRQL ULONG
|
||||
#endif
|
||||
|
||||
typedef struct _NT_TIB_KPCR {
|
||||
struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
|
||||
PVOID StackBase;
|
||||
PVOID StackLimit;
|
||||
PVOID SubSystemTib;
|
||||
_ANONYMOUS_UNION union {
|
||||
PVOID FiberData;
|
||||
ULONG Version;
|
||||
} DUMMYUNIONNAME;
|
||||
PVOID ArbitraryUserPointer;
|
||||
struct _NT_TIB_KPCR *Self;
|
||||
} NT_TIB_KPCR,*PNT_TIB_KPCR;
|
||||
|
||||
typedef struct _KPCR
|
||||
{
|
||||
union
|
||||
{
|
||||
NT_TIB NtTib;
|
||||
NT_TIB_KPCR NtTib;
|
||||
struct
|
||||
{
|
||||
struct _EXCEPTION_REGISTRATION_RECORD *Used_ExceptionList; // Unused
|
||||
|
@ -167,6 +184,11 @@ struct _TEB* NtCurrentTeb(VOID)
|
|||
return (struct _TEB*)USERPCR->Used_Self;
|
||||
}
|
||||
|
||||
NTSYSAPI
|
||||
PKTHREAD
|
||||
NTAPI
|
||||
KeGetCurrentThread(VOID);
|
||||
|
||||
#ifndef _WINNT_H
|
||||
//
|
||||
// IRQL Support on ARM is similar to MIPS/ALPHA
|
||||
|
|
|
@ -67,13 +67,14 @@ ExFreeToZone(
|
|||
#define ExIsResourceAcquired ExIsResourceAcquiredSharedLite
|
||||
#define ExReleaseResourceForThread ExReleaseResourceForThreadLite
|
||||
|
||||
#ifdef _X86_
|
||||
|
||||
typedef enum _INTERLOCKED_RESULT {
|
||||
ResultNegative = RESULT_NEGATIVE,
|
||||
ResultZero = RESULT_ZERO,
|
||||
ResultPositive = RESULT_POSITIVE
|
||||
} INTERLOCKED_RESULT;
|
||||
|
||||
#ifdef _X86_
|
||||
NTKERNELAPI
|
||||
INTERLOCKED_RESULT
|
||||
FASTCALL
|
||||
|
|
Loading…
Reference in a new issue