[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 104/437: fix jit_extr_f_d and jit_extr_d_f for x86-64
From: |
Andy Wingo |
Subject: |
[Guile-commits] 104/437: fix jit_extr_f_d and jit_extr_d_f for x86-64 |
Date: |
Mon, 2 Jul 2018 05:13:54 -0400 (EDT) |
wingo pushed a commit to branch lightning
in repository guile.
commit ceaf1b05cfe78b57b3fd6c941bd7c8bdbe113a4c
Author: Paolo Bonzini <address@hidden>
Date: Tue Aug 10 23:33:18 2010 -0400
fix jit_extr_f_d and jit_extr_d_f for x86-64
2010-08-10 Paulo César Pereira de Andrade <address@hidden>
Paolo Bonzini <address@hidden>
* lightning/i386/core-32.h (jit_replace): Use MOVLrr, not MOVLir.
(jit_movbrm): Check index register as well.
* lightning/i386/fp-64.h: Add jit_extr_f_d and jit_extr_d_f.
* lightning/fp-common.h: Add jit_extr_f_d and jit_extr_d_f.
---
ChangeLog | 8 ++++++++
lightning/fp-common.h | 10 ++++++++--
lightning/i386/fp-64.h | 2 ++
3 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 550d75d..1375eb7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2010-08-10 Paulo César Pereira de Andrade <address@hidden>
+ Paolo Bonzini <address@hidden>
+
+ * lightning/i386/core-32.h (jit_replace): Use MOVLrr, not MOVLir.
+ (jit_movbrm): Check index register as well.
+ * lightning/i386/fp-64.h: Add jit_extr_f_d and jit_extr_d_f.
+ * lightning/fp-common.h: Add jit_extr_f_d and jit_extr_d_f.
+
2010-07-28 Paolo Bonzini <address@hidden>
* tests/Makefile.am: Add ldst test.
diff --git a/lightning/fp-common.h b/lightning/fp-common.h
index 5dfe3cb..3812a6a 100644
--- a/lightning/fp-common.h
+++ b/lightning/fp-common.h
@@ -61,8 +61,6 @@
#define jit_abs_f(rd,rs) jit_abs_d(rd,rs)
#define jit_negr_f(rd,rs) jit_negr_d(rd,rs)
#define jit_sqrt_f(rd,rs) jit_sqrt_d(rd,rs)
-#define jit_extr_f_d(rs, rd) jit_movr_d(rd, rs)
-#define jit_extr_d_f(rs, rd) jit_movr_d(rd, rs)
#define jit_extr_i_f(rd, rs) jit_extr_i_d(rd, rs)
#define jit_roundr_f_i(rd, rs) jit_roundr_d_i(rd, rs)
#define jit_floorr_f_i(rd, rs) jit_floorr_d_i(rd, rs)
@@ -85,6 +83,14 @@
#define jit_retval_f(rs) jit_retval_d(rs)
#endif
+#ifndef jit_extr_f_d
+#define jit_extr_f_d(rd, rs) jit_movr_d(rd, rs)
+#endif
+
+#ifndef jit_extr_d_f
+#define jit_extr_d_f(rd, rs) jit_movr_d(rd, rs)
+#endif
+
#ifndef jit_beqr_f
#define jit_beqr_f(lab, a, b) jit_beqr_d(lab, a, b)
#define jit_bner_f(lab, a, b) jit_bner_d(lab, a, b)
diff --git a/lightning/i386/fp-64.h b/lightning/i386/fp-64.h
index e05ee34..67fdf8c 100644
--- a/lightning/i386/fp-64.h
+++ b/lightning/i386/fp-64.h
@@ -162,6 +162,8 @@ union jit_double_imm {
#define jit_extr_i_f(rd, rs) CVTSI2SSLrr((rs), (rd))
#define jit_extr_l_d(rd, rs) CVTSI2SDQrr((rs), (rd))
#define jit_extr_l_f(rd, rs) CVTSI2SSQrr((rs), (rd))
+#define jit_extr_f_d(rd, rs) CVTSS2SDrr((rs), (rd))
+#define jit_extr_d_f(rd, rs) CVTSD2SSrr((rs), (rd))
#define jit_roundr_d_i(rd, rs) CVTSD2SILrr((rs), (rd))
#define jit_roundr_f_i(rd, rs) CVTSS2SILrr((rs), (rd))
#define jit_roundr_d_l(rd, rs) CVTSD2SIQrr((rs), (rd))
- [Guile-commits] 84/437: move x86-64 JIT_V1/JIT_V2 in R12/R13, (continued)
- [Guile-commits] 84/437: move x86-64 JIT_V1/JIT_V2 in R12/R13, Andy Wingo, 2018/07/02
- [Guile-commits] 83/437: detect 32-/64-bit variant of i386 back-end at include time (not configure time), Andy Wingo, 2018/07/02
- [Guile-commits] 86/437: fix x86-64 jit_movi_l (x, 0) and 16-byte stack alignment in the prolog, Andy Wingo, 2018/07/02
- [Guile-commits] 91/437: fix miscellaneous PPC-32 back-end bugs, Andy Wingo, 2018/07/02
- [Guile-commits] 103/437: fix two bugs in load/store for i386, Andy Wingo, 2018/07/02
- [Guile-commits] 100/437: fix jit_movbrm in the i386 backend, Andy Wingo, 2018/07/02
- [Guile-commits] 58/437: use CALLsr, not CALLLsr, Andy Wingo, 2018/07/02
- [Guile-commits] 60/437: don't use _VOID symbol, reserved by newlib (cygwin), Andy Wingo, 2018/07/02
- [Guile-commits] 96/437: fix blunder in operand order (i386), Andy Wingo, 2018/07/02
- [Guile-commits] 97/437: fix x86 shifts, Andy Wingo, 2018/07/02
- [Guile-commits] 104/437: fix jit_extr_f_d and jit_extr_d_f for x86-64,
Andy Wingo <=
- [Guile-commits] 107/437: fix -D_ASM_SAFETY compilation of beqr_d and bne_d, Andy Wingo, 2018/07/02
- [Guile-commits] 101/437: fix i386 jit_replace and x86_64 jit_movi_f, Andy Wingo, 2018/07/02
- [Guile-commits] 118/437: Account stack alignment on jit functions with odd number of arguments., Andy Wingo, 2018/07/02
- [Guile-commits] 03/437: big merge, Andy Wingo, 2018/07/02
- [Guile-commits] 111/437: Define extra SSE2 xmmN registers and set JIT_FPTMP to the topmost one., Andy Wingo, 2018/07/02
- [Guile-commits] 94/437: fix problems with i386 32-bit floating point branches, Andy Wingo, 2018/07/02
- [Guile-commits] 115/437: Change JIT_FPR_NUM to 7 to prevent clobber of JIT_FPR(7), Andy Wingo, 2018/07/02
- [Guile-commits] 112/437: Add safety check on number of integer and float arguments on x86_64., Andy Wingo, 2018/07/02
- [Guile-commits] 95/437: another fix to jit_fp_btest, Andy Wingo, 2018/07/02
- [Guile-commits] 110/437: Change jit_getarg_{c, uc, s, us, i, ui} to extr_l to sign extend on 64 bits., Andy Wingo, 2018/07/02