/[avr-libc]/avr-libc/libc/string/memchr.S
ViewVC logotype

Diff of /avr-libc/libc/string/memchr.S

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.6 by aesok, Thu Oct 20 20:44:03 2005 UTC revision 1.7 by aesok, Sat Nov 5 16:49:46 2005 UTC
# Line 58  Line 58 
58          .type   _U(memchr), @function          .type   _U(memchr), @function
59  _U(memchr):  _U(memchr):
60          X_movw  ZL, src_lo          X_movw  ZL, src_lo
61  .Lmemchr_loop:  .L_memchr_loop:
62          subi    len_lo, lo8(1)          subi    len_lo, lo8(1)
63          sbci    len_hi, hi8(1)          sbci    len_hi, hi8(1)
64          brcs    .Lmemchr_notfound          brcs    .L_memchr_notfound
65          ld      __tmp_reg__, Z+          ld      __tmp_reg__, Z+
66          cp      __tmp_reg__, val_lo          cp      __tmp_reg__, val_lo
67          brne    .Lmemchr_loop          brne    .L_memchr_loop
68          sbiw    ZL, 1           ; undo post-increment          sbiw    ZL, 1           ; undo post-increment
69          X_movw  ret_lo, ZL          X_movw  ret_lo, ZL
70          ret          ret
71  .Lmemchr_notfound:  .L_memchr_notfound:
72          clr     ret_lo          clr     ret_lo
73          clr     ret_hi          clr     ret_hi
74          ret          ret
75  .Lmemchr_end:  .L_memchr_end:
76          .size   _U(memchr), .Lmemchr_end - _U(memchr)          .size   _U(memchr), .L_memchr_end - _U(memchr)
77    
78  #endif /* not __DOXYGEN__ */  #endif /* not __DOXYGEN__ */

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26