Page MenuHomePhabricator

Prepare PrettyStackTrace for LLDB adoption
ClosedPublic

Authored by spyffe on Dec 12 2016, 11:52 AM.

Details

Summary

This patch fixes the linkage for __crashtracer_info__ making it have the proper mangling (extern "C") and linkage (private extern).
It also adds a new PrettyStackTrace type, allowing LLDB to adopt this instead of Host::SetCrashDescriptionWithFormat().

Without this patch, CrashTracer on macOS won't pick up pretty stack traces from any LLVM client. Also, this patch needs to be synced with an LLDB patch that adopts it.

Diff Detail

Repository
rL LLVM

Event Timeline

spyffe updated this revision to Diff 81120.Dec 12 2016, 11:52 AM
spyffe retitled this revision from to Fix the linkage for __crashtracer_info__.
spyffe updated this object.
spyffe set the repository for this revision to rL LLVM.
spyffe edited subscribers, added: cfe-commits; removed: jgosnell.
spyffe added a subscriber: jgosnell.
clayborg accepted this revision.Dec 12 2016, 1:06 PM
clayborg edited edge metadata.
This revision is now accepted and ready to land.Dec 12 2016, 1:06 PM
spyffe updated this revision to Diff 81304.Dec 13 2016, 2:38 PM
spyffe retitled this revision from Fix the linkage for __crashtracer_info__ to Prepare PrettyStackTrace for LLDB adoption.
spyffe updated this object.
spyffe edited edge metadata.
beanz accepted this revision.Dec 13 2016, 9:34 PM
beanz edited edge metadata.

LGTM other than a few style comments. Please clang-format before committing. Some of the formatting looks off (although that might just be my phone).

lib/Support/PrettyStackTrace.cpp
152 ↗(On Diff #81304)

Your variable names are very LLDB-esque. Please follow the LLVM style guide, which is CamelCase.

This revision was automatically updated to reflect the committed changes.