1 TEXT strchr(SB), $0 2MOVW R1, 0(FP) 3 MOVB c+7(FP), R4 4 MOVW s+0(FP), R3 5 6 BEQ R4, l2 7 8/* 9 * char is not null 10 */ 11l1: 12 MOVB (R3), R1 13 ADDU $1, R3 14 BEQ R1, ret 15 BNE R1,R4, l1 16 JMP rm1 17 18/* 19 * char is null 20 * align to word 21 */ 22l2: 23 AND $3,R3, R1 24 BEQ R1, l3 25 MOVB (R3), R1 26 ADDU $1, R3 27 BNE R1, l2 28 JMP rm1 29 30l3: 31 MOVW $0xff000000, R6 32 MOVW $0x00ff0000, R7 33 34l4: 35 MOVW (R3), R5 36 ADDU $4, R3 37 AND R6,R5, R1 38 AND R7,R5, R2 39 BEQ R1, b0 40 AND $0xff00,R5, R1 41 BEQ R2, b1 42 AND $0xff,R5, R2 43 BEQ R1, b2 44 BNE R2, l4 45 46rm1: 47 ADDU $-1,R3, R1 48 JMP ret 49 50b2: 51 ADDU $-2,R3, R1 52 JMP ret 53 54b1: 55 ADDU $-3,R3, R1 56 JMP ret 57 58b0: 59 ADDU $-4,R3, R1 60 JMP ret 61 62ret: 63 RET 64