Retrofitting for kernel debugging | Haiku Project

Unlike BeOS, our kernel includes some pieces of C++ code, which sometimes give a headache when it comes making sense of a stack crawl from the kernel debugger, since symbols are mangled when linked into binaries, which means we must Decode__12CrypticCNamesPCc. I recalled seeing some gcc4 private API to demangle symbols into human-friendly names, but the code doing that, from libsupc++, has been written without concern for the inhabitants of the Kernel Debugging Land, using calls to malloc, realloc and free... But I still wanted to get nicer names, so I didn't give up. I also wanted to be able to get assembler dumps since not everyone has a serial cable to make use of the gdb stub.

This is a companion discussion topic for the original entry at