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

Side by Side Diff: source/row_any.cc

Issue 2430313008: scale by 1 for neon implemented (Closed)
Patch Set: one allocations for halffloat test Created 4 years, 1 month 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/planar_functions.cc ('k') | source/row_gcc.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 2012 The LibYuv Project Authors. All rights reserved. 2 * Copyright 2012 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 559 matching lines...) Expand 10 before | Expand all | Expand 10 after
570 int n = width & ~MASK; \ 570 int n = width & ~MASK; \
571 if (n > 0) { \ 571 if (n > 0) { \
572 ANY_SIMD(src_ptr, dst_ptr, shuffler, n); \ 572 ANY_SIMD(src_ptr, dst_ptr, shuffler, n); \
573 } \ 573 } \
574 memcpy(temp, src_ptr + n * SBPP, r * SBPP); \ 574 memcpy(temp, src_ptr + n * SBPP, r * SBPP); \
575 ANY_SIMD(temp, temp + 64, shuffler, MASK + 1); \ 575 ANY_SIMD(temp, temp + 64, shuffler, MASK + 1); \
576 memcpy(dst_ptr + n * BPP, temp + 64, r * BPP); \ 576 memcpy(dst_ptr + n * BPP, temp + 64, r * BPP); \
577 } 577 }
578 578
579 #ifdef HAS_HALFFLOATROW_SSE2 579 #ifdef HAS_HALFFLOATROW_SSE2
580 ANY11P16(HalfFloatRow_Any_SSE2, HalfFloatRow_SSE2, float, 1, 1, 15) 580 ANY11P16(HalfFloatRow_Any_SSE2, HalfFloatRow_SSE2, float, 1, 1, 7)
581 #endif 581 #endif
582 #ifdef HAS_HALFFLOATROW_AVX2 582 #ifdef HAS_HALFFLOATROW_AVX2
583 ANY11P16(HalfFloatRow_Any_AVX2, HalfFloatRow_AVX2, float, 1, 1, 15) 583 ANY11P16(HalfFloatRow_Any_AVX2, HalfFloatRow_AVX2, float, 1, 1, 15)
584 #endif 584 #endif
585 #ifdef HAS_HALFFLOATROW_F16C 585 #ifdef HAS_HALFFLOATROW_F16C
586 ANY11P16(HalfFloatRow_Any_F16C, HalfFloatRow_F16C, float, 1, 1, 15) 586 ANY11P16(HalfFloatRow_Any_F16C, HalfFloatRow_F16C, float, 1, 1, 15)
587 ANY11P16(HalfFloat1Row_Any_F16C, HalfFloat1Row_F16C, float, 1, 1, 15)
587 #endif 588 #endif
588 #ifdef HAS_HALFFLOATROW_NEON 589 #ifdef HAS_HALFFLOATROW_NEON
589 ANY11P16(HalfFloatRow_Any_NEON, HalfFloatRow_NEON, float, 1, 1, 7) 590 ANY11P16(HalfFloatRow_Any_NEON, HalfFloatRow_NEON, float, 1, 1, 7)
591 ANY11P16(HalfFloat1Row_Any_NEON, HalfFloat1Row_NEON, float, 1, 1, 7)
590 #endif 592 #endif
591 #undef ANY11P16 593 #undef ANY11P16
592 594
593 // Any 1 to 1 with yuvconstants 595 // Any 1 to 1 with yuvconstants
594 #define ANY11C(NAMEANY, ANY_SIMD, UVSHIFT, SBPP, BPP, MASK) \ 596 #define ANY11C(NAMEANY, ANY_SIMD, UVSHIFT, SBPP, BPP, MASK) \
595 void NAMEANY(const uint8* src_ptr, uint8* dst_ptr, \ 597 void NAMEANY(const uint8* src_ptr, uint8* dst_ptr, \
596 const struct YuvConstants* yuvconstants, int width) { \ 598 const struct YuvConstants* yuvconstants, int width) { \
597 SIMD_ALIGNED(uint8 temp[128 * 2]); \ 599 SIMD_ALIGNED(uint8 temp[128 * 2]); \
598 memset(temp, 0, 128); /* for YUY2 and msan */ \ 600 memset(temp, 0, 128); /* for YUY2 and msan */ \
599 int r = width & MASK; \ 601 int r = width & MASK; \
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after
857 #endif 859 #endif
858 #ifdef HAS_UYVYTOUVROW_MSA 860 #ifdef HAS_UYVYTOUVROW_MSA
859 ANY12S(UYVYToUVRow_Any_MSA, UYVYToUVRow_MSA, 1, 4, 31) 861 ANY12S(UYVYToUVRow_Any_MSA, UYVYToUVRow_MSA, 1, 4, 31)
860 #endif 862 #endif
861 #undef ANY12S 863 #undef ANY12S
862 864
863 #ifdef __cplusplus 865 #ifdef __cplusplus
864 } // extern "C" 866 } // extern "C"
865 } // namespace libyuv 867 } // namespace libyuv
866 #endif 868 #endif
OLDNEW
« no previous file with comments | « source/planar_functions.cc ('k') | source/row_gcc.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698