Lines Matching full:src

41 #define src a1  macro
47 * memcpy copies len bytes from src to dst and sets v0 to dst.
49 * - src and dst don't overlap
50 * - src is readable
54 * __copy_user copies up to len bytes from src to dst and sets a2 (len) to
56 * __copy_user assumes that src and dst don't overlap, and that the call is
59 * - src is readable (no exceptions when reading src)
78 * 2- src_entry <= src < AT, and
79 * 3- (dst - src) == (dst_entry - src_entry),
83 * (2) is met by incrementing src by the number of bytes copied
84 * (3) is met by not doing loads between a pair of increments of dst and src
281 * Note: dst & src may be unaligned, len may be 0
294 PREFS( 0, 0(src) )
298 PREFS( 0, 1*32(src) )
301 and t0, src, ADDRMASK
302 PREFS( 0, 2*32(src) )
314 * src and dst are aligned; need to compute rem
320 PREFS( 0, 3*32(src) )
325 LOAD(t0, UNIT(0)(src), .Ll_exc\@)
326 LOAD(t1, UNIT(1)(src), .Ll_exc_copy\@)
327 LOAD(t2, UNIT(2)(src), .Ll_exc_copy\@)
328 LOAD(t3, UNIT(3)(src), .Ll_exc_copy\@)
330 LOAD(t4, UNIT(4)(src), .Ll_exc_copy\@)
331 LOAD(t7, UNIT(5)(src), .Ll_exc_copy\@)
334 LOAD(t0, UNIT(6)(src), .Ll_exc_copy\@)
335 LOAD(t1, UNIT(7)(src), .Ll_exc_copy\@)
336 ADD src, src, 8*NBYTES
344 PREFS( 0, 8*32(src) )
360 LOAD( t0, UNIT(0)(src), .Ll_exc\@)
361 LOAD( t1, UNIT(1)(src), .Ll_exc_copy\@)
362 LOAD( t2, UNIT(2)(src), .Ll_exc_copy\@)
363 LOAD( t3, UNIT(3)(src), .Ll_exc_copy\@)
365 ADD src, src, 4*NBYTES
383 LOAD(t0, 0(src), .Ll_exc\@)
384 ADD src, src, NBYTES
394 * src and dst are aligned, need to copy rem bytes (rem < NBYTES)
409 LOAD(t0, 0(src), .Ll_exc\@)
418 * t0 = src & ADDRMASK
423 * Set match = (src and dst have same alignment)
426 LDFIRST(t3, FIRST(0)(src), .Ll_exc\@)
428 LDREST(t3, REST(0)(src), .Ll_exc_copy\@)
437 ADD src, src, t2
441 PREFS( 0, 3*32(src) )
450 * are to the same unit (unless src is aligned, but it's not).
453 LDFIRST(t0, FIRST(0)(src), .Ll_exc\@)
454 LDFIRST(t1, FIRST(1)(src), .Ll_exc_copy\@)
456 LDREST(t0, REST(0)(src), .Ll_exc_copy\@)
457 LDREST(t1, REST(1)(src), .Ll_exc_copy\@)
458 LDFIRST(t2, FIRST(2)(src), .Ll_exc_copy\@)
459 LDFIRST(t3, FIRST(3)(src), .Ll_exc_copy\@)
460 LDREST(t2, REST(2)(src), .Ll_exc_copy\@)
461 LDREST(t3, REST(3)(src), .Ll_exc_copy\@)
462 PREFS( 0, 9*32(src) ) # 0 is PREF_LOAD (not streamed)
463 ADD src, src, 4*NBYTES
484 LDFIRST(t0, FIRST(0)(src), .Ll_exc\@)
485 LDREST(t0, REST(0)(src), .Ll_exc_copy\@)
486 ADD src, src, NBYTES
502 LOADB(t0, N(src), .Ll_exc\@); \
515 LOADB(t0, NBYTES-2(src), .Ll_exc\@)
534 ADD src, src, 8
546 * Copy bytes from src until faulting load address (or until a
553 * Assumes src < THREAD_BUADDR($28)
559 LOADB(t1, 0(src), .Ll_exc\@)
560 ADD src, src, 1
564 bne src, t0, 1b
607 sltu t0, a1, t0 # dst + len <= src -> memcpy
608 sltu t1, a0, t1 # dst >= src + len -> memcpy
616 LEAF(__rmemcpy) /* a0=dst a1=src a2=len */
618 beqz t0, .Lr_end_bytes_up # src >= dst
621 ADD a1, a2 # src = src + len
660 LEAF(memcpy) /* a0=dst a1=src a2=len */