/picolibc-3.5.0-3.4.0/newlib/libc/machine/i960/ |
D | strlen_ca.S | 96 subi 1,0,g3 # mask initially all ones 99 shro g7,g3,g3 # get mask for bytes needed from first word 100 notor g5,g3,g7 # set unneeded bytes to all ones 101 lda 0xff000000,g3 # byte extraction mask 103 shlo g7,g3,g3 # get mask for bytes needed from first word 104 notor g5,g3,g7 # set unneeded bytes to all ones 105 lda 0xff,g3 # byte extraction mask 130 and g6,g3,g14 # extract byte
|
D | memchr.S | 101 shlo 8,g1,g3 # broadcast the char to four bytes 102 or g1,g3,g3 103 shlo 16,g3,g5 104 or g3,g5,g3 108 scanbyte g3,g5 # check for byte with char
|
D | memcpy_ca.S | 121 notand g1,3,g3 # extract word addr of start of src 123 cmpo g3,g1 # check alignment of src 124 ld (g3),LSW # fetch word containing at least first byte 126 lda 4(g3),g3 # advance src word addr 156 ld (g3),MSW # fetch msw of operand for double shift 161 lda 4(g3),g3 # post-increment src word addr 165 ld (g3),MSW # pre-fetch msw of operand for double shift 173 ld (g3),LSW # pre-fetch next word of src 174 addo 4,g3,g3 # post-increment src addr 206 ld (g3),MSW # pre-fetch second half [all …]
|
D | strcmp_ca.S | 120 notand g1,3,g3 # extract word addr of start of src2 124 cmpo g3,g1 # check alignment of src2 125 ld (g3),SRC2 # fetch word with at least first byte of src2 138 lda 4(g3),g3 # pre-increment src2 addr 141 ld (g3),SRC2 # pre-fetch next word of src2 154 cmpo g3,g1 # check alignment of src2 155 ld (g3),SRC2 # fetch word with at least first byte of src2 176 lda 4(g3),g3 # pre-increment src2 addr 179 ld (g3),SRC2 # pre-fetch next word of src2 198 and SRC2,g1,g3 # extract next char of src2 [all …]
|
D | strncat_ca.S | 138 notand g1,3,g3 # extract word addr of start of src 142 cmpo g1,g3 # check alignment of source 143 ld (g3),LSW # fetch first word of source 145 lda 4(g3),g3 # post-increment src addr 153 ld (g3),LSW # pre-fetch next word of src 154 addo 4,g3,g3 # post-increment src addr 196 cmpo g1,g3 # check alignment of src 197 ld (g3),LSW # pre-fetch word with start of src 201 lda 4(g3),g3 # post-increment src word counter 206 ld (g3),MSW # fetch second word of src [all …]
|
D | strcspn.S | 69 lda (g0),g3 # copy string pointer 73 ldob (g3),g7 # fetch next character of string 85 addo 1,g3,g3 # check next character of string 89 subo g0,g3,g0 # compute string length
|
D | strncpy.S | 103 lda 0xff, g3 # byte extraction mask 119 and g3, g4, g14 # extract byte 137 and g3, g4, g14 # extract byte 139 mov g3, g7 # save mask 140 shlo 8, g3, g3 # shift mask to next byte position 142 subo 1, g7, g3 # mask to null pad after null byte 143 and g3, g4, g4 # null-out stuff after null byte
|
D | strcpy_ca.S | 145 notand g1,3,g3 # extract word addr of start of src 172 notand g1,3,g3 # extract word addr of start of src 176 cmpo g3,g1 # check alignment of src 177 ld (g3),LSW # fetch word containing at least first byte 179 lda 4(g3),g3 # advance src word addr 191 ld (g3),LSW # pre-fetch next word of src 192 addo 4,g3,g3 # post-increment src addr 239 ld (g3),MSW # fetch msw of operand for double shift 246 lda 4(g3),g3 # post-increment src word addr 249 ld (g3),MSW # pre-fetch msw of operand for double shift [all …]
|
D | memccpy.S | 95 cmpibge 0,g3,Lexit_char_not_found 97 addo g3,g1,g3 # compute beyond end of src 113 cmpo g3, g1 # is len <= 3 ? 121 cmpobe g1, g3, Lexit_char_not_found 130 cmpo g1,g3
|
D | strncmp_ca.S | 121 notand g1,3,g3 # extract word addr of start of src2 125 cmpo g3,g1 # check alignment of src2 126 ld (g3),SRC2 # fetch word with at least first byte of src2 142 lda 4(g3),g3 # pre-increment src2 addr 145 ld (g3),SRC2 # pre-fetch next word of src2 155 cmpo g3,g1 # check alignment of src2 156 ld (g3),SRC2 # fetch word with at least first byte of src2 179 lda 4(g3),g3 # pre-increment src2 addr 182 ld (g3),SRC2 # pre-fetch next word of src2 199 and SRC2,g1,g3 # extract next char of src2 [all …]
|
D | memccpy_ca.S | 94 cmpibge.f 0,g3,Lexit_char_not_found # Lexit if # of bytes to move is <= 0 112 cmpdeci 0,g3,g3 # is max_bytes exhausted? 144 cmpi g3,4 # less than four bytes to move? 152 subi 4,g3,g3 # decrease max_byte count by the 4 bytes moved 159 cmpi g3,4 # less than four bytes to move? 167 subi 4,g3,g3 # decrease max_byte count by the 4 bytes moved 180 subi 4,g3,g3 # decrease max_byte count by the 4 bytes moved 185 cmpi g3,4 # check for fewer than four bytes to move 192 cmpibe.f 0,g3,Lexit_char_not_found # Lexit if max_bytes is exhausted 202 subi 1,g3,g3 [all …]
|
D | memcpy.S | 110 addo g2,g1,g3 112 concmpo g3,g0 126 cmpo g3, g1 # is len <= 3 ? 147 subo 4, g3, g3 # pre-decrement src pointer 148 cmpo g1, g3 # is len <= 3? 149 ld (g3), g7 # fetch ahead next word of source
|
D | strncpy_ca.S | 111 notand g1,3,g3 # extract word addr of start of src 114 cmpo g3,g1 # check alignment of src 115 ld (g3),LSW # fetch word containing at least first byte 117 lda 4(g3),g3 # advance src word addr 133 ld (g3),LSW # pre-fetch next word of src 136 addo 4,g3,g3 # post-increment src addr 225 ld (g3),MSW # fetch msw of operand for double shift 235 lda 4(g3),g3 # post-increment src word addr 240 ld (g3),MSW # pre-fetch msw of operand for double shift 251 lda 4(g3),g3 # post-increment src word addr [all …]
|
D | memchr_ca.S | 99 shlo 8,g1,g3 # broadcast the char to four bytes 101 or g1,g3,g3 102 shlo 16,g3,g5 104 or g5,g3,g3 116 scanbyte g3,g4 # check for byte with char
|
D | memcmp_ca.S | 120 notand g1,3,g3 # extract word addr of start of src2 122 cmpo g3,g1 # check alignment of src2 128 ld (g3),SRC2 # fetch word with at least first byte of src2 139 lda 4(g3),g3 # pre-increment src2 addr 145 ld (g3),SRC2 # pre-fetch next word of src2 161 and SRC2,g1,g3 # extract next char of src2 163 cmpobne.f LSW,g3,.diff # check for equality 193 ld 4(g3),SRC1 # fetch second word of src2 200 lda 4(g3),g1 # set new src2 ptr
|
D | memset.S | 74 notand g0,7,g3 # test for non-aligned dest_ptr 80 cmpo g3,g0 # is dest longword aligned 81 lda 7(g3),g3 # bump dest_ptr to next longword boundary 86 cmpo g6,g3 # Have we reached longword boundary?
|
D | memcmp.S | 99 ld (g1), g3 # fetch word of source_2 102 cmpobe g5,g3,.Lwloop # branch if source words are equal 108 and g4,g3,g6
|
D | strcmp.S | 93 ld (g1), g3 # fetch word of source_2 97 cmpo g2,g3 # are the source words the same? 103 and g4,g3,g6
|
D | strrchr.S | 97 or g2,g5,g3 101 mov g3,g6 # prepare to return null pointer 108 scanbyte g3,g5 # check for byte with char 124 mov g3,g6 # save word of all char to short circuit search
|
D | strncmp.S | 97 ld (g1), g3 # fetch word of source_2 102 cmpobe g5,g3,.Lwloop # perform char comparator if words are unequal 108 and g4,g3,g6
|
D | strcpy.S | 122 lda 0xff,g3 # byte extraction mask 138 and g4,g3,g6 # extract byte 156 lda 0xff, g3 # byte extraction mask = 0xff; 168 and g3, g4, g14 # extract next char
|
D | strncat.S | 103 lda 0xff, g3 # byte extraction mask = 0xff; 105 and g7, g3, g14 # extract byte of last word of dest string 129 and g3, g7, g4 # extract character 143 and g3, g7, g4 # extract character
|
D | strlen.S | 88 lda 0xff,g3 # byte extraction mask 105 and g4,g3,g14 # extract byte
|
D | strchr.S | 91 or g2,g5,g3 98 scanbyte g3,g5 # check for byte with char
|
D | strchr_ca.S | 96 or g4,g2,g3 114 scanbyte g3,g4 # check for byte with char
|