1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-29 14:30:34 +02:00

mips: Do not make t9 available as a generic register

* include/lightning/jit_mips.h: Do not make the t9 register
	JIT_R11 (or JIT_R7 for n32 or n64 abi) available. Previously
	it cause problems if one expects it to not be changed in a
	function call. For example, calling a jit function, where it
	really does not need to be changed.
This commit is contained in:
pcpa 2014-11-03 12:55:35 -02:00
parent 85ab988cd1
commit ade23376f9
2 changed files with 10 additions and 4 deletions

View file

@ -1,3 +1,11 @@
2014-11-03 Paulo Andrade <pcpa@gnu.org>
* include/lightning/jit_mips.h: Do not make the t9 register
JIT_R11 (or JIT_R7 for n32 or n64 abi) available. Previously
it cause problems if one expects it to not be changed in a
function call. For example, calling a jit function, where it
really does not need to be changed.
2014-10-26 Paulo Andrade <pcpa@gnu.org> 2014-10-26 Paulo Andrade <pcpa@gnu.org>
* lib/jit_aarch64.c, lib/jit_alpha.c, lib/jit_arm.c, * lib/jit_aarch64.c, lib/jit_alpha.c, lib/jit_arm.c,

View file

@ -35,10 +35,10 @@ typedef enum {
#define jit_r(i) (_V0 + (i)) #define jit_r(i) (_V0 + (i))
#if NEW_ABI #if NEW_ABI
# define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4) # define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4)
# define jit_r_num() 8 # define jit_r_num() 7
#else #else
# define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4) # define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4)
# define jit_r_num() 12 # define jit_r_num() 11
#endif #endif
#define jit_v(i) (_S0 + (i)) #define jit_v(i) (_S0 + (i))
#define jit_v_num() 8 #define jit_v_num() 8
@ -58,7 +58,6 @@ typedef enum {
# define JIT_R4 _T6 # define JIT_R4 _T6
# define JIT_R5 _T7 # define JIT_R5 _T7
# define JIT_R6 _T8 # define JIT_R6 _T8
# define JIT_R7 _T9
#else #else
# define JIT_R2 _T0 # define JIT_R2 _T0
# define JIT_R3 _T1 # define JIT_R3 _T1
@ -69,7 +68,6 @@ typedef enum {
# define JIT_R8 _T6 # define JIT_R8 _T6
# define JIT_R9 _T7 # define JIT_R9 _T7
# define JIT_R10 _T8 # define JIT_R10 _T8
# define JIT_R11 _T9
#endif #endif
_V0, _V1, _V0, _V1,
#if !NEW_ABI #if !NEW_ABI