summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Green <green@moxielogic.com>2019-11-29 07:00:35 -0500
committerAnthony Green <green@moxielogic.com>2019-11-29 07:00:35 -0500
commit6663047f56c2932a6b10a790f4ac6666dd181326 (patch)
tree63320fec861ad82077afe914cd6ed70218f24508
parent0069526c5adea9e6268b8a0087a6120c9c5c89fa (diff)
downloadlibffi-6663047f56c2932a6b10a790f4ac6666dd181326.tar.gz
Address platforms with no __int128.
-rw-r--r--src/powerpc/ffi_linux64.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/powerpc/ffi_linux64.c b/src/powerpc/ffi_linux64.c
index de0d033..7364770 100644
--- a/src/powerpc/ffi_linux64.c
+++ b/src/powerpc/ffi_linux64.c
@@ -547,9 +547,9 @@ ffi_prep_args64 (extended_cif *ecif, unsigned long *const stack)
if (next_arg.ul == gpr_end.ul)
next_arg.ul = rest.ul;
if (vecarg_count < NUM_VEC_ARG_REGISTERS64 && i < nfixedargs)
- *vec_base.f128++ = **p_argv.f128;
+ memcpy (vec_base.f128++, *p_argv.f128, sizeof (float128));
else
- *next_arg.f128 = **p_argv.f128;
+ memcpy (next_arg.f128, *p_argv.f128, sizeof (float128));
if (++next_arg.f128 == gpr_end.f128)
next_arg.f128 = rest.f128;
vecarg_count++;