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

Side by Side Diff: source/libvpx/vp8/common/arm/armv6/copymem16x16_v6.asm

Issue 7671004: Update libvpx snapshot to v0.9.7-p1 (Cayuga). (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/libvpx/
Patch Set: '' Created 9 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 | Annotate | Revision Log
OLDNEW
1 ; 1 ;
2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved. 2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3 ; 3 ;
4 ; Use of this source code is governed by a BSD-style license 4 ; Use of this source code is governed by a BSD-style license
5 ; that can be found in the LICENSE file in the root of the source 5 ; that can be found in the LICENSE file in the root of the source
6 ; tree. An additional intellectual property rights grant can be found 6 ; tree. An additional intellectual property rights grant can be found
7 ; in the file PATENTS. All contributing project authors may 7 ; in the file PATENTS. All contributing project authors may
8 ; be found in the AUTHORS file in the root of the source tree. 8 ; be found in the AUTHORS file in the root of the source tree.
9 ; 9 ;
10 10
11 11
12 EXPORT |vp8_copy_mem16x16_v6| 12 EXPORT |vp8_copy_mem16x16_v6|
13 ; ARM 13 ; ARM
14 ; REQUIRE8 14 ; REQUIRE8
15 ; PRESERVE8 15 ; PRESERVE8
16 16
17 AREA Block, CODE, READONLY ; name this block of code 17 AREA Block, CODE, READONLY ; name this block of code
18 ;void copy_mem16x16_v6( unsigned char *src, int src_stride, unsigned char *dst, int dst_stride) 18 ;void copy_mem16x16_v6( unsigned char *src, int src_stride, unsigned char *dst, int dst_stride)
19 ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 19 ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
20 |vp8_copy_mem16x16_v6| PROC 20 |vp8_copy_mem16x16_v6| PROC
21 stmdb sp!, {r4 - r7} 21 stmdb sp!, {r4 - r7}
22 ;push {r4-r7} 22 ;push {r4-r7}
23 23
24 ;preload 24 ;preload
25 pld [r0] 25 pld [r0, #31] ; preload for next 16x16 block
26 pld [r0, r1]
27 pld [r0, r1, lsl #1]
28 26
29 ands r4, r0, #15 27 ands r4, r0, #15
30 beq copy_mem16x16_fast 28 beq copy_mem16x16_fast
31 29
32 ands r4, r0, #7 30 ands r4, r0, #7
33 beq copy_mem16x16_8 31 beq copy_mem16x16_8
34 32
35 ands r4, r0, #3 33 ands r4, r0, #3
36 beq copy_mem16x16_4 34 beq copy_mem16x16_4
37 35
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 strb r6, [r2, #14] 81 strb r6, [r2, #14]
84 strb r7, [r2, #15] 82 strb r7, [r2, #15]
85 83
86 add r2, r2, r3 84 add r2, r2, r3
87 85
88 ldrneb r4, [r0] 86 ldrneb r4, [r0]
89 ldrneb r5, [r0, #1] 87 ldrneb r5, [r0, #1]
90 ldrneb r6, [r0, #2] 88 ldrneb r6, [r0, #2]
91 ldrneb r7, [r0, #3] 89 ldrneb r7, [r0, #3]
92 90
91 pld [r0, #31] ; preload for next 16x16 block
92
93 bne copy_mem16x16_1_loop 93 bne copy_mem16x16_1_loop
94 94
95 ldmia sp!, {r4 - r7} 95 ldmia sp!, {r4 - r7}
96 ;pop {r4-r7} 96 ;pop {r4-r7}
97 mov pc, lr 97 mov pc, lr
98 98
99 ;copy 4 bytes each time 99 ;copy 4 bytes each time
100 copy_mem16x16_4 100 copy_mem16x16_4
101 ldr r4, [r0] 101 ldr r4, [r0]
102 ldr r5, [r0, #4] 102 ldr r5, [r0, #4]
(...skipping 11 matching lines...) Expand all
114 str r6, [r2, #8] 114 str r6, [r2, #8]
115 str r7, [r2, #12] 115 str r7, [r2, #12]
116 116
117 add r2, r2, r3 117 add r2, r2, r3
118 118
119 ldrne r4, [r0] 119 ldrne r4, [r0]
120 ldrne r5, [r0, #4] 120 ldrne r5, [r0, #4]
121 ldrne r6, [r0, #8] 121 ldrne r6, [r0, #8]
122 ldrne r7, [r0, #12] 122 ldrne r7, [r0, #12]
123 123
124 pld [r0, #31] ; preload for next 16x16 block
125
124 bne copy_mem16x16_4_loop 126 bne copy_mem16x16_4_loop
125 127
126 ldmia sp!, {r4 - r7} 128 ldmia sp!, {r4 - r7}
127 ;pop {r4-r7} 129 ;pop {r4-r7}
128 mov pc, lr 130 mov pc, lr
129 131
130 ;copy 8 bytes each time 132 ;copy 8 bytes each time
131 copy_mem16x16_8 133 copy_mem16x16_8
132 sub r1, r1, #16 134 sub r1, r1, #16
133 sub r3, r3, #16 135 sub r3, r3, #16
134 136
135 mov r12, #16 137 mov r12, #16
136 138
137 copy_mem16x16_8_loop 139 copy_mem16x16_8_loop
138 ldmia r0!, {r4-r5} 140 ldmia r0!, {r4-r5}
139 ;ldm r0, {r4-r5} 141 ;ldm r0, {r4-r5}
140 ldmia r0!, {r6-r7} 142 ldmia r0!, {r6-r7}
141 143
142 add r0, r0, r1 144 add r0, r0, r1
143 145
144 stmia r2!, {r4-r5} 146 stmia r2!, {r4-r5}
145 subs r12, r12, #1 147 subs r12, r12, #1
146 ;stm r2, {r4-r5} 148 ;stm r2, {r4-r5}
147 stmia r2!, {r6-r7} 149 stmia r2!, {r6-r7}
148 150
149 add r2, r2, r3 151 add r2, r2, r3
150 152
153 pld [r0, #31] ; preload for next 16x16 block
151 bne copy_mem16x16_8_loop 154 bne copy_mem16x16_8_loop
152 155
153 ldmia sp!, {r4 - r7} 156 ldmia sp!, {r4 - r7}
154 ;pop {r4-r7} 157 ;pop {r4-r7}
155 mov pc, lr 158 mov pc, lr
156 159
157 ;copy 16 bytes each time 160 ;copy 16 bytes each time
158 copy_mem16x16_fast 161 copy_mem16x16_fast
159 ;sub r1, r1, #16 162 ;sub r1, r1, #16
160 ;sub r3, r3, #16 163 ;sub r3, r3, #16
161 164
162 mov r12, #16 165 mov r12, #16
163 166
164 copy_mem16x16_fast_loop 167 copy_mem16x16_fast_loop
165 ldmia r0, {r4-r7} 168 ldmia r0, {r4-r7}
166 ;ldm r0, {r4-r7} 169 ;ldm r0, {r4-r7}
167 add r0, r0, r1 170 add r0, r0, r1
168 171
169 subs r12, r12, #1 172 subs r12, r12, #1
170 stmia r2, {r4-r7} 173 stmia r2, {r4-r7}
171 ;stm r2, {r4-r7} 174 ;stm r2, {r4-r7}
172 add r2, r2, r3 175 add r2, r2, r3
173 176
177 pld [r0, #31] ; preload for next 16x16 block
174 bne copy_mem16x16_fast_loop 178 bne copy_mem16x16_fast_loop
175 179
176 ldmia sp!, {r4 - r7} 180 ldmia sp!, {r4 - r7}
177 ;pop {r4-r7} 181 ;pop {r4-r7}
178 mov pc, lr 182 mov pc, lr
179 183
180 ENDP ; |vp8_copy_mem16x16_v6| 184 ENDP ; |vp8_copy_mem16x16_v6|
181 185
182 END 186 END
OLDNEW
« no previous file with comments | « source/libvpx/vp8/common/arm/armv6/bilinearfilter_v6.asm ('k') | source/libvpx/vp8/common/arm/armv6/filter_v6.asm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698