yann@1328
|
1 |
diff -ru eglibc-2_9_orig/sysdeps/powerpc/powerpc32/memset.S eglibc-2_9/sysdeps/powerpc/powerpc32/memset.S
|
yann@1328
|
2 |
--- eglibc-2_9_orig/sysdeps/powerpc/powerpc32/memset.S 2007-04-13 08:35:45.000000000 -0700
|
yann@1328
|
3 |
+++ eglibc-2_9/sysdeps/powerpc/powerpc32/memset.S 2009-05-06 16:52:04.000000000 -0700
|
yann@1328
|
4 |
@@ -112,11 +112,13 @@
|
yann@1328
|
5 |
clrrwi. rALIGN, rLEN, 5
|
yann@1328
|
6 |
mtcrf 0x01, rLEN /* 40th instruction from .align */
|
yann@1328
|
7 |
|
yann@1328
|
8 |
+#ifndef BROKEN_PPC_8xx_CPU15
|
yann@1328
|
9 |
/* Check if we can use the special case for clearing memory using dcbz.
|
yann@1328
|
10 |
This requires that we know the correct cache line size for this
|
yann@1328
|
11 |
processor. Getting the __cache_line_size may require establishing GOT
|
yann@1328
|
12 |
addressability, so branch out of line to set this up. */
|
yann@1328
|
13 |
beq cr1, L(checklinesize)
|
yann@1328
|
14 |
+#endif
|
yann@1328
|
15 |
|
yann@1328
|
16 |
/* Store blocks of 32-bytes (256-bits) starting on a 32-byte boundary.
|
yann@1328
|
17 |
Can't assume that rCHR is zero or that the cache line size is either
|
yann@1328
|
18 |
@@ -158,6 +160,7 @@
|
yann@1328
|
19 |
add rMEMP, rMEMP, rALIGN
|
yann@1328
|
20 |
b L(medium_tail2) /* 72nd instruction from .align */
|
yann@1328
|
21 |
|
yann@1328
|
22 |
+#ifndef BROKEN_PPC_8xx_CPU15
|
yann@1328
|
23 |
.align 5
|
yann@1328
|
24 |
nop
|
yann@1328
|
25 |
/* Clear cache lines of memory in 128-byte chunks.
|
yann@1328
|
26 |
@@ -191,6 +194,7 @@
|
yann@1328
|
27 |
bdnz L(zloop)
|
yann@1328
|
28 |
beqlr cr5
|
yann@1328
|
29 |
b L(medium_tail2)
|
yann@1328
|
30 |
+#endif /* ! BROKEN_PPC_8xx_CPU15 */
|
yann@1328
|
31 |
|
yann@1328
|
32 |
.align 5
|
yann@1328
|
33 |
L(small):
|
yann@1328
|
34 |
@@ -248,6 +252,7 @@
|
yann@1328
|
35 |
stw rCHR, -8(rMEMP)
|
yann@1328
|
36 |
blr
|
yann@1328
|
37 |
|
yann@1328
|
38 |
+#ifndef BROKEN_PPC_8xx_CPU15
|
yann@1328
|
39 |
L(checklinesize):
|
yann@1328
|
40 |
#ifdef SHARED
|
yann@1328
|
41 |
mflr rTMP
|
yann@1328
|
42 |
@@ -329,6 +334,7 @@
|
yann@1328
|
43 |
L(handletail32):
|
yann@1328
|
44 |
clrrwi. rALIGN, rLEN, 5
|
yann@1328
|
45 |
b L(nondcbz)
|
yann@1328
|
46 |
+#endif /* ! BROKEN_PPC_8xx_CPU15 */
|
yann@1328
|
47 |
|
yann@1328
|
48 |
END (BP_SYM (memset))
|
yann@1328
|
49 |
libc_hidden_builtin_def (memset)
|