From 4a84df4ae9d33bb766fb34ce8a871d84d6e0ed9c Mon Sep 17 00:00:00 2001 From: Martin Bektchiev Date: Wed, 31 Oct 2018 15:53:54 +0200 Subject: [PATCH] Fix Q registers parameter passing on ARM64 The second two quads are located at offset 32 not 16 --- src/aarch64/ffi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/aarch64/ffi.c b/src/aarch64/ffi.c index 4400b61a..c48c549f 100644 --- a/src/aarch64/ffi.c +++ b/src/aarch64/ffi.c @@ -350,10 +350,10 @@ extend_hfa_type (void *dest, void *src, int h) " b 1f\n" " nop\n" " ldp q16, q17, [%3]\n" /* Q4 */ -" ldp q18, q19, [%3, #16]\n" +" ldp q18, q19, [%3, #32]\n" " b 4f\n" " ldp q16, q17, [%3]\n" /* Q3 */ -" ldr q18, [%3, #16]\n" +" ldr q18, [%3, #32]\n" " b 3f\n" " ldp q16, q17, [%3]\n" /* Q2 */ " b 2f\n"