mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-21 03:00:19 +02:00
PPC: Build and pass all tests in powerpcle
* lib/jit_ppc-cpu.c, lib/jit_ppc.c: Correct some endianess issues on the powerpc le backend.
This commit is contained in:
parent
a16adad0fd
commit
af9df5faeb
3 changed files with 13 additions and 4 deletions
|
@ -1,3 +1,8 @@
|
|||
2014-12-26 Paulo Andrade <pcpa@gnu.org>
|
||||
|
||||
* lib/jit_ppc-cpu.c, lib/jit_ppc.c: Correct some endianess issues
|
||||
on the powerpc le backend.
|
||||
|
||||
2014-12-26 Paulo Andrade <pcpa@gnu.org>
|
||||
|
||||
* lib/jit_ppc-cpu.c: Add mcrxr instruction emulation,
|
||||
|
|
|
@ -26,7 +26,11 @@
|
|||
# define fits_uint32_p(im) 1
|
||||
# else
|
||||
# define gpr_save_area 144 /* r14~r31 = 18 * 8 */
|
||||
# if if ABI_ELFv2
|
||||
# define params_offset 32
|
||||
# else
|
||||
# define params_offset 48
|
||||
# endif
|
||||
# define can_sign_extend_int_p(im) \
|
||||
(((im) >= 0 && (long)(im) <= 0x7fffffffL) || \
|
||||
((im) < 0 && (long)(im) >= -0x80000000L))
|
||||
|
|
|
@ -279,7 +279,7 @@ _jit_arg_f(jit_state_t *_jit)
|
|||
if (_jitc->function->self.argf < 13)
|
||||
offset = _jitc->function->self.argf++;
|
||||
else {
|
||||
#if __WORDSIZE == 32
|
||||
#if __WORDSIZE == 32 || __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
offset = _jitc->function->self.size;
|
||||
#else
|
||||
offset = _jitc->function->self.size + 4;
|
||||
|
@ -502,7 +502,7 @@ _jit_pushargr_f(jit_state_t *_jit, jit_int32_t u)
|
|||
#endif
|
||||
}
|
||||
else {
|
||||
#if __WORDSIZE == 32
|
||||
#if __WORDSIZE == 32 || __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
jit_stxi_f(_jitc->function->call.size + params_offset, JIT_SP, u);
|
||||
#else
|
||||
jit_stxi_f(_jitc->function->call.size + params_offset + 4,
|
||||
|
@ -549,7 +549,7 @@ _jit_pushargi_f(jit_state_t *_jit, jit_float32_t u)
|
|||
#endif
|
||||
}
|
||||
else {
|
||||
#if __WORDSIZE == 32
|
||||
#if __WORDSIZE == 32 || __BYTE_ORDER == __LITTLE_ENDIAN
|
||||
jit_stxi_f(_jitc->function->call.size + params_offset, JIT_SP, regno);
|
||||
#else
|
||||
jit_stxi_f(_jitc->function->call.size + params_offset + 4,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue