1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-27 13:30:31 +02:00

X86: No longer make st7 available as a temporary

* include/lightning/jit_x86.h, lib/jit_x86-cpu.c,
	lib/jit_x86-x87.c: No longer make st(7) available.
	Need to keep one x87 slots empty to avoid exceptions.
	This has the side effect of no longer needing the
	hackish emms instruction before a function call.
This commit is contained in:
pcpa 2015-02-17 13:55:01 -02:00
parent 2597bf3c13
commit 9f72e66116
4 changed files with 10 additions and 8 deletions

View file

@ -3390,9 +3390,6 @@ _bxsubi_u(jit_state_t *_jit, jit_word_t i0, jit_int32_t r0, jit_word_t i1)
static void
_callr(jit_state_t *_jit, jit_int32_t r0)
{
#if __X32
emms();
#endif
rex(0, 0, _NOREG, _NOREG, r0);
ic(0xff);
mrm(0x03, 0x02, r7(r0));
@ -3411,7 +3408,6 @@ _calli(jit_state_t *_jit, jit_word_t i0)
jit_unget_reg(reg);
#else
jit_word_t w;
emms();
ic(0xe8);
w = i0 - (_jit->pc.w + 4);
ii(w);