17 #include <linux/types.h>
18 #include <linux/string.h>
19 #include <linux/module.h>
38 #define BYTE_CUTOFF 20
44 #error "BYTE_CUTOFF is too small"
69 __insn_prefetch(out8);
75 __insn_prefetch(&out8[n - 1]);
93 v16 = __insn_intlb(c, c);
94 v32 = __insn_intlh(v16, v16);
97 #define CACHE_LINE_SIZE_IN_WORDS (CHIP_L2_LINE_SIZE() / 4)
114 #define MAX_PREFETCH 5
119 for (i = CACHE_LINE_SIZE_IN_WORDS;
120 i < ahead32; i += CACHE_LINE_SIZE_IN_WORDS)
121 __insn_prefetch(&out32[i]);
143 __insn_prefetch(&out32[ahead32]);
145 #if CACHE_LINE_SIZE_IN_WORDS % 4 != 0
146 #error "Unhandled CACHE_LINE_SIZE_IN_WORDS"
165 if (n32 <= ahead32) {
198 for (; to_align32 != 0; to_align32--) {
231 }
while (lines_left != 0);
246 }
while (--n32 != 0);