]> Witch of Git - ivy/commit
Add CFI directives
authorCassie Jones <code@witchoflight.com>
Mon, 2 Mar 2020 15:24:00 +0000 (16:24 +0100)
committerCassie Jones <code@witchoflight.com>
Mon, 2 Mar 2020 15:29:24 +0000 (16:29 +0100)
commit47c1e0389d586e641b122f3a54ce9789ee12facb
treeffff5e8b4c225f824aad40da46949c53a815b83a
parent5749658633632313f40ae9173335ee839d27e5c7
Add CFI directives

CFI is the "Call Frame Information", it provides instructions about
where the call frame is. Since we're not emitting a frame pointer, we
need some way to tell debuggers where our call frames our. These CFI
directives let you provide instructions to find the beginning of the
call frame. In our case, we just want to tell it what offsets from the
stack pointer it needs to find it.

These cause the assembler to put all of this metadata in a separate
"eh" frame info section that tools can inspect, it doesn't modify the
actual code.

Adding these makes using the "up" and "down" commands in the debugger
more reliable when looking at my emitted functions. Previously they
would sometimes fail to figure out where they were, making debugging
annoying.
src/trans/x64.rs