ref: 32b5b2f42db04ed84197392cebf2930b2208ae20
dir: /sys/src/libc/386/memcmp.s/
TEXT memcmp(SB),$0 MOVL n+8(FP), BX CMPL BX, $0 JEQ none MOVL p1+0(FP), DI MOVL p2+4(FP), SI CLD /* * first by longs */ MOVL BX, CX SHRL $2, CX REP; CMPSL JNE found /* * then by bytes */ ANDL $3, BX MOVL BX, CX REP; CMPSB JNE found1 none: MOVL $0, AX RET /* * if long found, * back up and look by bytes */ found: MOVL $4, CX SUBL CX, DI SUBL CX, SI REP; CMPSB found1: JLS lt MOVL $-1, AX RET lt: MOVL $1, AX RET