Lines Matching full:word
19 * a0 = unaligned address of the last *word* written
54 t0 == the first destination word for masking back in
55 t1 == the first source word. */
57 /* Create the 1st output word and detect 0's in the 1st input word. */
59 mskqh t2, a1, t2 # U : detection in the src word (stall)
63 mskql t0, a1, t0 # U : assemble the first output word
69 t0 == the first destination word for masking back in
70 t1 == a source word not containing a null. */
84 /* Take care of the final (partial) word store.
86 t1 == the source word containing the null
91 /* For the sake of the cache, don't read a destination word
96 /* We're doing a partial word store and so need to combine
128 /* We are co-aligned; take care of a partial first word. */
129 ldq_u t1, 0(a1) # L : load first src word
130 and a0, 7, t0 # E : take care not to load a word ...
147 full source word. We can still find a zero at the end of it
151 t0 == the first dest word, for masking back in, if needed else 0
152 t1 == the low bits of the first source word
153 t6 == bytemask that is -1 in dest word bytes */
178 stq_u t1, 0(a0) # L : store first output word
180 extql t2, a1, t0 # U : position ho-bits of lo word
181 ldq_u t2, 8(a1) # U : read next high-order source word
196 t0 == the shifted high-order bits from the previous source word
197 t2 == the unshifted current source word
203 extqh t2, a1, t1 # U : extract high bits for current word
208 or t0, t1, t1 # E : current dst word now complete
209 ldq_u t2, 0(a1) # L : Latency=3 load high word for next time
210 stq_u t1, -8(a0) # L : save the current word (stall)
213 cmpbge zero, t2, t8 # E : test new word for eos
218 /* We've found a zero somewhere in the source word we just read.
220 word to write out, and if it resides in the upper half, we
221 have one full and one partial word left to write out.
224 t0 == the shifted high-order bits from the previous source word
225 t2 == the unshifted current source word. */
228 or t0, t1, t1 # E : first (partial) source word complete (stall)
238 /* Take care of a final (probably partial) result word.
240 t1 == assembled source word
245 and t12, 0x80, t6 # E : avoid dest word load if we can (stall)
267 ldq_u t1, 0(a1) # L : load first source word
270 /* Conditionally load the first destination word and a bytemask
296 /* At this point we've found a zero in the first partial word of
299 that we'll need at least one byte of that original dest word.) */
309 zapnot t2, t8, t2 # U : prepare source word; mirror changes (stall)