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

Side by Side Diff: source/row_neon64.cc

Issue 1353923003: j422toabgr neon port using i422toabgr matrix function. (Closed) Base URL: https://chromium.googlesource.com/libyuv/libyuv@master
Patch Set: Created 5 years, 3 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 | « source/row_neon.cc ('k') | no next file » | 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 2014 The LibYuv Project Authors. All rights reserved. 2 * Copyright 2014 The LibYuv 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
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 "+r"(dst_argb), // %3 198 "+r"(dst_argb), // %3
199 "+r"(width) // %4 199 "+r"(width) // %4
200 : [kUVBiasBGR]"r"(&kYuvConstantsNEON.kUVBiasBGR), 200 : [kUVBiasBGR]"r"(&kYuvConstantsNEON.kUVBiasBGR),
201 [kYToRgb]"r"(&kYuvConstantsNEON.kYToRgb) 201 [kYToRgb]"r"(&kYuvConstantsNEON.kYToRgb)
202 : "cc", "memory", "v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7", "v20", 202 : "cc", "memory", "v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7", "v20",
203 "v21", "v22", "v23", "v24", "v25", "v26", "v27", "v28", "v29", "v30" 203 "v21", "v22", "v23", "v24", "v25", "v26", "v27", "v28", "v29", "v30"
204 ); 204 );
205 } 205 }
206 #endif // HAS_I444TOARGBROW_NEON 206 #endif // HAS_I444TOARGBROW_NEON
207 207
208 // TODO(fbarchard): Switch to Matrix version of this function.
208 #ifdef HAS_I422TOARGBROW_NEON 209 #ifdef HAS_I422TOARGBROW_NEON
209 void I422ToARGBRow_NEON(const uint8* src_y, 210 void I422ToARGBRow_NEON(const uint8* src_y,
210 const uint8* src_u, 211 const uint8* src_u,
211 const uint8* src_v, 212 const uint8* src_v,
212 uint8* dst_argb, 213 uint8* dst_argb,
213 int width) { 214 int width) {
214 asm volatile ( 215 asm volatile (
215 YUV422TORGB_SETUP_REG 216 YUV422TORGB_SETUP_REG
216 "1: \n" 217 "1: \n"
217 READYUV422 218 READYUV422
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 "+r"(dst_bgra), // %3 286 "+r"(dst_bgra), // %3
286 "+r"(width) // %4 287 "+r"(width) // %4
287 : [kUVBiasBGR]"r"(&kYuvConstantsNEON.kUVBiasBGR), 288 : [kUVBiasBGR]"r"(&kYuvConstantsNEON.kUVBiasBGR),
288 [kYToRgb]"r"(&kYuvConstantsNEON.kYToRgb) 289 [kYToRgb]"r"(&kYuvConstantsNEON.kYToRgb)
289 : "cc", "memory", "v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7", "v20", 290 : "cc", "memory", "v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7", "v20",
290 "v21", "v22", "v23", "v24", "v25", "v26", "v27", "v28", "v29", "v30" 291 "v21", "v22", "v23", "v24", "v25", "v26", "v27", "v28", "v29", "v30"
291 ); 292 );
292 } 293 }
293 #endif // HAS_I422TOBGRAROW_NEON 294 #endif // HAS_I422TOBGRAROW_NEON
294 295
296 // TODO(fbarchard): Switch to Matrix version of this function.
295 #ifdef HAS_I422TOABGRROW_NEON 297 #ifdef HAS_I422TOABGRROW_NEON
296 void I422ToABGRRow_NEON(const uint8* src_y, 298 void I422ToABGRRow_NEON(const uint8* src_y,
297 const uint8* src_u, 299 const uint8* src_u,
298 const uint8* src_v, 300 const uint8* src_v,
299 uint8* dst_abgr, 301 uint8* dst_abgr,
300 int width) { 302 int width) {
301 asm volatile ( 303 asm volatile (
302 YUV422TORGB_SETUP_REG 304 YUV422TORGB_SETUP_REG
303 "1: \n" 305 "1: \n"
304 READYUV422 306 READYUV422
(...skipping 2782 matching lines...) Expand 10 before | Expand all | Expand 10 after
3087 : "cc", "memory", "v0", "v1", "v2", "v3" // Clobber List 3089 : "cc", "memory", "v0", "v1", "v2", "v3" // Clobber List
3088 ); 3090 );
3089 } 3091 }
3090 #endif // HAS_SOBELYROW_NEON 3092 #endif // HAS_SOBELYROW_NEON
3091 #endif // !defined(LIBYUV_DISABLE_NEON) && defined(__aarch64__) 3093 #endif // !defined(LIBYUV_DISABLE_NEON) && defined(__aarch64__)
3092 3094
3093 #ifdef __cplusplus 3095 #ifdef __cplusplus
3094 } // extern "C" 3096 } // extern "C"
3095 } // namespace libyuv 3097 } // namespace libyuv
3096 #endif 3098 #endif
OLDNEW
« no previous file with comments | « source/row_neon.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698