Lines Matching refs:dst

59  *	copy bytes; exit with dst addr
60 * if src & dst aligned on word boundary but not long word boundary,
62 * if src & dst aligned on long word boundary
64 * if src & dst not aligned and length <= SHORTCHECK (SHORTCHECK=14)
65 * copy bytes; exit with dst addr
67 * if dst now on word boundary
70 * if dst now on half word boundary
72 * if dst on byte 1
74 * if dst on byte 3
77 * copy bytes; exit with dst addr
79 * move bytes until dst is on long word boundary
82 * finish_long: src/dst aligned on 8 bytes
84 * copy final 0-63 bytes; exit with dst addr
85 * } else { src/dst aligned; count > MED_MAX
86 * align dst on 64 byte boundary; for main data movement:
95 * } else { src/dst not aligned on 8 bytes
98 * move final 0-31 bytes; exit with dst addr
105 * align dst on 64 byte boundary; prefetch src data to L1 cache
107 * (only use block-init-store when src/dst on 8 byte boundaries.)
109 * move remaining bytes for unaligned cases. exit with dst addr.
189 andcc %g1, 7, %o3 ! %o3 has bytes till dst 8 bytes aligned
190 bz,a,pn %ncc, .dbbck ! if dst is not 8 byte aligned: align it
214 add %o4, %o0, %o4 ! increase difference between src & dst
270 7: ! dst aligning loop
275 add %o0, 1, %o0 ! advance dst
292 .mv_large_align8_copy: ! Src and dst share 8 byte alignment
293 ! align dst to 64 byte boundary
294 andcc %o0, 0x3f, %o3 ! %o3 == 0 means dst is 64 byte aligned
304 add %o0, 8, %o0 ! increment dst ptr
434 stb %o3, [%o0 + 1] ! don't know dst alignment
601 7: ! dst aligning loop
606 add %o0, 1, %o0 ! advance dst
642 add %o0, 64, %o0 ! increase dst ptr by 64
658 add %o0, 32, %o0 ! increase dst ptr by 32
671 add %o0, 16, %o0 ! increase dst ptr by 16
681 add %o0, 8, %o0 ! increase dst ptr by 8
728 add %o0, 32, %o0 ! increase dst ptr by 32
751 add %o0, 16, %o0 ! increase dst ptr by 16
766 add %o0, 8, %o0 ! increase dst ptr by 8
775 add %o0, 4, %o0 ! increase dst ptr by 4
783 .large_align8_copy: ! Src and dst share 8 byte alignment
784 ! align dst to 64 byte boundary
785 andcc %o0, 0x3f, %o3 ! %o3 == 0 means dst is 64 byte aligned
793 add %o0, 8, %o0 ! increment dst ptr
804 add %o0, 16, %o0 ! increment dst ptr
819 add %o0, 32, %o0 ! increment dst ptr
826 ! if ( (src ge dst) and (dst+len > src)) go to overlap case
827 ! if ( (src lt dst) and (src+len > dst)) go to overlap case
832 ! src+len > dst?
840 ! dst+len > src?
927 add %o0, 64, %o0 ! increase dst ptr by 64
997 andcc %o0, 0x3f, %o3 ! is dst 64-byte block aligned?
1016 add %o0, 8, %o0 ! increase dst ptr by 8