guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 163/437: Add missing jit_htonr to ppc backend.


From: Andy Wingo
Subject: [Guile-commits] 163/437: Add missing jit_htonr to ppc backend.
Date: Mon, 2 Jul 2018 05:14:09 -0400 (EDT)

wingo pushed a commit to branch lightning
in repository guile.

commit 374f58bb169d2ee0d20a518fe306425cef4eb20c
Author: pcpa <address@hidden>
Date:   Sat Dec 22 16:30:43 2012 -0200

    Add missing jit_htonr to ppc backend.
    
        * lib/jit_ppc-cpu.c, lib/jit_ppc.c: Implement logic for
        jit_htonr for big endian, so that ppc (big endian) pass the
        new clobber.tst test case.
---
 ChangeLog         | 6 ++++++
 lib/jit_ppc-cpu.c | 5 +++++
 lib/jit_ppc.c     | 1 +
 3 files changed, 12 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 299bc0f..b187bad 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2012-12-22 Paulo Andrade <address@hidden>
 
+       * lib/jit_ppc-cpu.c, lib/jit_ppc.c: Implement logic for
+       jit_htonr for big endian, so that ppc (big endian) pass the
+       new clobber.tst test case.
+
+2012-12-22 Paulo Andrade <address@hidden>
+
        * lib/jit_arm.c: Correct use of wrong argument offset
        variable in armv7l or float/double argument for varargs
        function in armv7hl.
diff --git a/lib/jit_ppc-cpu.c b/lib/jit_ppc-cpu.c
index 868fcc1..ee1509d 100644
--- a/lib/jit_ppc-cpu.c
+++ b/lib/jit_ppc-cpu.c
@@ -365,6 +365,11 @@ static jit_word_t 
_movi_p(jit_state_t*,jit_int32_t,jit_word_t);
 #  define extr_uc(r0,r1)               ANDI_(r0,r0,0xff)
 #  define extr_s(r0,r1)                        EXTSH(r0,r1)
 #  define extr_us(r0,r1)               ANDI_(r0,r0,0xffff)
+#  if __BYTE_ORDER == __BIG_ENDIAN
+#    define htonr(r0,r1)               movr(r0,r1)
+#  else
+#    error need htonr implementation
+#  endif
 #  define addr(r0,r1,r2)               ADD(r0,r1,r2)
 #  define addi(r0,r1,i0)               _addi(_jit,r0,r1,i0)
 static void _addi(jit_state_t*,jit_int32_t,jit_int32_t,jit_word_t);
diff --git a/lib/jit_ppc.c b/lib/jit_ppc.c
index ddb6ad0..736b4d8 100644
--- a/lib/jit_ppc.c
+++ b/lib/jit_ppc.c
@@ -744,6 +744,7 @@ _jit_emit(jit_state_t *_jit)
                case_rr(ext, _uc);
                case_rr(ext, _s);
                case_rr(ext, _us);
+               case_rr(hton,);
                case_rr(neg,);
                case_rr(com,);
                case_rr(mov,);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]