summaryrefslogtreecommitdiff
path: root/gen.h
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2015-11-25 08:40:45 -0800
committerMichael Pavone <pavone@retrodev.com>2015-11-25 08:40:45 -0800
commit77f239c97ce5d496998c3b8a07d84d27b5d5984f (patch)
treeb9e7951e055fa80a7afc925bec7d72193cead1f6 /gen.h
parent621afa83ca859c29efcf57beef5b21c918161e78 (diff)
Partially working change to do proper stack alignment rather than doing a lame alignment check when calling a C compile dfunction. 68K core seems okay, but Z80 is busted.
Diffstat (limited to 'gen.h')
-rw-r--r--gen.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/gen.h b/gen.h
index 5087b57..16dcab8 100644
--- a/gen.h
+++ b/gen.h
@@ -15,6 +15,7 @@ typedef code_word * code_ptr;
typedef struct {
code_ptr cur;
code_ptr last;
+ uint32_t stack_off;
} code_info;
void check_alloc_code(code_info *code, uint32_t inst_size);
@@ -26,7 +27,8 @@ void jmp_r(code_info *code, uint8_t dst);
//call a function and put the arguments in the appropriate place according to the host ABI
void call_args(code_info *code, code_ptr fun, uint32_t num_args, ...);
//like the above, but follows other aspects of the ABI like stack alignment
-void call_args_abi(code_info *code, code_ptr fun, uint32_t num_args, ...);
+//void call_args_abi(code_info *code, code_ptr fun, uint32_t num_args, ...);
+#define call_args_abi call_args
void save_callee_save_regs(code_info *code);
void restore_callee_save_regs(code_info *code);