Since gdb 7.10, GDB has Python and Scheme APIs that allow language runtimes extending GDB with their own custom stack unwinders. This allows GDB backtracing/unwinding frames in mixed language applications (for example, an application running Java Virtual Machine) that have custom frame layouts that cannot be handled by the built-in GDB unwinders.

This page collect useful tidbits of information around those APIs.

Status

Follow

Discussions around the APIs happen on the main gdb mailing list.

Resources

Python unwinder API

Existing users of the APIs

OpenJDK

Google v8 (Chrome JavaScript engine)

Mozilla SpiderMonkey; there are some followups in progress mostly linked to the original bug

[tracker] Stack unwinder for OpenJDK

Branches and patches

All on master since 7.10.

Original submission/discussion of Python API

gdb and OpenJDK


OngoingWork

None: UnwinderAPI (last edited 2023-01-19 15:05:49 by AndrewDinn)

All content (C) 2008 Free Software Foundation. For terms of use, redistribution, and modification, please see the WikiLicense page.