aboutsummaryrefslogtreecommitdiff
path: root/c67-gen.c
diff options
context:
space:
mode:
Diffstat (limited to 'c67-gen.c')
-rw-r--r--c67-gen.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/c67-gen.c b/c67-gen.c
index 2182518..70da2ad 100644
--- a/c67-gen.c
+++ b/c67-gen.c
@@ -25,6 +25,8 @@
/* number of available registers */
#define NB_REGS 24
+typedef int RegArgs;
+
/* a register can belong to several classes. The classes must be
sorted from more general to more precise (see gv2() code which does
assumptions on it). */
@@ -1879,10 +1881,17 @@ static void gcall_or_jmp(int is_jmp)
}
}
+ST_FUNC int regargs_nregs(RegArgs *args)
+{
+ return *args;
+}
+
/* Return the number of registers needed to return the struct, or 0 if
returning via struct pointer. */
-ST_FUNC int gfunc_sret(CType *vt, int variadic, CType *ret, int *ret_align, int *regsize) {
+ST_FUNC int gfunc_sret(CType *vt, int variadic, CType *ret, int *ret_align, int *regsize, RegArgs *args) {
*ret_align = 1; // Never have to re-align return values for x86-64
+ *args = 0;
+
return 0;
}