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:
KJK::Hyperion 2008-11-23 00:20:37 +00:00
parent 29fc9d57c7
commit 7d4a8b9e1c
2 changed files with 4 additions and 4 deletions

View file

@ -122,7 +122,7 @@ typedef struct __SEHFrame
{
_SEHRegistration_t SF_Registration;
volatile struct __SEHTryLevel * volatile SF_TopTryLevel;
void * SF_FramePointer;
void * volatile SF_FramePointer;
void * volatile SF_StackPointer;
volatile unsigned long SF_Code;
}
@ -176,7 +176,7 @@ _SEHTryLevel_t;
\
_SEHBeginScope: __SEH_SIDE_EFFECT; \
\
static const int _SEHTopTryLevel = (_SEHScopeKind != 0); \
const int _SEHTopTryLevel = (_SEHScopeKind != 0); \
_SEHFrame_t * const _SEHCurFrameP = _SEHFrameP; \
volatile _SEHTryLevel_t * const _SEHPrevTryLevelP = _SEHTryLevelP; \
\
@ -342,7 +342,7 @@ _SEHTryLevel_t;
} \
__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_YIELD(STMT_) \

View file

@ -154,7 +154,7 @@ void __cdecl _SEH2LeaveFrame()
"movl %%edx, %%fs:0\n" :
:
:
"ecx"
"edx"
);
}