mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-03 13:20:26 +02:00
fix jit_extr_f_d and jit_extr_d_f for x86-64
2010-08-10 Paulo César Pereira de Andrade <pcpa@mandriva.com.br> Paolo Bonzini <bonzini@gnu.org> * 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.
This commit is contained in:
parent
5cef649486
commit
ceaf1b05cf
3 changed files with 18 additions and 2 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
2010-08-10 Paulo César Pereira de Andrade <pcpa@mandriva.com.br>
|
||||||
|
Paolo Bonzini <bonzini@gnu.org>
|
||||||
|
|
||||||
|
* 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 <bonzini@gnu.org>
|
2010-07-28 Paolo Bonzini <bonzini@gnu.org>
|
||||||
|
|
||||||
* tests/Makefile.am: Add ldst test.
|
* tests/Makefile.am: Add ldst test.
|
||||||
|
|
|
@ -61,8 +61,6 @@
|
||||||
#define jit_abs_f(rd,rs) jit_abs_d(rd,rs)
|
#define jit_abs_f(rd,rs) jit_abs_d(rd,rs)
|
||||||
#define jit_negr_f(rd,rs) jit_negr_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_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_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_roundr_f_i(rd, rs) jit_roundr_d_i(rd, rs)
|
||||||
#define jit_floorr_f_i(rd, rs) jit_floorr_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)
|
#define jit_retval_f(rs) jit_retval_d(rs)
|
||||||
#endif
|
#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
|
#ifndef jit_beqr_f
|
||||||
#define jit_beqr_f(lab, a, b) jit_beqr_d(lab, a, b)
|
#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_bner_f(lab, a, b) jit_bner_d(lab, a, b)
|
||||||
|
|
|
@ -162,6 +162,8 @@ union jit_double_imm {
|
||||||
#define jit_extr_i_f(rd, rs) CVTSI2SSLrr((rs), (rd))
|
#define jit_extr_i_f(rd, rs) CVTSI2SSLrr((rs), (rd))
|
||||||
#define jit_extr_l_d(rd, rs) CVTSI2SDQrr((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_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_d_i(rd, rs) CVTSD2SILrr((rs), (rd))
|
||||||
#define jit_roundr_f_i(rd, rs) CVTSS2SILrr((rs), (rd))
|
#define jit_roundr_f_i(rd, rs) CVTSS2SILrr((rs), (rd))
|
||||||
#define jit_roundr_d_l(rd, rs) CVTSD2SIQrr((rs), (rd))
|
#define jit_roundr_d_l(rd, rs) CVTSD2SIQrr((rs), (rd))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue