lightning.git - Portable just-in-time compiler library

index : lightning.git
Portable just-in-time compiler library
summary refs log tree commit diff
diff options
context:
space:
mode:
Diffstat
-rw-r--r--ChangeLog 5
-rw-r--r--lib/jit_aarch64-fpu.c 2
-rw-r--r--lib/jit_aarch64.c 6
3 files changed, 8 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index a39ed03..ddb7b75 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2015年06月24日 Paulo Andrade <pcpa@gnu.org>
+ * lib/jit_aarch64-fpu.c, lib/jit_aarch64.c: Correct base
+ aarch64 varargs code.
+
+2015年06月24日 Paulo Andrade <pcpa@gnu.org>
+
* check/lightning.c: Clearly run check if clang is the system
compiler.
diff --git a/lib/jit_aarch64-fpu.c b/lib/jit_aarch64-fpu.c
index 1f13a14..ff6061a 100644
--- a/lib/jit_aarch64-fpu.c
+++ b/lib/jit_aarch64-fpu.c
@@ -900,7 +900,7 @@ _vaarg_d(jit_state_t *_jit, jit_int32_t r0, jit_int32_t r1)
ldxi(rn(rg0), r1, offsetof(jit_va_list_t, stack));
/* Load argument. */
- ldr(r0, rn(rg0));
+ ldr_d(r0, rn(rg0));
/* Update stack pointer. */
addi(rn(rg0), rn(rg0), 8);
diff --git a/lib/jit_aarch64.c b/lib/jit_aarch64.c
index 89c3eda..0e1da00 100644
--- a/lib/jit_aarch64.c
+++ b/lib/jit_aarch64.c
@@ -27,9 +27,7 @@ typedef struct jit_qreg {
jit_float64_t h;
} jit_qreg_t;
-#define va_gp_min_offset -64
#define va_gp_top_offset offsetof(jit_va_list_t, q0)
-#define va_fp_min_offset -128
#define va_fp_top_offset sizeof(jit_va_list_t)
typedef struct jit_va_list {
jit_pointer_t stack;
@@ -340,13 +338,13 @@ _jit_ellipsis(jit_state_t *_jit)
if (jit_arg_reg_p(_jitc->function->self.argi))
_jitc->function->vagp = (8 - _jitc->function->self.argi) * -8;
else
- _jitc->function->vagp = va_gp_min_offset;
+ _jitc->function->vagp = 0;
/* Initialize fp offset in save area. */
if (jit_arg_f_reg_p(_jitc->function->self.argf))
_jitc->function->vafp = (8 - _jitc->function->self.argf) * -16;
else
- _jitc->function->vafp = va_fp_min_offset;
+ _jitc->function->vafp = 0;
}
}
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月14日 20:20:07 +0000

AltStyle によって変換されたページ (->オリジナル) /