From 5bead069f246f58b32b1b24400a9447075013ccb Mon Sep 17 00:00:00 2001 From: David Gonzalez Martin Date: Sun, 17 Mar 2024 12:27:38 -0600 Subject: [PATCH] Fix aarch64 return type ABI bug --- src/compiler/abi/c_abi_aarch64.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/compiler/abi/c_abi_aarch64.c b/src/compiler/abi/c_abi_aarch64.c index 21ef4339e..4379ce543 100644 --- a/src/compiler/abi/c_abi_aarch64.c +++ b/src/compiler/abi/c_abi_aarch64.c @@ -201,12 +201,12 @@ ABIArgInfo *aarch64_classify_return_type(Type *type, bool variadic) unsigned alignment = type_abi_alignment(type); // Align to multiple of 8. - unsigned aligned_size = aligned_offset(size, 8); + size = aligned_offset(size, 8); if (alignment < 16 && size == 16) { return abi_arg_new_direct_coerce_type(type_get_array(type_ulong, size / 8)); } - return abi_arg_new_direct_coerce_type(type_int_unsigned_by_bitsize(aligned_size * 8)); + return abi_arg_new_direct_coerce_type(type_int_unsigned_by_bitsize(size * 8)); } return abi_arg_new_indirect_by_val(type);