2019
DOI: 10.1145/3360572
|View full text |Cite
|
Sign up to set email alerts
|

Reliable and fast DWARF-based stack unwinding

Abstract: Debug information, usually encoded in the DWARF format, is a hidden and obscure component of our computing infrastructure. Debug information is obviously used by debuggers, but it also plays a key role in program analysis tools, and, most surprisingly, it can be relied upon by the runtime of high-level programming languages. For instance the C++ runtime leverages DWARF stack unwind tables to implement exceptions! Alas, generating debug information adds significant burden to compiler implementations, and the de… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
6
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
5

Relationship

0
5

Authors

Journals

citations
Cited by 5 publications
(6 citation statements)
references
References 8 publications
0
6
0
Order By: Relevance
“…With these changes, we get the same backtrace for the meander program from §2.3, modulo runtime system functions due to effect handlers. We have verified the correctness of our DWARF directives using the verification tool from Bastian et al [2].…”
Section: Logically Dwarf Call-frame Information Maintains a Large Table Which Records For Every Machine Instructionmentioning
confidence: 99%
See 4 more Smart Citations
“…With these changes, we get the same backtrace for the meander program from §2.3, modulo runtime system functions due to effect handlers. We have verified the correctness of our DWARF directives using the verification tool from Bastian et al [2].…”
Section: Logically Dwarf Call-frame Information Maintains a Large Table Which Records For Every Machine Instructionmentioning
confidence: 99%
“…Our design retains OCaml's compatibility with program analysis tools that inspect the stack using DWARF unwind tables. We have validated our DWARF unwind tables with the assistance of an automated validator tool [2]. • a formal operational semantics for the effect handler implementation in OCaml.…”
Section: Contributionsmentioning
confidence: 99%
See 3 more Smart Citations