summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEkaitz Zarraga <ekaitz@elenq.tech>2024-11-15 21:51:39 +0100
committerEkaitz Zarraga <ekaitz@elenq.tech>2025-01-29 14:28:13 +0100
commitce8b8e4778e7e757855d4397626228ae0f1979f3 (patch)
treec683d3354a796042a36e64506576c4952d51b581
parent285cfd284ab6d72a1aea060845c65b1688dcd77a (diff)
downloadguile-ce8b8e4778e7e757855d4397626228ae0f1979f3.tar.gz
riscv: change stack alignment to 16
-rw-r--r--lightening/riscv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lightening/riscv.c b/lightening/riscv.c
index c4b43dc02..3f0adce46 100644
--- a/lightening/riscv.c
+++ b/lightening/riscv.c
@@ -124,7 +124,7 @@ next_abi_arg(struct abi_arg_iterator *iter, jit_operand_t *arg)
}
*arg = jit_operand_mem (abi, JIT_SP, iter->stack_size);
#if __WORDSIZE == 32
- iter->stack_size += 4;
+ iter->stack_size += 4 + (abi == JIT_OPERAND_ABI_DOUBLE ? 4 : 0);
#elif __WORDSIZE == 64
iter->stack_size += 8;
#endif
@@ -141,7 +141,7 @@ jit_flush(void *fptr, void *tptr)
static inline size_t
jit_stack_alignment(void)
{
- return 8;
+ return 16;
// NOTE: See: https://github.com/riscv/riscv-gcc/issues/61
}