1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 03:30:27 +02:00

Implementation of new design

Documentation to come, as tests get added and things settle down.
This commit is contained in:
Andy Wingo 2019-03-22 15:20:40 +01:00
parent 0d81c5c337
commit bad7e34c83
18 changed files with 4333 additions and 7149 deletions

View file

@ -658,15 +658,15 @@ static void _stxi_i(jit_state_t*,jit_word_t,int32_t,int32_t);
# define stxi_l(i0,r0,r1) _stxi_l(_jit,i0,r0,r1)
static void _stxi_l(jit_state_t*,jit_word_t,int32_t,int32_t);
# if __BYTE_ORDER == __LITTLE_ENDIAN
# define htonr_us(r0,r1) _htonr_us(_jit,r0,r1)
static void _htonr_us(jit_state_t*,int32_t,int32_t);
# define htonr_ui(r0,r1) _htonr_ui(_jit,r0,r1)
static void _htonr_ui(jit_state_t*,int32_t,int32_t);
# define htonr_ul(r0,r1) REV(r0,r1)
# define bswapr_us(r0,r1) _bswapr_us(_jit,r0,r1)
static void _bswapr_us(jit_state_t*,int32_t,int32_t);
# define bswapr_ui(r0,r1) _bswapr_ui(_jit,r0,r1)
static void _bswapr_ui(jit_state_t*,int32_t,int32_t);
# define bswapr_ul(r0,r1) REV(r0,r1)
# else
# define htonr_us(r0,r1) extr_us(r0,r1)
# define htonr_ui(r0,r1) extr_ui(r0,r1)
# define htonr_ul(r0,r1) movr(r0,r1)
# define bswapr_us(r0,r1) extr_us(r0,r1)
# define bswapr_ui(r0,r1) extr_ui(r0,r1)
# define bswapr_ul(r0,r1) movr(r0,r1)
# endif
# define extr_c(r0,r1) SXTB(r0,r1)
# define extr_uc(r0,r1) UXTB(r0,r1)
@ -1443,16 +1443,16 @@ _xori(jit_state_t *_jit, int32_t r0, int32_t r1, jit_word_t i0)
#if __BYTE_ORDER == __LITTLE_ENDIAN
static void
_htonr_us(jit_state_t *_jit, int32_t r0, int32_t r1)
_bswapr_us(jit_state_t *_jit, int32_t r0, int32_t r1)
{
htonr_ul(r0, r1);
bswapr_ul(r0, r1);
rshi_u(r0, r0, 48);
}
static void
_htonr_ui(jit_state_t *_jit, int32_t r0, int32_t r1)
_bswapr_ui(jit_state_t *_jit, int32_t r0, int32_t r1)
{
htonr_ul(r0, r1);
bswapr, 2019_ul(r0, r1);
rshi_u(r0, r0, 32);
}
#endif