2017-10-09
2017-10-09 18:08:07 by Martin Karlgren <marty@roxen.com>
-
2827f83ceddce6d1d29323ecbd82bf385abbb8f8
(4 lines)
(+4/-0)
[
Show
| Annotate
]
Branch: 8.1
X86-64: Check C stack margin before adding stub stack frames.
1224:
#endif /* MACHINE_CODE_STACK_FRAMES */
static void amd64_load_fp_reg(void);
+ static void amd64_call_c_function(void *addr);
void amd64_ins_start_function(void)
{
1235: Inside #if defined(MACHINE_CODE_STACK_FRAMES)
and_reg32_imm( P_REG_RAX, PIKE_FRAME_RETURN_INTERNAL);
jz( &label_A );
+ amd64_call_c_function(check_c_stack_margin);
+
/* This is an internal frame (no entry prologue), so we'll insert a
minimal frame that can be used to unwind the C stack. */
mov_mem_reg(fp_reg, OFFSETOF(pike_frame, next), P_REG_RAX);