Lines 24-37
Link Here
|
24 |
.text |
24 |
.text |
25 |
ENTRY(memcpy) |
25 |
ENTRY(memcpy) |
26 |
.type memcpy, @gnu_indirect_function |
26 |
.type memcpy, @gnu_indirect_function |
27 |
# ifdef SHARED |
27 |
# ifdef PIC |
28 |
SETUP_PIC_REG_LEAF(o3, o5) |
28 |
SETUP_PIC_REG_LEAF(o3, o5) |
29 |
# endif |
29 |
# endif |
30 |
set HWCAP_SPARC_CRYPTO, %o1 |
30 |
set HWCAP_SPARC_CRYPTO, %o1 |
31 |
andcc %o0, %o1, %g0 |
31 |
andcc %o0, %o1, %g0 |
32 |
be 1f |
32 |
be 1f |
33 |
andcc %o0, HWCAP_SPARC_N2, %g0 |
33 |
andcc %o0, HWCAP_SPARC_N2, %g0 |
34 |
# ifdef SHARED |
34 |
# ifdef PIC |
35 |
sethi %gdop_hix22(__memcpy_niagara4), %o1 |
35 |
sethi %gdop_hix22(__memcpy_niagara4), %o1 |
36 |
xor %o1, %gdop_lox10(__memcpy_niagara4), %o1 |
36 |
xor %o1, %gdop_lox10(__memcpy_niagara4), %o1 |
37 |
# else |
37 |
# else |
Lines 41-47
Link Here
|
41 |
nop |
41 |
nop |
42 |
1: be 1f |
42 |
1: be 1f |
43 |
andcc %o0, HWCAP_SPARC_BLKINIT, %g0 |
43 |
andcc %o0, HWCAP_SPARC_BLKINIT, %g0 |
44 |
# ifdef SHARED |
44 |
# ifdef PIC |
45 |
sethi %gdop_hix22(__memcpy_niagara2), %o1 |
45 |
sethi %gdop_hix22(__memcpy_niagara2), %o1 |
46 |
xor %o1, %gdop_lox10(__memcpy_niagara2), %o1 |
46 |
xor %o1, %gdop_lox10(__memcpy_niagara2), %o1 |
47 |
# else |
47 |
# else |
Lines 51-57
Link Here
|
51 |
nop |
51 |
nop |
52 |
1: be 1f |
52 |
1: be 1f |
53 |
andcc %o0, HWCAP_SPARC_ULTRA3, %g0 |
53 |
andcc %o0, HWCAP_SPARC_ULTRA3, %g0 |
54 |
# ifdef SHARED |
54 |
# ifdef PIC |
55 |
sethi %gdop_hix22(__memcpy_niagara1), %o1 |
55 |
sethi %gdop_hix22(__memcpy_niagara1), %o1 |
56 |
xor %o1, %gdop_lox10(__memcpy_niagara1), %o1 |
56 |
xor %o1, %gdop_lox10(__memcpy_niagara1), %o1 |
57 |
# else |
57 |
# else |
Lines 61-67
Link Here
|
61 |
nop |
61 |
nop |
62 |
1: be 9f |
62 |
1: be 9f |
63 |
nop |
63 |
nop |
64 |
# ifdef SHARED |
64 |
# ifdef PIC |
65 |
sethi %gdop_hix22(__memcpy_ultra3), %o1 |
65 |
sethi %gdop_hix22(__memcpy_ultra3), %o1 |
66 |
xor %o1, %gdop_lox10(__memcpy_ultra3), %o1 |
66 |
xor %o1, %gdop_lox10(__memcpy_ultra3), %o1 |
67 |
# else |
67 |
# else |
Lines 70-83
Link Here
|
70 |
ba 10f |
70 |
ba 10f |
71 |
nop |
71 |
nop |
72 |
9: |
72 |
9: |
73 |
# ifdef SHARED |
73 |
# ifdef PIC |
74 |
sethi %gdop_hix22(__memcpy_ultra1), %o1 |
74 |
sethi %gdop_hix22(__memcpy_ultra1), %o1 |
75 |
xor %o1, %gdop_lox10(__memcpy_ultra1), %o1 |
75 |
xor %o1, %gdop_lox10(__memcpy_ultra1), %o1 |
76 |
# else |
76 |
# else |
77 |
set __memcpy_ultra1, %o1 |
77 |
set __memcpy_ultra1, %o1 |
78 |
# endif |
78 |
# endif |
79 |
10: |
79 |
10: |
80 |
# ifdef SHARED |
80 |
# ifdef PIC |
81 |
add %o3, %o1, %o1 |
81 |
add %o3, %o1, %o1 |
82 |
# endif |
82 |
# endif |
83 |
retl |
83 |
retl |
Lines 86-99
Link Here
|
86 |
|
86 |
|
87 |
ENTRY(__mempcpy) |
87 |
ENTRY(__mempcpy) |
88 |
.type __mempcpy, @gnu_indirect_function |
88 |
.type __mempcpy, @gnu_indirect_function |
89 |
# ifdef SHARED |
89 |
# ifdef PIC |
90 |
SETUP_PIC_REG_LEAF(o3, o5) |
90 |
SETUP_PIC_REG_LEAF(o3, o5) |
91 |
# endif |
91 |
# endif |
92 |
set HWCAP_SPARC_CRYPTO, %o1 |
92 |
set HWCAP_SPARC_CRYPTO, %o1 |
93 |
andcc %o0, %o1, %g0 |
93 |
andcc %o0, %o1, %g0 |
94 |
be 1f |
94 |
be 1f |
95 |
andcc %o0, HWCAP_SPARC_N2, %g0 |
95 |
andcc %o0, HWCAP_SPARC_N2, %g0 |
96 |
# ifdef SHARED |
96 |
# ifdef PIC |
97 |
sethi %gdop_hix22(__mempcpy_niagara4), %o1 |
97 |
sethi %gdop_hix22(__mempcpy_niagara4), %o1 |
98 |
xor %o1, %gdop_lox10(__mempcpy_niagara4), %o1 |
98 |
xor %o1, %gdop_lox10(__mempcpy_niagara4), %o1 |
99 |
# else |
99 |
# else |
Lines 103-109
Link Here
|
103 |
nop |
103 |
nop |
104 |
1: be 1f |
104 |
1: be 1f |
105 |
andcc %o0, HWCAP_SPARC_BLKINIT, %g0 |
105 |
andcc %o0, HWCAP_SPARC_BLKINIT, %g0 |
106 |
# ifdef SHARED |
106 |
# ifdef PIC |
107 |
sethi %gdop_hix22(__mempcpy_niagara2), %o1 |
107 |
sethi %gdop_hix22(__mempcpy_niagara2), %o1 |
108 |
xor %o1, %gdop_lox10(__mempcpy_niagara2), %o1 |
108 |
xor %o1, %gdop_lox10(__mempcpy_niagara2), %o1 |
109 |
# else |
109 |
# else |
Lines 113-119
Link Here
|
113 |
nop |
113 |
nop |
114 |
1: be 1f |
114 |
1: be 1f |
115 |
andcc %o0, HWCAP_SPARC_ULTRA3, %g0 |
115 |
andcc %o0, HWCAP_SPARC_ULTRA3, %g0 |
116 |
# ifdef SHARED |
116 |
# ifdef PIC |
117 |
sethi %gdop_hix22(__mempcpy_niagara1), %o1 |
117 |
sethi %gdop_hix22(__mempcpy_niagara1), %o1 |
118 |
xor %o1, %gdop_lox10(__mempcpy_niagara1), %o1 |
118 |
xor %o1, %gdop_lox10(__mempcpy_niagara1), %o1 |
119 |
# else |
119 |
# else |
Lines 123-129
Link Here
|
123 |
nop |
123 |
nop |
124 |
1: be 9f |
124 |
1: be 9f |
125 |
nop |
125 |
nop |
126 |
# ifdef SHARED |
126 |
# ifdef PIC |
127 |
sethi %gdop_hix22(__mempcpy_ultra3), %o1 |
127 |
sethi %gdop_hix22(__mempcpy_ultra3), %o1 |
128 |
xor %o1, %gdop_lox10(__mempcpy_ultra3), %o1 |
128 |
xor %o1, %gdop_lox10(__mempcpy_ultra3), %o1 |
129 |
# else |
129 |
# else |
Lines 132-145
Link Here
|
132 |
ba 10f |
132 |
ba 10f |
133 |
nop |
133 |
nop |
134 |
9: |
134 |
9: |
135 |
# ifdef SHARED |
135 |
# ifdef PIC |
136 |
sethi %gdop_hix22(__mempcpy_ultra1), %o1 |
136 |
sethi %gdop_hix22(__mempcpy_ultra1), %o1 |
137 |
xor %o1, %gdop_lox10(__mempcpy_ultra1), %o1 |
137 |
xor %o1, %gdop_lox10(__mempcpy_ultra1), %o1 |
138 |
# else |
138 |
# else |
139 |
set __mempcpy_ultra1, %o1 |
139 |
set __mempcpy_ultra1, %o1 |
140 |
# endif |
140 |
# endif |
141 |
10: |
141 |
10: |
142 |
# ifdef SHARED |
142 |
# ifdef PIC |
143 |
add %o3, %o1, %o1 |
143 |
add %o3, %o1, %o1 |
144 |
# endif |
144 |
# endif |
145 |
retl |
145 |
retl |