Add logging to MachineStackMarker to try to diagnose crashes in the wild
authorkeith_miller@apple.com <keith_miller@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 15 Jun 2017 20:02:22 +0000 (20:02 +0000)
committerkeith_miller@apple.com <keith_miller@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 15 Jun 2017 20:02:22 +0000 (20:02 +0000)
commit14b3488297bc4c94d018c2cd02c941a019b4268b
treedaf7c8de81dab1aba4cc2f91d80a7105dec11a65
parentb869836df0c3527515a17b04666e0d4652fa4c5b
Add logging to MachineStackMarker to try to diagnose crashes in the wild
https://bugs.webkit.org/show_bug.cgi?id=173427

Reviewed by Mark Lam.

This patch adds some logging to the MachineStackMarker constructor
to help figure out where we are seeing crashes. Since macOS does
not support os_log_info my hope is that if we set all the callee
save registers before making any calls in the C++ code we can
figure out which calls is the source of the crash. We also, set
all the caller save registers before returning in case some
weirdness is happening in the Heap constructor.

This logging should not matter from a performance perspective. We
only create MachineStackMarkers when we are creating a new VM,
which is already expensive.

* heap/MachineStackMarker.cpp:
(JSC::MachineThreads::MachineThreads):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@218350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/heap/MachineStackMarker.cpp