NSBlog
"A failure in the hot air department"
Showing entries tagged "dwarf". Full blog index.
Friday Q&A 2012-11-30: Let's Build A Mach-O Executable
at 2012-11-30 17:59
This is something of a followup to my last article, dyld: Dynamic Linking On OS X, in which I explored how the dynamic linker
dyld
does its job. This week, I'm going to recreate the function of both the compiler and the static linker, building a Mach-O binary completely from scratch with only the help of the assembler.Friday Q&A 2012-05-04: PLCrashReporter and Unwinding the Stack With DWARF, Part 2
at 2012-05-04 18:44
Here I am, yet again! This week, I'm continuing where my last article left off, regarding PLCrashReporter and unwinding stack frames on x86_64. In particular, I go into how I got at and used all the various data I discussed in last week's article, and why some of the existing solutions in the wild weren't suited for our use.
Friday Q&A 2012-04-27: PLCrashReporter and Unwinding the Stack With DWARF
at 2012-04-27 14:11
I'm back once again for Friday Q&A. Today I'm going to talk about some work I recently did on PLCrashReporter, adding support for unwinding stack frames on x86_64. PLCrashReporter was originally targeted solely at iOS, where both ARM and x86-32 (the simulator) make crash reporting relatively straight-forward; we can simply walk the stack via the preserved frame pointer. On x86-64, matters are different, leading to the need to implement support for alternative methods for stack unwinding. This work was sponsored by HockeyApp, to support their upcoming release of Mac OS X sandbox-compatible crash reporting. I'll talk about DWARF debugging information, the compact unwind encoding, and stack scanners. I assume at least some knowledge of x86_64 architecture, for simplicity's sake.