1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-13 23:20:32 +02:00

Fix u64-ref JIT on 32-bit

* libguile/jit.c (compile_u64_ref): Fix 32-bit load path; endianness was
  reversed.
This commit is contained in:
Andy Wingo 2019-04-29 09:41:03 +02:00
parent 85b3ee0ec3
commit c461126fab

View file

@ -3973,13 +3973,13 @@ compile_u64_ref (scm_jit_state *j, uint8_t dst, uint8_t ptr, uint8_t idx)
emit_addr (j, T0, T0, T1); emit_addr (j, T0, T0, T1);
if (BIGENDIAN) if (BIGENDIAN)
{ {
emit_ldxi (j, T1, T0, 4); emit_ldr (j, T1, T0);
emit_ldr (j, T0, T0); emit_ldxi (j, T0, T0, 4);
} }
else else
{ {
emit_ldr (j, T1, T0); emit_ldxi (j, T1, T0, 4);
emit_ldxi (j, T0, T0, 4); emit_ldr (j, T0, T0);
} }
emit_sp_set_u64 (j, dst, T0, T1); emit_sp_set_u64 (j, dst, T0, T1);
#endif #endif