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

Side by Side Diff: source/planar_functions.cc

Issue 2424233004: Half float neon port, enable O2 for neon, and denormal test. (Closed)
Patch Set: remove fcvt version of neon disable f16c for intel halffloat test use 1/65535 Created 4 years, 2 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 | « include/libyuv/version.h ('k') | source/row_any.cc » ('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 2011 The LibYuv Project Authors. All rights reserved. 2 * Copyright 2011 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 2567 matching lines...) Expand 10 before | Expand all | Expand 10 after
2578 } 2578 }
2579 #endif 2579 #endif
2580 #if defined(HAS_HALFFLOATROW_F16C) 2580 #if defined(HAS_HALFFLOATROW_F16C)
2581 if (TestCpuFlag(kCpuHasAVX2) && TestCpuFlag(kCpuHasF16C)) { 2581 if (TestCpuFlag(kCpuHasAVX2) && TestCpuFlag(kCpuHasF16C)) {
2582 HalfFloatRow = HalfFloatRow_Any_F16C; 2582 HalfFloatRow = HalfFloatRow_Any_F16C;
2583 if (IS_ALIGNED(width, 16)) { 2583 if (IS_ALIGNED(width, 16)) {
2584 HalfFloatRow = HalfFloatRow_F16C; 2584 HalfFloatRow = HalfFloatRow_F16C;
2585 } 2585 }
2586 } 2586 }
2587 #endif 2587 #endif
2588 #if defined(HAS_HALFFLOATROW_NEON)
2589 if (TestCpuFlag(kCpuHasNEON)) {
2590 HalfFloatRow = HalfFloatRow_Any_NEON;
2591 if (IS_ALIGNED(width, 8)) {
2592 HalfFloatRow = HalfFloatRow_NEON;
2593 }
2594 }
2595 #endif
2596
2588 for (y = 0; y < height; ++y) { 2597 for (y = 0; y < height; ++y) {
2589 HalfFloatRow(src_y, dst_y, scale, width); 2598 HalfFloatRow(src_y, dst_y, scale, width);
2590 src_y += src_stride_y; 2599 src_y += src_stride_y;
2591 dst_y += dst_stride_y; 2600 dst_y += dst_stride_y;
2592 } 2601 }
2593 return 0; 2602 return 0;
2594 } 2603 }
2595 2604
2596 // Apply a lumacolortable to each ARGB pixel. 2605 // Apply a lumacolortable to each ARGB pixel.
2597 LIBYUV_API 2606 LIBYUV_API
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after
2977 } 2986 }
2978 free_aligned_buffer_64(rows); 2987 free_aligned_buffer_64(rows);
2979 } 2988 }
2980 return 0; 2989 return 0;
2981 } 2990 }
2982 2991
2983 #ifdef __cplusplus 2992 #ifdef __cplusplus
2984 } // extern "C" 2993 } // extern "C"
2985 } // namespace libyuv 2994 } // namespace libyuv
2986 #endif 2995 #endif
OLDNEW
« no previous file with comments | « include/libyuv/version.h ('k') | source/row_any.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698