diff options
author | Michael Pavone <pavone@retrodev.com> | 2016-10-06 09:34:31 -0700 |
---|---|---|
committer | Michael Pavone <pavone@retrodev.com> | 2016-10-06 09:34:31 -0700 |
commit | 986b3641a1110e7dd1994c76ecb592420877f8f5 (patch) | |
tree | c6079b2fcbe228e3957dc435bad7d6e92e8a3c63 /gen_x86.c | |
parent | 9b16317e1842af9b71837a43ffba04ca45689dcc (diff) |
Add support for specifying a reset handler in the M68K core. Adjust memory map initialization to handle extra field. Improved handling of out of bounds execution.
Diffstat (limited to 'gen_x86.c')
-rw-r--r-- | gen_x86.c | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -2138,6 +2138,19 @@ void call_args(code_info *code, code_ptr fun, uint32_t num_args, ...) code->stack_off -= adjust; } } + +void call_args_r(code_info *code, uint8_t fun_reg, uint32_t num_args, ...) +{ + va_list args; + va_start(args, num_args); + uint32_t adjust = prep_args(code, num_args, args); + va_end(args); + call_r(code, fun_reg); + if (adjust) { + add_ir(code, adjust, RSP, SZ_PTR); + code->stack_off -= adjust; + } +} /* void call_args_abi(code_info *code, code_ptr fun, uint32_t num_args, ...) { |