ref: 600bbfe4aaa9ad0f73d8d73eef1b7670e5f7d3a3
dir: /libkern/strchr-amd64.s/
TEXT strchr(SB), $0 MOVQ RARG, DI MOVB c+8(FP), AX CMPB AX, $0 JEQ l2 /**/ /* * char is not null */ l1: MOVB (DI), BX CMPB BX, $0 JEQ ret0 ADDQ $1, DI CMPB AX, BX JNE l1 MOVQ DI, AX SUBQ $1, AX RET /* * char is null */ l2: MOVQ $-1, CX CLD REPN; SCASB MOVQ DI, AX SUBQ $1, AX RET ret0: MOVQ $0, AX RET