diff --git a/ChangeLog b/ChangeLog index ef39be4d6..655eeb9f6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2014-11-03 Paulo Andrade + + * 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 * lib/jit_aarch64.c, lib/jit_alpha.c, lib/jit_arm.c, diff --git a/include/lightning/jit_mips.h b/include/lightning/jit_mips.h index c56d511ec..7ebf1535c 100644 --- a/include/lightning/jit_mips.h +++ b/include/lightning/jit_mips.h @@ -35,10 +35,10 @@ typedef enum { #define jit_r(i) (_V0 + (i)) #if NEW_ABI # define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4) -# define jit_r_num() 8 +# define jit_r_num() 7 #else # define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4) -# define jit_r_num() 12 +# define jit_r_num() 11 #endif #define jit_v(i) (_S0 + (i)) #define jit_v_num() 8 @@ -58,7 +58,6 @@ typedef enum { # define JIT_R4 _T6 # define JIT_R5 _T7 # define JIT_R6 _T8 -# define JIT_R7 _T9 #else # define JIT_R2 _T0 # define JIT_R3 _T1 @@ -69,7 +68,6 @@ typedef enum { # define JIT_R8 _T6 # define JIT_R9 _T7 # define JIT_R10 _T8 -# define JIT_R11 _T9 #endif _V0, _V1, #if !NEW_ABI