picolisp

Unnamed repository; edit this file to name it for gitweb.
git clone https://logand.com/git/picolisp.git/
Log | Files | Refs | README | LICENSE

commit fb3a1c2b7efd5ef5395fa5a790e112ab34f715cb
parent 3dab3d6331317c5a108eb954256cefcb8c49a780
Author: Alexander Burger <abu@software-lab.de>
Date:   Tue, 19 Apr 2011 11:36:16 +0200

ppc64 continued
Diffstat:
Msrc64/arch/ppc64.l | 18++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/src64/arch/ppc64.l b/src64/arch/ppc64.l @@ -1187,15 +1187,17 @@ (prinl) (prinl "# memb src cnt") (label "memb") - (prinst "lbz" 26 "0(4)") # First byte from 'src' - (prinst "extrdi" 6 3 8 56) # Get B + (prinst "mr" 6 4) # Get 'src' + (prinst "extrdi" 26 3 8 56) # and B (prinl "1:") - (prinst "subic." 5 5 1) # Decrement 'cnt' - (prinst "bltlr") # Return 'ne' if done - (prinst "cmpd" 26 6) # Found? - (prinst "beqlr") # Yes: Return 'eq' - (prinst "lbzu" 26 "1(4)") # Next byte - (prinst "b" "1b") + (prinst "subic." 5 5 1) # Decrement 'cnt' + (prinst "bltlr") # Return 'ne' if done + (prinst "lbz" 27 "0(6)") # Next byte from 'src' + (prinst "addi" 6 6 1) # Increment 'src' + (prinst "cmpd" 27 26) # Found? + (prinst "bne+" "1b") # No + (prinst "mr" 4 6) # Else return 'eq' + (prinst "blr") (prinl) (prinl "# div src") (label "div")