summaryrefslogtreecommitdiff
path: root/src/debug
diff options
context:
space:
mode:
authorJan Vorlicek <janvorli@microsoft.com>2015-02-16 15:43:50 +0100
committerJan Vorlicek <janvorli@microsoft.com>2015-02-16 15:43:50 +0100
commitfb11bcafc8bae0924b51ed4483ed35d884852dc4 (patch)
treed3433a943bcf8e277cd2618be3e411e17a1db617 /src/debug
parent0e20a9e34ad2b861460c2772865653082ca06dfd (diff)
downloadcoreclr-fb11bcafc8bae0924b51ed4483ed35d884852dc4.tar.gz
coreclr-fb11bcafc8bae0924b51ed4483ed35d884852dc4.tar.bz2
coreclr-fb11bcafc8bae0924b51ed4483ed35d884852dc4.zip
Implement native stack unwinding for Linux
This change implements native stack unwinding using the libunwind on Linux. I have also fixed bunch of issues / details in the related code: 1) 0x in front of %p inside format string 2) Subtraction of -1 from dl_info.dli_sname 3) Added .cfi_xxxx annotation to the CallDescrWorkerInternal and the LEAF_ENTRY / LEAF_END macros. 4) Changed local labels in the CallDescrWorkerInternal to be prefixed by .L to see the CallDescrWorkerInternal in the stack trace 5) Changed moveOWord to use movdqu - it was being called with one of the parameters unaligned
Diffstat (limited to 'src/debug')
-rw-r--r--src/debug/ee/debugger.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/debug/ee/debugger.cpp b/src/debug/ee/debugger.cpp
index 7ccf26f9e8..b972572104 100644
--- a/src/debug/ee/debugger.cpp
+++ b/src/debug/ee/debugger.cpp
@@ -16885,7 +16885,11 @@ void DebuggerHeap::Free(void *pMem)
#else
if (pMem != NULL)
{
+#ifndef FEATURE_PAL
HANDLE hExecutableHeap = ClrGetProcessExecutableHeap();
+#else // !FEATURE_PAL
+ HANDLE hExecutableHeap = ClrGetProcessHeap();
+#endif // !FEATURE_PAL
_ASSERTE(hExecutableHeap != NULL);
ClrHeapFree(hExecutableHeap, NULL, pMem);
}