From 55ea6d3fc175b0e01e2e946ca9b319c1fbe8aa67 Mon Sep 17 00:00:00 2001 From: James Lyon Date: Fri, 19 Apr 2013 00:40:48 +0100 Subject: x86-64 ABI fixes. abitest now passes; however test1-3 fail in init_test. All other tests pass. I need to re-test Win32 and Linux-x86. I've added a dummy implementation of gfunc_sret to c67-gen.c so it should now compile, and I think it should behave as before I created gfunc_sret. --- c67-gen.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'c67-gen.c') diff --git a/c67-gen.c b/c67-gen.c index abf25df..7d559c8 100644 --- a/c67-gen.c +++ b/c67-gen.c @@ -1879,6 +1879,12 @@ static void gcall_or_jmp(int is_jmp) } } +/* Return 1 if this function returns via an sret pointer, 0 otherwise */ +ST_FUNC int gfunc_sret(CType *vt, CType *ret, int *ret_align) { + *ret_align = 1; // Never have to re-align return values for x86-64 + return 1; +} + /* generate function call with address in (vtop->t, vtop->c) and free function context. Stack entry is popped */ void gfunc_call(int nb_args) -- cgit v1.3.1