summaryrefslogtreecommitdiff
path: root/src/vm/exceptionhandling.cpp
diff options
context:
space:
mode:
authorJonghyun Park <parjong@gmail.com>2017-05-17 23:20:05 +0900
committerJan Kotas <jkotas@microsoft.com>2017-05-17 07:20:05 -0700
commit25867b00e18ffaf19d16d9e79b4cda7554cb4d43 (patch)
treea59ec1371412ae72ef88bc6496ba573f025f42b2 /src/vm/exceptionhandling.cpp
parent606e91c870a0a7c25807064ef3d8e7c05afc8ae7 (diff)
downloadcoreclr-25867b00e18ffaf19d16d9e79b4cda7554cb4d43.tar.gz
coreclr-25867b00e18ffaf19d16d9e79b4cda7554cb4d43.tar.bz2
coreclr-25867b00e18ffaf19d16d9e79b4cda7554cb4d43.zip
Move some local declaration into exceptionhandling.cpp (#11668)
* Locally declare HandlerFn in exceptionhandling.cpp * Move ClrUnwindEx forward declaration
Diffstat (limited to 'src/vm/exceptionhandling.cpp')
-rw-r--r--src/vm/exceptionhandling.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/vm/exceptionhandling.cpp b/src/vm/exceptionhandling.cpp
index abea194b92..dd95badf02 100644
--- a/src/vm/exceptionhandling.cpp
+++ b/src/vm/exceptionhandling.cpp
@@ -41,6 +41,14 @@
#define ESTABLISHER_FRAME_ADDRESS_IS_CALLER_SP
#endif // _TARGET_ARM_ || _TARGET_ARM64_ || _TARGET_X86_
+#ifndef FEATURE_PAL
+void __declspec(noinline)
+ClrUnwindEx(EXCEPTION_RECORD* pExceptionRecord,
+ UINT_PTR ReturnValue,
+ UINT_PTR TargetIP,
+ UINT_PTR TargetFrameSp);
+#endif // !FEATURE_PAL
+
#ifdef USE_CURRENT_CONTEXT_IN_FILTER
inline void CaptureNonvolatileRegisters(PKNONVOLATILE_CONTEXT pNonvolatileContext, PCONTEXT pContext)
{
@@ -3275,6 +3283,8 @@ lExit:
#define OPTIONAL_SO_CLEANUP_UNWIND(pThread, pFrame) if (pThread->GetFrame() < pFrame) { UnwindFrameChain(pThread, pFrame); }
+typedef DWORD_PTR (HandlerFn)(UINT_PTR uStackFrame, Object* pExceptionObj);
+
#ifdef USE_FUNCLET_CALL_HELPER
// This is an assembly helper that enables us to call into EH funclets.
EXTERN_C DWORD_PTR STDCALL CallEHFunclet(Object *pThrowable, UINT_PTR pFuncletToInvoke, UINT_PTR *pFirstNonVolReg, UINT_PTR *pFuncletCallerSP);