OLD | NEW |
1 /*************************************************************************** | 1 /*************************************************************************** |
2 * Copyright (c) 2009,2010, Code Aurora Forum. All rights reserved. | 2 * Copyright (c) 2009,2010, Code Aurora Forum. All rights reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 ***************************************************************************/ | 6 ***************************************************************************/ |
7 | 7 |
8 .code 32 | 8 .code 32 |
9 .fpu neon | 9 .fpu neon |
10 .align 4 | 10 .align 4 |
11 .globl memset32_neon | 11 .globl memset32_neon |
12 .func | |
13 | 12 |
14 /* r0 = buffer, r1 = value, r2 = times to write */ | 13 /* r0 = buffer, r1 = value, r2 = times to write */ |
15 memset32_neon: | 14 memset32_neon: |
16 cmp r2, #1 | 15 cmp r2, #1 |
17 streq r1, [r0], #4 | 16 streq r1, [r0], #4 |
18 bxeq lr | 17 bxeq lr |
19 | 18 |
20 cmp r2, #4 | 19 cmp r2, #4 |
21 bgt memset32_neon_start | 20 bgt memset32_neon_start |
22 cmp r2, #0 | 21 cmp r2, #0 |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 str r1, [r0, #28] | 101 str r1, [r0, #28] |
103 str r1, [r0, #24] | 102 str r1, [r0, #24] |
104 str r1, [r0, #20] | 103 str r1, [r0, #20] |
105 str r1, [r0, #16] | 104 str r1, [r0, #16] |
106 str r1, [r0, #12] | 105 str r1, [r0, #12] |
107 str r1, [r0, #8] | 106 str r1, [r0, #8] |
108 str r1, [r0, #4] | 107 str r1, [r0, #4] |
109 str r1, [r0, #0] | 108 str r1, [r0, #0] |
110 bx lr | 109 bx lr |
111 | 110 |
112 .endfunc | |
113 .end | 111 .end |
OLD | NEW |