binutils/binutils: do not fwd declare struct stat (2.22).
For canadian cross to host i686-mingw32 fwd declaring
struct stat is not possible.
Instead #include <sys/stat.h>
Signed-off-by: Titus von Boxberg <titus@v9g.de>
Message-Id: <417a15d4277913841ddd.1353100974@tschetwerikow.boxberg.lan>
Patchwork-Id: 199733
1 2009-07-27 Aurelien Jarno <aurelien@aurel32.net>
3 * sysdeps/alpha/memchr.S: Use prefetch load.
4 * sysdeps/alpha/alphaev6/memchr.S: Likewise.
6 diff -durN glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/alpha/alphaev6/memchr.S glibc-2.10.1/glibc-ports-2.10.1/sysdeps/alpha/alphaev6/memchr.S
7 --- glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/alpha/alphaev6/memchr.S 2009-05-16 10:36:20.000000000 +0200
8 +++ glibc-2.10.1/glibc-ports-2.10.1/sysdeps/alpha/alphaev6/memchr.S 2009-11-13 00:51:15.000000000 +0100
10 cmpbge $31, $1, $2 # E :
11 bne $2, $found_it # U :
12 # At least one byte left to process.
14 + ldq $31, 8($0) # L :
15 subq $5, 1, $18 # E : U L U L
19 and $4, 8, $4 # E : odd number of quads?
20 bne $4, $odd_quad_count # U :
21 # At least three quads remain to be accessed
22 - mov $1, $4 # E : L U L U : move prefetched value to correct reg
23 + nop # E : L U L U : move prefetched value to correct reg
27 - ldq $1, 8($0) # L : prefetch $1
28 - xor $17, $4, $2 # E :
29 - cmpbge $31, $2, $2 # E :
30 - bne $2, $found_it # U : U L U L
31 + ldq $1, 0($0) # L : load quad
32 + xor $17, $1, $2 # E :
33 + ldq $31, 8($0) # L : prefetch next quad
34 + cmpbge $31, $2, $2 # E : U L U L
36 + bne $2, $found_it # U :
43 + ldq $1, 0($0) # L : load quad
45 - ldq $4, 8($0) # L : prefetch $4
46 + ldq $31, 8($0) # L : prefetch $4
47 cmpbge $31, $2, $2 # E :
48 - addq $0, 8, $6 # E :
50 + addq $0, 8, $6 # E :
51 bne $2, $found_it # U :
52 cmpult $6, $18, $6 # E :
56 bne $6, $unrolled_loop # U :
57 - mov $4, $1 # E : move prefetched value into $1
61 -$final: subq $5, $0, $18 # E : $18 <- number of bytes left to do
64 +$final: ldq $1, 0($0) # L : load last quad
65 + subq $5, $0, $18 # E : $18 <- number of bytes left to do
67 bne $18, $last_quad # U :
69 diff -durN glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/alpha/memchr.S glibc-2.10.1/glibc-ports-2.10.1/sysdeps/alpha/memchr.S
70 --- glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/alpha/memchr.S 2009-05-16 10:36:20.000000000 +0200
71 +++ glibc-2.10.1/glibc-ports-2.10.1/sysdeps/alpha/memchr.S 2009-11-13 00:51:15.000000000 +0100
74 # At least one byte left to process.
76 - ldq t0, 8(v0) # e0 :
77 + ldq zero, 8(v0) # e0 : prefetch next quad
78 subq t4, 1, a2 # .. e1 :
83 # At least three quads remain to be accessed
85 - mov t0, t3 # e0 : move prefetched value to correct reg
89 - ldq t0, 8(v0) #-e0 : prefetch t0
90 - xor a1, t3, t1 # .. e1 :
91 - cmpbge zero, t1, t1 # e0 :
92 - bne t1, $found_it # .. e1 :
93 + ldq t0, 0(v0) # e0 : load quad
94 + xor a1, t0, t1 # .. e1 :
95 + ldq zero, 8(v0) # e0 : prefetch next quad
96 + cmpbge zero, t1, t1 # .. e1:
97 + bne t1, $found_it # e0 :
99 - addq v0, 8, v0 #-e0 :
100 + addq v0, 8, v0 # e1 :
102 + ldq t0, 0(v0) # e0 : load quad
103 xor a1, t0, t1 # .. e1 :
104 - ldq t3, 8(v0) # e0 : prefetch t3
105 + ldq zero, 8(v0) # e0 : prefetch next quad
106 cmpbge zero, t1, t1 # .. e1 :
107 addq v0, 8, t5 #-e0 :
108 bne t1, $found_it # .. e1 :
110 addq v0, 8, v0 # .. e1 :
111 bne t5, $unrolled_loop #-e1 :
113 - mov t3, t0 # e0 : move prefetched value into t0
114 -$final: subq t4, v0, a2 # .. e1 : a2 <- number of bytes left to do
115 +$final: ldq t0, 0(v0) # e0 : load last quad
116 + subq t4, v0, a2 # .. e1 : a2 <- number of bytes left to do
117 bne a2, $last_quad # e1 :
120 diff -durN glibc-2.10.1.orig/ports/sysdeps/alpha/alphaev6/memchr.S glibc-2.10.1/ports/sysdeps/alpha/alphaev6/memchr.S
121 diff -durN glibc-2.10.1.orig/ports/sysdeps/alpha/memchr.S glibc-2.10.1/ports/sysdeps/alpha/memchr.S