mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 12:13:01 +00:00
modified include/reactos/libs/pseh/pseh2.h
Make SF_FramePointer field of _SEHFrame_t volatile, too, just to be safe Unoptimized compilation doesn't perform const-folding - "static const" could result in compilation errors, use just "const" Renamed _SEH2_GetExceptionPointers to _SEH2_GetExceptionInformation to be closer to the "standard" SEH syntax modified lib/pseh/framebased-gcchack.c Clobber the register that's actually used svn path=/trunk/; revision=37570
This commit is contained in:
parent
29fc9d57c7
commit
7d4a8b9e1c
2 changed files with 4 additions and 4 deletions
|
@ -122,7 +122,7 @@ typedef struct __SEHFrame
|
||||||
{
|
{
|
||||||
_SEHRegistration_t SF_Registration;
|
_SEHRegistration_t SF_Registration;
|
||||||
volatile struct __SEHTryLevel * volatile SF_TopTryLevel;
|
volatile struct __SEHTryLevel * volatile SF_TopTryLevel;
|
||||||
void * SF_FramePointer;
|
void * volatile SF_FramePointer;
|
||||||
void * volatile SF_StackPointer;
|
void * volatile SF_StackPointer;
|
||||||
volatile unsigned long SF_Code;
|
volatile unsigned long SF_Code;
|
||||||
}
|
}
|
||||||
|
@ -176,7 +176,7 @@ _SEHTryLevel_t;
|
||||||
\
|
\
|
||||||
_SEHBeginScope: __SEH_SIDE_EFFECT; \
|
_SEHBeginScope: __SEH_SIDE_EFFECT; \
|
||||||
\
|
\
|
||||||
static const int _SEHTopTryLevel = (_SEHScopeKind != 0); \
|
const int _SEHTopTryLevel = (_SEHScopeKind != 0); \
|
||||||
_SEHFrame_t * const _SEHCurFrameP = _SEHFrameP; \
|
_SEHFrame_t * const _SEHCurFrameP = _SEHFrameP; \
|
||||||
volatile _SEHTryLevel_t * const _SEHPrevTryLevelP = _SEHTryLevelP; \
|
volatile _SEHTryLevel_t * const _SEHPrevTryLevelP = _SEHTryLevelP; \
|
||||||
\
|
\
|
||||||
|
@ -342,7 +342,7 @@ _SEHTryLevel_t;
|
||||||
} \
|
} \
|
||||||
__SEH_END_SCOPE;
|
__SEH_END_SCOPE;
|
||||||
|
|
||||||
#define _SEH2_GetExceptionPointers() ((struct _EXCEPTION_POINTERS *)_SEHExceptionPointers)
|
#define _SEH2_GetExceptionInformation() ((struct _EXCEPTION_POINTERS *)_SEHExceptionPointers)
|
||||||
#define _SEH2_GetExceptionCode() ((_SEHFrameP)->SF_Code)
|
#define _SEH2_GetExceptionCode() ((_SEHFrameP)->SF_Code)
|
||||||
|
|
||||||
#define _SEH2_YIELD(STMT_) \
|
#define _SEH2_YIELD(STMT_) \
|
||||||
|
|
|
@ -154,7 +154,7 @@ void __cdecl _SEH2LeaveFrame()
|
||||||
"movl %%edx, %%fs:0\n" :
|
"movl %%edx, %%fs:0\n" :
|
||||||
:
|
:
|
||||||
:
|
:
|
||||||
"ecx"
|
"edx"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue