Lines Matching refs:source
56 ; Rules are: - neither source nor destination can cross a page.
60 ; To do the copy, we build a 128 DBAT for both the source and sink. If both are the same, only one
95 add r12,r4,r0 ; Point to last byte of source
108 rlwimi r12,r9,0,15,31 ; Set source lower DBAT value
110 rlwimi r8,r12,0,0,14 ; Set source upper DBAT value
111 cmplw cr1,r11,r12 ; See if sink and source are same block
120 mtdbatl 1,r12 ; Set source lower DBAT
121 mtdbatu 1,r8 ; Set source upper DBAT
132 mtdbatu 1,r0 ; Clear source upper DBAT
152 ; Also note that you probably will not be happy if either the sink or source spans across the
202 srdi r2,r3,31 ; Get a 1 if source is in I/O memory
207 cmpldi cr0,r2,1 ; Is source in I/O memory?
211 cror cr7_eq,cr0_eq,cr7_eq ; See if either source or sink is in I/O area
282 ; r6 = source
283 ; r12 = (dest - source)
287 cmplw r12,r5 ; must move reverse if (dest-source)<length
316 mr r6,r3 ; Set source (must preserve r3 for memcopy return)
339 mr r6,r3 ; Set source (must preserve r3 for memcopy return)
363 mr r6,r4 ; Set source
382 ; r6 = source
383 ; r12 = (dest - source)
387 cmplw cr1,r12,r5 ; must move reverse if (dest-source)<length
389 dcbt 0,r6 ; start to touch in source
397 ; NOTE: we never do an unaligned access if the source and destination are "relatively"
401 ; r6 = source
549 ; NOTE: we never do an unaligned access if the source and destination are "relatively"
554 ; r6 = source
560 add r6,r5,r6 ; Point past the last source byte
564 dcbt r12,r6 ; Touch in the last line of source
712 // r6 = source (32 or 64-bit ptr)
713 // r12 = (dest - source), reverse move required if (dest-source)<length
720 dcbt 0,r6 // touch in 1st block of source
722 subc r7,r12,r7 // set Carry if (dest-source)>=length, in mode-independent way
733 // NOTE: we never do an unaligned access if the source and destination are "relatively"
737 // r6 = source
784 ; We must check for (source-dest)<128 in a mode-independent way. If within 128 bytes,
787 sub r8,r6,r4 // r8 <- (source - dest)
789 cror noncache,cr0_eq,noncache // turn on "noncache" flag if (source-dest)<128
878 // r6 = source
881 // r12 = (dest-source), used to test relative alignment
900 add r6,r6,r5 // point to (end+1) of source and dest
911 // r6 = source
916 add r6,r6,r5 // point to (end+1) of source and dest
923 beq c64rd2 // source already doubleword aligned
926 c64rd1: // copy bytes until source doublword aligned