aboutsummaryrefslogtreecommitdiff
path: root/arm-gen.c
diff options
context:
space:
mode:
authorDaniel Glöckner <daniel-gl@gmx.net>2013-05-01 16:17:54 +0200
committerDaniel Glöckner <daniel-gl@gmx.net>2013-05-01 16:17:54 +0200
commit4d86b20701cc4ef72610936c2f64245d26aafec3 (patch)
tree9a64541fc49d2eb2821d43063994de587179ec3c /arm-gen.c
parentbe1b6ba7b7175eeb0bd2f8713dee8f7a0d0ba4e9 (diff)
downloadtinycc-4d86b20701cc4ef72610936c2f64245d26aafec3.tar.gz
tinycc-4d86b20701cc4ef72610936c2f64245d26aafec3.tar.bz2
ARM hardfloat: fix struct return with float/double args
Fixes the case where the structure is not returned in registers.
Diffstat (limited to 'arm-gen.c')
-rw-r--r--arm-gen.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arm-gen.c b/arm-gen.c
index a883121..250b1d9 100644
--- a/arm-gen.c
+++ b/arm-gen.c
@@ -1217,6 +1217,7 @@ void gfunc_prolog(CType *func_type)
int addr, pn = struct_ret, sn = 0; /* pn=core, sn=stack */
#ifdef TCC_ARM_HARDFLOAT
+ func_vc += nf * 4;
avregs = AVAIL_REGS_INITIALIZER;
#endif
while ((sym = sym->next)) {