Annotation of lucent/sys/src/libc/68020/memccpy.s, revision 1.1

1.1     ! root        1:        TEXT    memccpy(SB),$0
        !             2:        MOVL    n+12(FP),R0
        !             3:        BEQ     ret
        !             4:        MOVL    s1+0(FP),A2
        !             5:        MOVL    s2+4(FP),A1
        !             6:        MOVL    c+8(FP),R1
        !             7:        BEQ     l2
        !             8: 
        !             9: /*
        !            10:  * general case
        !            11:  */
        !            12: l1:    MOVB    (A1)+,R2
        !            13:        MOVB    R2,(A2)+
        !            14:        CMPB    R2,R1
        !            15:        BEQ     eq
        !            16:        SUBL    $1,R0
        !            17:        BNE     l1
        !            18:        RTS
        !            19: 
        !            20: /*
        !            21:  * special case for null character
        !            22:  */
        !            23: l2:    MOVB    (A1)+,(A2)+
        !            24:        BEQ     eq
        !            25:        SUBL    $1,R0
        !            26:        BNE     l2
        !            27:        RTS
        !            28: 
        !            29: eq:    MOVL    A2,R0
        !            30: ret:   RTS

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.