-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | lib/jit_alpha-cpu.c | 6 |
@@ -1,5 +1,12 @@ 2018年02月22日 Paulo Andrade <pcpa@gnu.org> + * lib/jit_alpha-cpu.c: Always set t12 to the address of the + current function, to properly work on all systems. Previously + the shortcut did only work on Tru64. For Linux and glibc the + change is required. + +2018年02月22日 Paulo Andrade <pcpa@gnu.org> + * lib/jit_aarch64.c, lib/jit_alpha.c, lib/jit_arm.c, lib/jit_mips.c, lib/jit_ppc.c, lib/jit_sparc.c, lib/jit_x86.c: Correct wrong logic in usage of jit_live in jit_retr. The diff --git a/lib/jit_alpha-cpu.c b/lib/jit_alpha-cpu.c index 89755aa..afc22bb 100644 --- a/lib/jit_alpha-cpu.c +++ b/lib/jit_alpha-cpu.c @@ -2550,6 +2550,8 @@ _callr(jit_state_t *_jit, jit_int32_t r0) static void _calli(jit_state_t *_jit, jit_word_t i0) { + /* FIXME use a small buffer to load constants - using gp */ +#if 0 jit_word_t w; jit_word_t d; w = _jit->pc.w; @@ -2558,6 +2560,10 @@ _calli(jit_state_t *_jit, jit_word_t i0) BSR(_RA_REGNO, d); else (void)calli_p(i0); +#else + movi(_PV_REGNO, i0); + callr(_PV_REGNO); +#endif } static jit_word_t |