mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-03 13:20:26 +02:00
fix problems with i386 32-bit floating point branches
2009-02-17 Paolo Bonzini <bonzini@gnu.org> * lightning/fp-common.h: Define double branches if missing. * lightning/i386/asm.h: Define JC and JNC mnemonics. * lightning/i386/fp-32.h: Fix jit_fp_btest. All reported by Mike Spivey.
This commit is contained in:
parent
f87b2f6df8
commit
a76f19c5ef
5 changed files with 30 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
|||
2009-02-17 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* lightning/fp-common.h: Define double branches if missing.
|
||||
* lightning/i386/asm.h: Define JC and JNC mnemonics.
|
||||
* lightning/i386/fp-32.h: Fix jit_fp_btest. All reported
|
||||
by Mike Spivey.
|
||||
|
||||
2008-10-09 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* lightning/ppc/funcs.h (jit_flush_code): Subtract 1 from end.
|
||||
|
|
1
THANKS
1
THANKS
|
@ -5,6 +5,7 @@ Eli Barzilay <eli@barzilay.org>
|
|||
Ludovic Courtes <ludo@chbouib.org>
|
||||
Matthew Flatt <mflatt@cs.utah.edu>
|
||||
Laurent Michel <ldm@thorgal.homelinux.org>
|
||||
Mike Spivey <mike@comlab.ox.ac.uk>
|
||||
Basile Starynkevitch <basile@starynkevitch.net>
|
||||
Sam Steingold <sds@gnu.org>
|
||||
Jens Troeger <savage@light-speed.de>
|
||||
|
|
|
@ -85,6 +85,23 @@
|
|||
#define jit_retval_f(rs) jit_retval_d(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)
|
||||
#define jit_bgtr_f(lab, a, b) jit_bgtr_d(lab, a, b)
|
||||
#define jit_bger_f(lab, a, b) jit_bger_d(lab, a, b)
|
||||
#define jit_bltr_f(lab, a, b) jit_bltr_d(lab, a, b)
|
||||
#define jit_bler_f(lab, a, b) jit_bler_d(lab, a, b)
|
||||
#define jit_buneqr_f(lab, a, b) jit_buneqr_d(lab, a, b)
|
||||
#define jit_bltgtr_f(lab, a, b) jit_bltgtr_d(lab, a, b)
|
||||
#define jit_bungtr_f(lab, a, b) jit_bungtr_d(lab, a, b)
|
||||
#define jit_bunger_f(lab, a, b) jit_bunger_d(lab, a, b)
|
||||
#define jit_bunltr_f(lab, a, b) jit_bunltr_d(lab, a, b)
|
||||
#define jit_bunler_f(lab, a, b) jit_bunler_d(lab, a, b)
|
||||
#define jit_bordr_f(lab, a, b) jit_bordr_d(lab, a, b)
|
||||
#define jit_bunordr_f(lab, a, b) jit_bunordr_d(lab, a, b)
|
||||
#endif
|
||||
|
||||
#ifndef jit_retval_f
|
||||
#define jit_retval_f(op1) jit_movr_f((op1), JIT_FPRET)
|
||||
#endif
|
||||
|
|
|
@ -915,8 +915,10 @@ enum {
|
|||
#define JOSm(D) JCCSim(0x0, D)
|
||||
#define JNOSm(D) JCCSim(0x1, D)
|
||||
#define JBSm(D) JCCSim(0x2, D)
|
||||
#define JCSm(D) JCCSim(0x2, D)
|
||||
#define JNAESm(D) JCCSim(0x2, D)
|
||||
#define JNBSm(D) JCCSim(0x3, D)
|
||||
#define JNCSm(D) JCCSim(0x3, D)
|
||||
#define JAESm(D) JCCSim(0x3, D)
|
||||
#define JESm(D) JCCSim(0x4, D)
|
||||
#define JZSm(D) JCCSim(0x4, D)
|
||||
|
@ -946,8 +948,10 @@ enum {
|
|||
#define JOm(D) JCCim(0x0, D)
|
||||
#define JNOm(D) JCCim(0x1, D)
|
||||
#define JBm(D) JCCim(0x2, D)
|
||||
#define JCm(D) JCCim(0x2, D)
|
||||
#define JNAEm(D) JCCim(0x2, D)
|
||||
#define JNBm(D) JCCim(0x3, D)
|
||||
#define JNCm(D) JCCim(0x3, D)
|
||||
#define JAEm(D) JCCim(0x3, D)
|
||||
#define JEm(D) JCCim(0x4, D)
|
||||
#define JZm(D) JCCim(0x4, D)
|
||||
|
|
|
@ -261,7 +261,7 @@ union jit_double_imm {
|
|||
((_and) ? ANDLir ((_and), _EAX) : 0), \
|
||||
((cmp) ? CMPLir ((cmp), _AL) : 0), \
|
||||
POPLr(_EAX), \
|
||||
res ((d), 0, 0, 0), \
|
||||
res ((d)), \
|
||||
_jit.x.ppc)
|
||||
|
||||
#define jit_nothing_needed(x)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue