• Home
  • Raw
  • Download

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/
18 * Move a buffer from src to test (alignment handled by the hardware).
19 * If dest <= src, call memcpy, otherwise copy in reverse order.
22 * x0 - dest
23 * x1 - src
24 * x2 - n
26 * x0 - dest
29 src .req x1 label
50 cmp dstin, src
52 add tmp1, src, count
57 add src, src, count
59 b.lo .Ltail15 /*probably non-alignment accesses.*/
61 ands tmp2, src, #15 /* Bytes to reach alignment. */
65 * process the aligned offset length to make the src aligned firstly.
70 ldrb tmp1w, [src, #-1]!
71 strb tmp1w, [dst, #-1]!
73 tbz tmp2, #1, 2f
74 ldrh tmp1w, [src, #-2]!
75 strh tmp1w, [dst, #-2]!
76 2:
77 tbz tmp2, #2, 3f
78 ldr tmp1w, [src, #-4]!
79 str tmp1w, [dst, #-4]!
82 ldr tmp1, [src, #-8]!
83 str tmp1, [dst, #-8]!
102 b.lt 2f
103 ldp A_l, A_h, [src, #-16]!
104 stp A_l, A_h, [dst, #-16]!
106 ldp A_l, A_h, [src, #-16]!
107 stp A_l, A_h, [dst, #-16]!
108 2:
109 ldp A_l, A_h, [src, #-16]!
110 stp A_l, A_h, [dst, #-16]!
114 ldr tmp1, [src, #-8]!
115 str tmp1, [dst, #-8]!
117 tbz count, #2, 2f
118 ldr tmp1w, [src, #-4]!
119 str tmp1w, [dst, #-4]!
120 2:
122 ldrh tmp1w, [src, #-2]!
123 strh tmp1w, [dst, #-2]!
126 ldrb tmp1w, [src, #-1]
127 strb tmp1w, [dst, #-1]
139 ldp A_l, A_h, [src, #-16]
140 stp A_l, A_h, [dst, #-16]
141 ldp B_l, B_h, [src, #-32]
142 ldp C_l, C_h, [src, #-48]
143 stp B_l, B_h, [dst, #-32]
144 stp C_l, C_h, [dst, #-48]
145 ldp D_l, D_h, [src, #-64]!
146 stp D_l, D_h, [dst, #-64]!
158 /* pre-load 64 bytes data. */
159 ldp A_l, A_h, [src, #-16]
160 ldp B_l, B_h, [src, #-32]
161 ldp C_l, C_h, [src, #-48]
162 ldp D_l, D_h, [src, #-64]!
168 stp A_l, A_h, [dst, #-16]
169 ldp A_l, A_h, [src, #-16]
170 stp B_l, B_h, [dst, #-32]
171 ldp B_l, B_h, [src, #-32]
172 stp C_l, C_h, [dst, #-48]
173 ldp C_l, C_h, [src, #-48]
174 stp D_l, D_h, [dst, #-64]!
175 ldp D_l, D_h, [src, #-64]!
178 stp A_l, A_h, [dst, #-16]
179 stp B_l, B_h, [dst, #-32]
180 stp C_l, C_h, [dst, #-48]
181 stp D_l, D_h, [dst, #-64]!