> On Jul 8, 2024, at 2:18 PM, David Blaikie <dblai...@gmail.com> wrote:
> 
> @Adrian Prantl <mailto:apra...@apple.com> and @Jonas Devlieghere 
> <mailto:jdevliegh...@apple.com> with the CAS DWARF stuff, how are you folks 
> separating line table fragments for functions? My understanding was the line 
> table header was too large to have one on every function's line table 
> fragment, so I would've thought you'd figured out a way to make line table 
> fragments that could be added/removed from a line table without disturbing 
> the other flags/state and without relying on specific values in/out of the 
> line register?

[Sorry for the delay, I've been out on vacation]

With -cas-friendly-debug-info 
(https://github.com/swiftlang/llvm-project/blob/d0204d443283ed71526b61ffc6a2994dd2ff46f4/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp#L174)
 a DW_LNE_end_sequence is emitted at the end of each function. This resets the 
state machine and allows for individual functions to grow/shrink in size 
without disturbing the encoding for its neighbors. It does not emit a new 
header for each function.

-- adrian
-- 
Dwarf-discuss mailing list
Dwarf-discuss@lists.dwarfstd.org
https://lists.dwarfstd.org/mailman/listinfo/dwarf-discuss

Reply via email to