summaryrefslogtreecommitdiff
path: root/lldb/test/Shell/Symtab
AgeCommit message (Collapse)Author
2025-08-26[lldb] Corretly parse Wasm segments (#154727)Jonas Devlieghere
My original implementation for parsing Wasm segments was wrong in two related ways. I had a bug in calculating the file vm address and I didn't fully understand the difference between active and passive segments and how that impacted their file vm address. With this PR, we now support parsing init expressions for active segments, rather than just skipping over them. This is necessary to determine where they get loaded. Similar to llvm-objdump, we currently only support simple opcodes (i.e. constants). We also currently do not support active segments that use a non-zero memory index. However this covers all segments for a non-trivial Swift binary compiled to Wasm.
2025-08-19[lldb] Create sections for Wasm segments (#153634)Jonas Devlieghere
This is a continuation of #153494. In a WebAssembly file, the "name" section contains names for the segments in the data section (WASM_NAMES_DATA_SEGMENT). We already parse these as symbols, and with this PR, we now also create sub-sections for each of the segments.
2025-08-14[lldb] Support parsing data symbols from the Wasm name section (#153494)Jonas Devlieghere
This PR adds support for parsing the data symbols from the WebAssembly name section, which consists of a name and address range for the segments in the Wasm data section. Unlike other object file formats, Wasm has no symbols for referencing items within those segments (i.e. symbols the user has defined).
2025-08-12[lldb] Support parsing the Wasm symbol table (#153093)Jonas Devlieghere
This PR adds support for parsing the WebAssembly symbol table. The symbol table is encoded in the "names" section and contains names and indexes into other sections. For now we only support parsing function (code) symbols. The result is that you can set breakpoints by symbol name, while previously breakpoints by name required debug info (DWARF). This is also necessary for Swift, which checks for the presence of `swift_release` as a heuristic to determine if there's a static Swift stdlib.
2022-08-03[lldb] Fix 'FileCheck' spelling on symtab regex testsAugusto Noronha
2022-08-03[lldb] Allow SymbolTable regex search functions to match mangled nameAugusto Noronha
It may be useful to search symbol table entries by mangled instead of demangled names. Add this optional functionality in the SymbolTable functions. Differential Revision: https://reviews.llvm.org/D130803