diff options
author | kvochko <a.kvochko@samsung.com> | 2016-06-23 20:23:20 +0400 |
---|---|---|
committer | Jan Vorlicek <janvorli@microsoft.com> | 2016-06-23 18:23:20 +0200 |
commit | 50dd30e88897c8ee213fa76fb55624eead12f382 (patch) | |
tree | a5c8b507aebab2dda83f7bf4c472d659e1be1420 /src/vm/arm | |
parent | 26d4a8c05f6502226c13a3fb257c9b7cf2fea2e8 (diff) | |
download | coreclr-50dd30e88897c8ee213fa76fb55624eead12f382.tar.gz coreclr-50dd30e88897c8ee213fa76fb55624eead12f382.tar.bz2 coreclr-50dd30e88897c8ee213fa76fb55624eead12f382.zip |
Enable out-of-proc unwinding on ARM (#5946)
Fix #5855
Diffstat (limited to 'src/vm/arm')
-rw-r--r-- | src/vm/arm/stubs.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/vm/arm/stubs.cpp b/src/vm/arm/stubs.cpp index c3064bfdb3..9868cb6448 100644 --- a/src/vm/arm/stubs.cpp +++ b/src/vm/arm/stubs.cpp @@ -537,10 +537,17 @@ void LazyMachState::unwindLazyState(LazyMachState* baseState, #ifndef FEATURE_PAL pvControlPc = Thread::VirtualUnwindCallFrame(&ctx, &nonVolRegPtrs); #else // !FEATURE_PAL +#ifdef DACCESS_COMPILE + HRESULT hr = DacVirtualUnwind(threadId, &ctx, &nonVolRegPtrs); + if (FAILED(hr)) + { + DacError(hr); + } +#else // DACCESS_COMPILE PAL_VirtualUnwind(&ctx, &nonVolRegPtrs); +#endif // DACCESS_COMPILE pvControlPc = GetIP(&ctx); #endif // !FEATURE_PAL - if (funCallDepth > 0) { --funCallDepth; |