Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(380)

Side by Side Diff: src/opts/memset16_neon.S

Issue 461693004: Let skia build with clang's integrated assembler. (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: . Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/opts/SkBlitRow_opts_arm_neon.cpp ('k') | src/opts/memset32_neon.S » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 /*************************************************************************** 8 /***************************************************************************
9 Neon memset: Attempts to do a memset with Neon registers if possible, 9 Neon memset: Attempts to do a memset with Neon registers if possible,
10 Inputs: 10 Inputs:
11 s: The buffer to write to 11 s: The buffer to write to
12 c: The integer data to write to the buffer 12 c: The integer data to write to the buffer
13 n: The size_t count. 13 n: The size_t count.
14 Outputs: 14 Outputs:
15 15
16 ***************************************************************************/ 16 ***************************************************************************/
17 17
18 .syntax unified 18 .syntax unified
19 19
20 .code 32 20 .code 32
21 .fpu neon 21 .fpu neon
22 .align 4 22 .align 4
23 .globl memset16_neon 23 .globl memset16_neon
24 .func
25 24
26 memset16_neon: 25 memset16_neon:
27 cmp r2, #0 26 cmp r2, #0
28 bxeq lr 27 bxeq lr
29 28
30 /* Keep in mind that r2 -- the count argument -- is for the 29 /* Keep in mind that r2 -- the count argument -- is for the
31 * number of 16-bit items to copy. 30 * number of 16-bit items to copy.
32 */ 31 */
33 lsl r2, r2, #1 32 lsl r2, r2, #1
34 33
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 subs r2, r2, #4 133 subs r2, r2, #4
135 str r1, [r0], #4 134 str r1, [r0], #4
136 memset_2: 135 memset_2:
137 cmp r2, #0 136 cmp r2, #0
138 ble memset_end 137 ble memset_end
139 strh r1, [r0], #2 138 strh r1, [r0], #2
140 memset_end: 139 memset_end:
141 pop {r0} 140 pop {r0}
142 bx lr 141 bx lr
143 142
144 .endfunc
145 .end 143 .end
OLDNEW
« no previous file with comments | « src/opts/SkBlitRow_opts_arm_neon.cpp ('k') | src/opts/memset32_neon.S » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698