author | pcpa <paulo.cesar.pereira.de.andrade@gmail.com> | 2013年04月27日 16:13:44 -0300 |
---|---|---|
committer | pcpa <paulo.cesar.pereira.de.andrade@gmail.com> | 2013年04月27日 16:13:44 -0300 |
commit | f52b976390fada608126b49499f291cbe1d88017 (patch) | |
tree | c36589522a996a016ca62ae1497a7d97944de341 /lib/jit_ia64-cpu.c | |
parent | 2475ae88d4cfe1ff266d19647c295ab73314772a (diff) | |
download | lightning-f52b976390fada608126b49499f291cbe1d88017.tar.gz |
-rw-r--r-- | lib/jit_ia64-cpu.c | 30 |
diff --git a/lib/jit_ia64-cpu.c b/lib/jit_ia64-cpu.c index d817fbf..8ae73f4 100644 --- a/lib/jit_ia64-cpu.c +++ b/lib/jit_ia64-cpu.c @@ -1328,19 +1328,22 @@ static jit_word_t _bsubi_u(jit_state_t*,jit_word_t, #define bxsubi(i0,r0,i1) bsubi(i0,r0,i1,0) #define bxsubr_u(i0,r0,r1) bsubr_u(i0,r0,r1,0) #define bxsubi_u(i0,r0,i1) bsubi_u(i0,r0,i1,0) -#define ldr_c(r0,r1) LD1_S(r0,r1) +#define ldr_c(r0,r1) _ldr_c(_jit,r0,r1) +static void _ldr_c(jit_state_t*,jit_int32_t,jit_int32_t); #define ldi_c(r0,i0) _ldi_c(_jit,r0,i0) static void _ldi_c(jit_state_t*,jit_int32_t,jit_word_t); #define ldr_uc(r0,r1) LD1(r0,r1) #define ldi_uc(r0,i0) _ldi_uc(_jit,r0,i0) static void _ldi_uc(jit_state_t*,jit_int32_t,jit_word_t); -#define ldr_s(r0,r1) LD2_S(r0,r1) +#define ldr_s(r0,r1) _ldr_s(_jit,r0,r1) +static void _ldr_s(jit_state_t*,jit_int32_t,jit_int32_t); #define ldi_s(r0,i0) _ldi_s(_jit,r0,i0) static void _ldi_s(jit_state_t*,jit_int32_t,jit_word_t); #define ldr_us(r0,r1) LD2(r0,r1) #define ldi_us(r0,i0) _ldi_us(_jit,r0,i0) static void _ldi_us(jit_state_t*,jit_int32_t,jit_word_t); -#define ldr_i(r0,r1) LD4_S(r0,r1) +#define ldr_i(r0,r1) _ldr_i(_jit,r0,r1) +static void _ldr_i(jit_state_t*,jit_int32_t,jit_int32_t); #define ldi_i(r0,i0) _ldi_i(_jit,r0,i0) static void _ldi_i(jit_state_t*,jit_int32_t,jit_word_t); #define ldr_ui(r0,r1) LD4(r0,r1) @@ -4046,6 +4049,13 @@ _nei(jit_state_t *_jit, jit_int32_t r0, jit_int32_t r1, jit_word_t i0) } static void +_ldr_c(jit_state_t *_jit, jit_int32_t r0, jit_int32_t r1) +{ + ldr_uc(r0, r1); + extr_c(r0, r0); +} + +static void _ldi_c(jit_state_t *_jit, jit_int32_t r0, jit_word_t i0) { jit_int32_t reg; @@ -4066,6 +4076,13 @@ _ldi_uc(jit_state_t *_jit, jit_int32_t r0, jit_word_t i0) } static void +_ldr_s(jit_state_t *_jit, jit_int32_t r0, jit_int32_t r1) +{ + ldr_us(r0, r1); + extr_s(r0, r0); +} + +static void _ldi_s(jit_state_t *_jit, jit_int32_t r0, jit_word_t i0) { jit_int32_t reg; @@ -4086,6 +4103,13 @@ _ldi_us(jit_state_t *_jit, jit_int32_t r0, jit_word_t i0) } static void +_ldr_i(jit_state_t *_jit, jit_int32_t r0, jit_int32_t r1) +{ + ldr_ui(r0, r1); + extr_i(r0, r0); +} + +static void _ldi_i(jit_state_t *_jit, jit_int32_t r0, jit_word_t i0) { jit_int32_t reg; |