strrchr.s

来自「avr的icc编译器的源代码」· S 代码 · 共 34 行

S
34
字号
.area	text
;
; int strrchr(char *s1, int c)
;
_strrchr::
      ; not-found shortcut on c > byte range.
	tst	R19	      ;
	brne	strrchrx0	;
	;
	mov	R30,R16
	mov	R31,R17
strrchr1:
	ld	R0,Z+ 	;
	tst	R0
	 brne	strrchr1	; loop to endofstring
	;
strrchr2:			; and search back
	ld	R0,-Z
	cp	R0,R18
	 breq	strrchrx1	; found ...
	cp	R30,R16
	cpc	R31,R17
	 brne	strrchr2	; loop ...
strrchrx0:			; not found
	ldi	R16,0
	ldi	R17,0		;
	ret
strrchrx1:			; found
	mov	R16,R30
	mov	R17,R31
	ret
;
;<eof; 2003-08-02 ja>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?