[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 391/437: aarch64: Correct va_list offsets and double loa
From: |
Andy Wingo |
Subject: |
[Guile-commits] 391/437: aarch64: Correct va_list offsets and double load. |
Date: |
Mon, 2 Jul 2018 05:15:02 -0400 (EDT) |
wingo pushed a commit to branch lightning
in repository guile.
commit 316dfc6e5ee1a2468c99ff5c8890e932f6719c9b
Author: pcpa <address@hidden>
Date: Sun May 24 14:34:16 2015 -0300
aarch64: Correct va_list offsets and double load.
* lib/jit_aarch64-fpu.c, lib/jit_aarch64.c: Correct base
aarch64 varargs code.
---
ChangeLog | 5 +++++
lib/jit_aarch64-fpu.c | 2 +-
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 <address@hidden>
+ * lib/jit_aarch64-fpu.c, lib/jit_aarch64.c: Correct base
+ aarch64 varargs code.
+
+2015-06-24 Paulo Andrade <address@hidden>
+
* 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;
}
}
- [Guile-commits] 207/437: Correct race condition if register is written more than once, (continued)
- [Guile-commits] 207/437: Correct race condition if register is written more than once, Andy Wingo, 2018/07/02
- [Guile-commits] 394/437: Move multiply defined macro to a single header file., Andy Wingo, 2018/07/02
- [Guile-commits] 366/437: Correct inconsistency with jit_regno_patch, Andy Wingo, 2018/07/02
- [Guile-commits] 421/437: Remove documentation from embedded GNU lightning, Andy Wingo, 2018/07/02
- [Guile-commits] 195/437: Minor updates when testing on a prototype, quadcore Loongson mips., Andy Wingo, 2018/07/02
- [Guile-commits] 332/437: Add test case to check possible issues with 2 contexts, Andy Wingo, 2018/07/02
- [Guile-commits] 189/437: Pass all but the (not yet implemented) qmul and qdiv tests in sparc, Andy Wingo, 2018/07/02
- [Guile-commits] 217/437: Adjust lightning to work on ppc AIX., Andy Wingo, 2018/07/02
- [Guile-commits] 223/437: Build and pass all tests on big endian Irix mips using the n32 abi., Andy Wingo, 2018/07/02
- [Guile-commits] 205/437: Properly split instruction groups for predicate registers., Andy Wingo, 2018/07/02
- [Guile-commits] 391/437: aarch64: Correct va_list offsets and double load.,
Andy Wingo <=
- [Guile-commits] 304/437: Correct typo in documentation., Andy Wingo, 2018/07/02
- [Guile-commits] 409/437: Correct binutils version detection, Andy Wingo, 2018/07/02
- [Guile-commits] 310/437: Allow jit_jmpi on an immediate constant address., Andy Wingo, 2018/07/02
- [Guile-commits] 264/437: ARM: Do not use ldrt/strt by default, Andy Wingo, 2018/07/02
- [Guile-commits] 244/437: HPPA: Correct bogus logic when calling function pointers., Andy Wingo, 2018/07/02
- [Guile-commits] 273/437: x86: Ensure the x87 stack is empty when calling a function., Andy Wingo, 2018/07/02
- [Guile-commits] 126/437: Cleanup on preparation for lightning rework., Andy Wingo, 2018/07/02
- [Guile-commits] 364/437: GNU lightning 2.1.0 release, Andy Wingo, 2018/07/02
- [Guile-commits] 242/437: Add missing jit_clear_state to documentation sample., Andy Wingo, 2018/07/02
- [Guile-commits] 417/437: HPPA: Correct wrong regarg_p check, Andy Wingo, 2018/07/02