diff options
author | Steve MacLean, Qualcomm Datacenter Technologies, Inc <sdmaclea@qti.qualcomm.com> | 2017-02-15 16:23:33 +0000 |
---|---|---|
committer | Steve MacLean, Qualcomm Datacenter Technologies, Inc <sdmaclea@qti.qualcomm.com> | 2017-02-15 16:50:17 +0000 |
commit | 14bda60c5a1ba9e4ee1f7d539bb133c0bcbaaa5e (patch) | |
tree | 2720323a39de1ea8d492b74382b06ad6a1a43efa /src/vm/exceptionhandling.cpp | |
parent | 94d1639d5d0b969489abbb3ce78b11a72c4493c4 (diff) | |
download | coreclr-14bda60c5a1ba9e4ee1f7d539bb133c0bcbaaa5e.tar.gz coreclr-14bda60c5a1ba9e4ee1f7d539bb133c0bcbaaa5e.tar.bz2 coreclr-14bda60c5a1ba9e4ee1f7d539bb133c0bcbaaa5e.zip |
[Arm64/Unix] Correct ControlPC when unwinding
Fixes #9585
Diffstat (limited to 'src/vm/exceptionhandling.cpp')
-rw-r--r-- | src/vm/exceptionhandling.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vm/exceptionhandling.cpp b/src/vm/exceptionhandling.cpp index a6c7651004..f9be8a009d 100644 --- a/src/vm/exceptionhandling.cpp +++ b/src/vm/exceptionhandling.cpp @@ -4331,7 +4331,7 @@ VOID UnwindManagedExceptionPass2(PAL_SEHException& ex, CONTEXT* unwindStartConte dispatcherContext.FunctionEntry = codeInfo.GetFunctionEntry(); dispatcherContext.ControlPc = controlPc; dispatcherContext.ImageBase = codeInfo.GetModuleBase(); -#if defined(_TARGET_ARM_) || defined(_TARGET_X86_) +#if defined(_TARGET_ARM_) || defined(_TARGET_ARM64_) || defined(_TARGET_X86_) dispatcherContext.ControlPcIsUnwound = !!(currentFrameContext->ContextFlags & CONTEXT_UNWOUND_TO_CALL); #endif // Check whether we have a function table entry for the current controlPC. @@ -4482,7 +4482,7 @@ VOID DECLSPEC_NORETURN UnwindManagedExceptionPass1(PAL_SEHException& ex, CONTEXT dispatcherContext.FunctionEntry = codeInfo.GetFunctionEntry(); dispatcherContext.ControlPc = controlPc; dispatcherContext.ImageBase = codeInfo.GetModuleBase(); -#if defined(_TARGET_ARM_) || defined(_TARGET_X86_) +#if defined(_TARGET_ARM_) || defined(_TARGET_ARM64_) || defined(_TARGET_X86_) dispatcherContext.ControlPcIsUnwound = !!(frameContext->ContextFlags & CONTEXT_UNWOUND_TO_CALL); #endif |