/picolibc-latest/newlib/libc/machine/i960/ |
D | memset.S | 79 lda (g0),g6 # preserve dest_ptr for return 88 cmpo g6,g3 # Have we reached longword boundary? 89 stob g1,(g6) # store one byte of char 91 lda 1(g6),g6 # increment dest_ptr 103 stl g4,(g6) # Store longword of char 105 lda 8(g6),g6 # Increment dest_ptr 113 stob g1,(g6) # Store byte 115 lda 1(g6),g6 # Increment dest_ptr
|
D | memchr.S | 100 addo 4,g0,g6 # post-increment src word pointer 101 addo g2,g6,g2 # compute ending address from start and len 111 ld (g6),g4 # fetch next word of src 113 addo 4,g6,g6 # post-increment src word pointer 114 cmpobge g2,g6,Lsearch_for_word_with_char # branch if max_bytes > 3 123 cmpobe.f g6,g2,Lnot_found # quit if max_bytes exhausted 126 addo 1,g6,g6 # bump src byte ptr 129 subo 5,g6,g0 # back up the byte pointer
|
D | memcpy.S | 115 addo g2, g0, g6 131 cmpobe g6, g5, Lexit # quit if no more bytes to move 137 cmpobne g6, g5, Lcloop_a # quit if no more bytes to move 146 subo 4, g6, g6 # pre-decrement dest pointer 147 st g7, (g6) # store word to dest 153 cmpobe g6, g0, Lexit # quit if no more bytes to move 156 subo 1, g6, g6 158 stob g7, (g6) # store byte 159 cmpobne g6, g0, Lcloop.a # quit if no more bytes to move
|
D | memchr_ca.S | 99 and g0,3,g6 # extract byte offset of src 107 shlo 3,g6,g6 # get shift count for making mask for first word 110 shro g6,g5,g5 # get mask for bytes needed from first word 112 shlo g6,g5,g5 # get mask for bytes needed from first word 139 and g5,g7,g6 # extract byte 140 cmpo g1,g6 # is it char? 150 lda 0xf0f0f0f0,g6 # make first comparison mask for char=-1 case. 151 or g6,g5,g6 152 and g4,g6,g4 # make unimportant bytes of first word 0x0f
|
D | memccpy.S | 103 shlo 8,g2,g6 104 or g2,g6,g6 105 shlo 16,g6,g4 106 or g6,g4,g6 # word of char 118 scanbyte g6, g7 # check for char
|
D | strchr_ca.S | 102 and g0,3,g6 # extract byte offset of src 104 shlo 3,g6,g6 # get shift count for making mask for first word 108 shro g6,g5,g5 # get mask for bytes needed from first word 110 shlo g6,g5,g5 # get mask for bytes needed from first word 137 and g5,g7,g6 # extract byte 138 cmpo g1,g6 # is it char? 144 cmpobne.t 0,g6,Lsearch_for_char.a # quit if null comes before char
|
D | strlen_ca.S | 117 movl g4,g6 # copy both words 128 lda (g7),g6 # move odd word to search word 132 and g6,g3,g14 # extract byte 136 shlo 8,g6,g6 # shift word to position next byte 138 shro 8,g6,g6 # shift word to position next byte
|
D | strcspn.S | 77 ldob (g1),g6 # fetch first character of charset 80 cmpo g6,g7 # is charset char same as string char? 84 cmpo g6,0 # is charset exhausted? 85 lda (g5),g6
|
D | strpbrk.S | 82 ldob (g1),g6 # fetch first character of brkset 85 cmpo g6,g7 # is brkset char equal to string char? 89 cmpo g6,0 # is brkset_string exhausted? 90 lda (g5),g6
|
D | strrchr.S | 103 mov g3,g6 # prepare to return null pointer 113 mov g5,g6 # save word that has char in it (at least once) 126 mov g3,g6 # save word of all char to short circuit search 130 rotate 8,g6,g6 # position next highest byte 131 and g7,g6,g5 # extract byte
|
D | strcmp.S | 105 and g4,g3,g6 106 cmpobne g5,g6,.diff # if they differ, go return 1 or -1 107 cmpo 0,g6 # they are the same. Are they null?
|
D | strcpy.S | 140 and g4,g3,g6 # extract byte 141 cmpo 0,g6 # is it null? 157 mov g14,g6 # preserve return address 177 bx (g6) # g0 = dest string address; g14 = 0
|
D | strncpy.S | 106 addo g1, g2, g6 110 cmpo g6, g1 # max_bytes < 4 ? 147 subo 8,g2,g6 # adjust max_byte counter 150 cmpo g5, g6 # max_bytes < 4 ?
|
D | strchr.S | 117 and g5,g7,g6 # extract byte 118 cmpo g1,g6 # is it char? 122 cmpobne 0,g6,Lsearch_for_char.a # quit if null comes before char
|
D | strncmp.S | 110 and g4,g3,g6 111 cmpobne g7,g6,.diff # if different, return -1 or 1 112 cmpo 0,g6 # they are equal. are they null?
|
D | strncat.S | 96 mov g14,g6 136 bx (g6) # g0 = dest string address; g14 = 0 152 bx (g6) # g0 = dest string address; g14 = 0 155 bx (g6)
|
D | memcmp.S | 110 and g4,g3,g6 111 cmpobne g7,g6,.diff # branch if they are different
|
D | strcpy_ca.S | 105 #define MSW g6 108 #define LSW g6 247 eshro g1,g6,g2 # extract 4 bytes of src 273 eshro g14,g6,g14 # extract four bytes 276 eshro g1,g6,g14 # extract four bytes
|
D | memcmp_ca.S | 93 #define SRC1 g6 98 #define SRC2 g6 200 eshro MSW,g6,SRC2 # extract word of src2
|
D | strncpy_ca.S | 95 #define MSW g6 98 #define LSW g6 215 movl 0,g6 # blank out remainder of input buffer 252 eshro g14,g6,g1 # extract 4 bytes of src 280 eshro g14,g6,g5 # extract four bytes
|
D | memccpy_ca.S | 77 #define MSW g6 80 #define LSW g6 163 eshro g14,g6,g1 # extract 4 bytes of src 233 eshro g14,g6,g4 # extract four bytes
|
D | memcpy_ca.S | 96 #define MSW g6 99 #define LSW g6 164 eshro g14,g6,g1 # extract 4 bytes of src 218 eshro g14,g6,g5 # extract four bytes 289 eshro g14,g6,g1 # extract 4 bytes of src 339 eshro g14,g6,g5 # extract four bytes
|
D | strcmp_ca.S | 94 #define SRC1 g6 99 #define SRC2 g6 235 eshro MSW,g6,SRC2 # extract word of src2
|
D | strncmp_ca.S | 94 #define SRC1 g6 99 #define SRC2 g6 242 eshro MSW,g6,SRC2 # extract word of src2
|
D | strncat_ca.S | 95 #define MSW g6 98 #define LSW g6 212 eshro g14,g6,g5 # extract four bytes 282 eshro g14,g6,g1 # extract 4 bytes of src
|