From 4da814b18a1bf1d2013d988e37485e568d6117d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ole=20Andr=C3=A9=20Vadla=20Ravn=C3=A5s?= Date: Wed, 10 Aug 2016 22:48:09 +0200 Subject: [PATCH] aarch64: Fix handling of aggregates larger than 16 bytes Instead of allocating stack space for a pointer we would allocate stack space for the actual aggregate size. --- src/aarch64/ffi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/aarch64/ffi.c b/src/aarch64/ffi.c index cf33abc2..a600fbf7 100644 --- a/src/aarch64/ffi.c +++ b/src/aarch64/ffi.c @@ -666,6 +666,7 @@ ffi_call_int (ffi_cif *cif, void (*fn)(void), void *orig_rvalue, the argument is replaced by a pointer to the copy. */ a = &avalue[i]; t = FFI_TYPE_POINTER; + s = sizeof (void *); goto do_pointer; } else