/picolibc-latest/newlib/libc/machine/i960/ |
D | strlen_ca.S | 98 subi 1,0,g3 # mask initially all ones 101 shro g7,g3,g3 # get mask for bytes needed from first word 102 notor g5,g3,g7 # set unneeded bytes to all ones 103 lda 0xff000000,g3 # byte extraction mask 105 shlo g7,g3,g3 # get mask for bytes needed from first word 106 notor g5,g3,g7 # set unneeded bytes to all ones 107 lda 0xff,g3 # byte extraction mask 132 and g6,g3,g14 # extract byte
|
D | memcpy_ca.S | 123 notand g1,3,g3 # extract word addr of start of src 125 cmpo g3,g1 # check alignment of src 126 ld (g3),LSW # fetch word containing at least first byte 128 lda 4(g3),g3 # advance src word addr 158 ld (g3),MSW # fetch msw of operand for double shift 163 lda 4(g3),g3 # post-increment src word addr 167 ld (g3),MSW # pre-fetch msw of operand for double shift 175 ld (g3),LSW # pre-fetch next word of src 176 addo 4,g3,g3 # post-increment src addr 208 ld (g3),MSW # pre-fetch second half [all …]
|
D | memchr.S | 103 shlo 8,g1,g3 # broadcast the char to four bytes 104 or g1,g3,g3 105 shlo 16,g3,g5 106 or g3,g5,g3 110 scanbyte g3,g5 # check for byte with char
|
D | strcmp_ca.S | 122 notand g1,3,g3 # extract word addr of start of src2 126 cmpo g3,g1 # check alignment of src2 127 ld (g3),SRC2 # fetch word with at least first byte of src2 140 lda 4(g3),g3 # pre-increment src2 addr 143 ld (g3),SRC2 # pre-fetch next word of src2 156 cmpo g3,g1 # check alignment of src2 157 ld (g3),SRC2 # fetch word with at least first byte of src2 178 lda 4(g3),g3 # pre-increment src2 addr 181 ld (g3),SRC2 # pre-fetch next word of src2 200 and SRC2,g1,g3 # extract next char of src2 [all …]
|
D | strncat_ca.S | 140 notand g1,3,g3 # extract word addr of start of src 144 cmpo g1,g3 # check alignment of source 145 ld (g3),LSW # fetch first word of source 147 lda 4(g3),g3 # post-increment src addr 155 ld (g3),LSW # pre-fetch next word of src 156 addo 4,g3,g3 # post-increment src addr 198 cmpo g1,g3 # check alignment of src 199 ld (g3),LSW # pre-fetch word with start of src 203 lda 4(g3),g3 # post-increment src word counter 208 ld (g3),MSW # fetch second word of src [all …]
|
D | strcpy_ca.S | 147 notand g1,3,g3 # extract word addr of start of src 174 notand g1,3,g3 # extract word addr of start of src 178 cmpo g3,g1 # check alignment of src 179 ld (g3),LSW # fetch word containing at least first byte 181 lda 4(g3),g3 # advance src word addr 193 ld (g3),LSW # pre-fetch next word of src 194 addo 4,g3,g3 # post-increment src addr 241 ld (g3),MSW # fetch msw of operand for double shift 248 lda 4(g3),g3 # post-increment src word addr 251 ld (g3),MSW # pre-fetch msw of operand for double shift [all …]
|
D | strncpy.S | 105 lda 0xff, g3 # byte extraction mask 121 and g3, g4, g14 # extract byte 139 and g3, g4, g14 # extract byte 141 mov g3, g7 # save mask 142 shlo 8, g3, g3 # shift mask to next byte position 144 subo 1, g7, g3 # mask to null pad after null byte 145 and g3, g4, g4 # null-out stuff after null byte
|
D | strcspn.S | 71 lda (g0),g3 # copy string pointer 75 ldob (g3),g7 # fetch next character of string 87 addo 1,g3,g3 # check next character of string 91 subo g0,g3,g0 # compute string length
|
D | strncmp_ca.S | 123 notand g1,3,g3 # extract word addr of start of src2 127 cmpo g3,g1 # check alignment of src2 128 ld (g3),SRC2 # fetch word with at least first byte of src2 144 lda 4(g3),g3 # pre-increment src2 addr 147 ld (g3),SRC2 # pre-fetch next word of src2 157 cmpo g3,g1 # check alignment of src2 158 ld (g3),SRC2 # fetch word with at least first byte of src2 181 lda 4(g3),g3 # pre-increment src2 addr 184 ld (g3),SRC2 # pre-fetch next word of src2 201 and SRC2,g1,g3 # extract next char of src2 [all …]
|
D | memccpy.S | 97 cmpibge 0,g3,Lexit_char_not_found 99 addo g3,g1,g3 # compute beyond end of src 115 cmpo g3, g1 # is len <= 3 ? 123 cmpobe g1, g3, Lexit_char_not_found 132 cmpo g1,g3
|
D | memccpy_ca.S | 96 cmpibge.f 0,g3,Lexit_char_not_found # Lexit if # of bytes to move is <= 0 114 cmpdeci 0,g3,g3 # is max_bytes exhausted? 146 cmpi g3,4 # less than four bytes to move? 154 subi 4,g3,g3 # decrease max_byte count by the 4 bytes moved 161 cmpi g3,4 # less than four bytes to move? 169 subi 4,g3,g3 # decrease max_byte count by the 4 bytes moved 182 subi 4,g3,g3 # decrease max_byte count by the 4 bytes moved 187 cmpi g3,4 # check for fewer than four bytes to move 194 cmpibe.f 0,g3,Lexit_char_not_found # Lexit if max_bytes is exhausted 204 subi 1,g3,g3 [all …]
|
D | memcpy.S | 112 addo g2,g1,g3 114 concmpo g3,g0 128 cmpo g3, g1 # is len <= 3 ? 149 subo 4, g3, g3 # pre-decrement src pointer 150 cmpo g1, g3 # is len <= 3? 151 ld (g3), g7 # fetch ahead next word of source
|
D | strncpy_ca.S | 113 notand g1,3,g3 # extract word addr of start of src 116 cmpo g3,g1 # check alignment of src 117 ld (g3),LSW # fetch word containing at least first byte 119 lda 4(g3),g3 # advance src word addr 135 ld (g3),LSW # pre-fetch next word of src 138 addo 4,g3,g3 # post-increment src addr 227 ld (g3),MSW # fetch msw of operand for double shift 237 lda 4(g3),g3 # post-increment src word addr 242 ld (g3),MSW # pre-fetch msw of operand for double shift 253 lda 4(g3),g3 # post-increment src word addr [all …]
|
D | memchr_ca.S | 101 shlo 8,g1,g3 # broadcast the char to four bytes 103 or g1,g3,g3 104 shlo 16,g3,g5 106 or g5,g3,g3 118 scanbyte g3,g4 # check for byte with char
|
D | memcmp_ca.S | 122 notand g1,3,g3 # extract word addr of start of src2 124 cmpo g3,g1 # check alignment of src2 130 ld (g3),SRC2 # fetch word with at least first byte of src2 141 lda 4(g3),g3 # pre-increment src2 addr 147 ld (g3),SRC2 # pre-fetch next word of src2 163 and SRC2,g1,g3 # extract next char of src2 165 cmpobne.f LSW,g3,.diff # check for equality 195 ld 4(g3),SRC1 # fetch second word of src2 202 lda 4(g3),g1 # set new src2 ptr
|
D | memset.S | 76 notand g0,7,g3 # test for non-aligned dest_ptr 82 cmpo g3,g0 # is dest longword aligned 83 lda 7(g3),g3 # bump dest_ptr to next longword boundary 88 cmpo g6,g3 # Have we reached longword boundary?
|
D | strcmp.S | 95 ld (g1), g3 # fetch word of source_2 99 cmpo g2,g3 # are the source words the same? 105 and g4,g3,g6
|
D | memcmp.S | 101 ld (g1), g3 # fetch word of source_2 104 cmpobe g5,g3,.Lwloop # branch if source words are equal 110 and g4,g3,g6
|
D | strrchr.S | 99 or g2,g5,g3 103 mov g3,g6 # prepare to return null pointer 110 scanbyte g3,g5 # check for byte with char 126 mov g3,g6 # save word of all char to short circuit search
|
D | strcpy.S | 124 lda 0xff,g3 # byte extraction mask 140 and g4,g3,g6 # extract byte 158 lda 0xff, g3 # byte extraction mask = 0xff; 170 and g3, g4, g14 # extract next char
|
D | strncmp.S | 99 ld (g1), g3 # fetch word of source_2 104 cmpobe g5,g3,.Lwloop # perform char comparator if words are unequal 110 and g4,g3,g6
|
D | strncat.S | 105 lda 0xff, g3 # byte extraction mask = 0xff; 107 and g7, g3, g14 # extract byte of last word of dest string 131 and g3, g7, g4 # extract character 145 and g3, g7, g4 # extract character
|
D | strlen.S | 90 lda 0xff,g3 # byte extraction mask 107 and g4,g3,g14 # extract byte
|
D | strchr.S | 93 or g2,g5,g3 100 scanbyte g3,g5 # check for byte with char
|
D | strchr_ca.S | 98 or g4,g2,g3 116 scanbyte g3,g4 # check for byte with char
|