Lines Matching +full:src +full:- +full:2
1 /* SPDX-License-Identifier: GPL-2.0-only */
9 * http://bazaar.launchpad.net/~linaro-toolchain-dev/cortex-strings/trunk/
10 * files/head:/src/aarch64/
15 * Copy a buffer from src to dest (alignment handled by the hardware)
18 * x0 - dest
19 * x1 - src
20 * x2 - n
22 * x0 - dest
25 src .req x1 label
47 neg tmp2, src
52 * Copy the leading memory data from src to dst in an increasing
54 * memory data is eliminated when the distance between src and
58 ldrb1 tmp1w, src, #1
61 tbz tmp2, #1, 2f
62 ldrh1 tmp1w, src, #2
63 strh1 tmp1w, dst, #2
64 2:
65 tbz tmp2, #2, 3f
66 ldr1 tmp1w, src, #4
70 ldr1 tmp1, src, #8
89 b.lt 2f
90 ldp1 A_l, A_h, src, #16
93 ldp1 A_l, A_h, src, #16
95 2:
96 ldp1 A_l, A_h, src, #16
102 * bytes from (src-16) to (dst-16) and to backward the src to aligned
105 * precondition that src address is at least 16 bytes bigger than dst
111 ldr1 tmp1, src, #8
114 tbz count, #2, 2f
115 ldr1 tmp1w, src, #4
117 2:
119 ldrh1 tmp1w, src, #2
120 strh1 tmp1w, dst, #2
123 ldrb1 tmp1w, src, #1
135 ldp1 A_l, A_h, src, #16
137 ldp1 B_l, B_h, src, #16
138 ldp1 C_l, C_h, src, #16
141 ldp1 D_l, D_h, src, #16
154 /* pre-get 64 bytes data. */
155 ldp1 A_l, A_h, src, #16
156 ldp1 B_l, B_h, src, #16
157 ldp1 C_l, C_h, src, #16
158 ldp1 D_l, D_h, src, #16
165 ldp1 A_l, A_h, src, #16
167 ldp1 B_l, B_h, src, #16
169 ldp1 C_l, C_h, src, #16
171 ldp1 D_l, D_h, src, #16