talk-2019-10-OOPSLA19/src/fib7/fib7.eh_elf_outline.c

22 lines
387 B
C
Raw Normal View History

unwind_context_t _eh_elf(
unwind_context_t ctx, uintptr_t pc)
{
unwind_context_t out_ctx;
if(pc < 0x619) { ... }
else {
if(pc < 0x659) { // IP=0x619 ... 0x658
goto _factor_1;
}
...
}
_factor_1:
out_ctx.rsp = ctx.rsp + (48);
out_ctx.rip = *((uintptr_t*)(out_ctx.rsp + (-8)));
out_ctx.flags = 3u;
...
return out_ctx;
}