Minor optimization due to unrolled loop not using b anymore
authorNick Downing <nick@ndcode.org>
Thu, 13 Jun 2019 16:12:01 +0000 (02:12 +1000)
committerNick Downing <nick@ndcode.org>
Thu, 13 Jun 2019 16:12:01 +0000 (02:12 +1000)
sm.asm

diff --git a/sm.asm b/sm.asm
index 8d6b692..6297e60 100644 (file)
--- a/sm.asm
+++ b/sm.asm
@@ -930,13 +930,12 @@ div_hl_de_signed:
        call    div1
        ld      b,a
        ld      a,c
-       ld      c,b
        call    div
        inc     a
        jr      c,1$
        sbc     hl,de
 1$:    inc     hl                      ; get into range -divisor+1..0
-       ld      d,c
+       ld      d,b
        ld      e,a
        pop     bc
        ret
@@ -945,12 +944,11 @@ div_hl_de_signed:
        call    divn0
        ld      b,a
        ld      a,c
-       ld      c,b
        call    divn
        jr      nc,3$
        add     hl,de
 3$:    inc     hl                      ; get into range divisor+1..0
-       ld      d,c
+       ld      d,b
        ld      e,a
        pop     bc
        ret
@@ -965,12 +963,11 @@ div_hl_de_signed:
        call    divn1
        ld      b,a
        ld      a,c
-       ld      c,b
        call    divn
        inc     a
        jr      c,5$
        sbc     hl,de
-5$:    ld      d,c
+5$:    ld      d,b
        ld      e,a
        pop     bc
        ret
@@ -985,11 +982,10 @@ divu:     ; positive dividend, positive divisor
        call    div0
        ld      b,a
        ld      a,c
-       ld      c,b
        call    div
        jr      nc,1$
        add     hl,de
-1$:    ld      d,c
+1$:    ld      d,b
        ld      e,a
        pop     bc
        ret