]> git.sur5r.net Git - cc65/blobdiff - libsrc/runtime/land.s
few 6502 and some 65SC02 optimizations
[cc65] / libsrc / runtime / land.s
index 506c071a4f18e98db034054b5763675accf73614..6ea4e5bcb29fda011f072ace64778ac03b0b90bb 100644 (file)
@@ -1,5 +1,6 @@
 ;
 ; Ullrich von Bassewitz, 06.08.1998
+; Christian Krueger, 11-Mar-2017, added 65SC02 optimization
 ;
 ; CC65 runtime: and on longs
 ;
@@ -8,17 +9,28 @@
         .import         addysp1
         .importzp       sp, sreg, tmp1
 
+        .macpack        cpu
                                    
 tosand0ax:
+.if (.cpu .bitand ::CPU_ISET_65SC02)
+        stz     sreg
+        stz     sreg+1
+.else
         ldy     #$00
         sty     sreg
         sty     sreg+1
+.endif  
 
 tosandeax:
+.if (.cpu .bitand ::CPU_ISET_65SC02)
+        and     (sp)            ; byte 0
+        ldy     #1
+.else
         ldy     #0
         and     (sp),y          ; byte 0
-        sta     tmp1
         iny
+.endif        
+        sta     tmp1
         txa
         and     (sp),y          ; byte 1
         tax