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

Side by Side Diff: src/opts/SkBitmapProcState_arm_neon.cpp

Issue 1556003003: remove shadeSpan16 from shader (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: cleanup unused macro-generated procs Created 4 years, 11 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/core/SkShader.cpp ('k') | src/opts/SkBitmapProcState_opts_mips_dsp.cpp » ('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 Google Inc. 2 * Copyright 2012 Google Inc.
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 #include "SkBitmapProcState.h" 8 #include "SkBitmapProcState.h"
9 #include "SkBitmapProcState_filter.h" 9 #include "SkBitmapProcState_filter.h"
10 #include "SkColorPriv.h" 10 #include "SkColorPriv.h"
11 #include "SkFilterProc.h" 11 #include "SkFilterProc.h"
12 #include "SkPaint.h" 12 #include "SkPaint.h"
13 #include "SkShader.h" // for tilemodes 13 #include "SkShader.h" // for tilemodes
14 #include "SkUtilsArm.h" 14 #include "SkUtilsArm.h"
15 15
16 // Required to ensure the table is part of the final binary. 16 // Required to ensure the table is part of the final binary.
17 extern const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[]; 17 extern const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[];
18 extern const SkBitmapProcState::SampleProc16 gSkBitmapProcStateSample16_neon[];
19 18
20 #define NAME_WRAP(x) x ## _neon 19 #define NAME_WRAP(x) x ## _neon
21 #include "SkBitmapProcState_filter_neon.h" 20 #include "SkBitmapProcState_filter_neon.h"
22 #include "SkBitmapProcState_procs.h" 21 #include "SkBitmapProcState_procs.h"
23 22
24 const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[] = { 23 const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[] = {
25 S32_opaque_D32_nofilter_DXDY_neon, 24 S32_opaque_D32_nofilter_DXDY_neon,
26 S32_alpha_D32_nofilter_DXDY_neon, 25 S32_alpha_D32_nofilter_DXDY_neon,
27 S32_opaque_D32_nofilter_DX_neon, 26 S32_opaque_D32_nofilter_DX_neon,
28 S32_alpha_D32_nofilter_DX_neon, 27 S32_alpha_D32_nofilter_DX_neon,
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 SG8_alpha_D32_nofilter_DXDY_neon, 71 SG8_alpha_D32_nofilter_DXDY_neon,
73 SG8_alpha_D32_nofilter_DXDY_neon, 72 SG8_alpha_D32_nofilter_DXDY_neon,
74 SG8_alpha_D32_nofilter_DX_neon, 73 SG8_alpha_D32_nofilter_DX_neon,
75 SG8_alpha_D32_nofilter_DX_neon, 74 SG8_alpha_D32_nofilter_DX_neon,
76 SG8_alpha_D32_filter_DXDY_neon, 75 SG8_alpha_D32_filter_DXDY_neon,
77 SG8_alpha_D32_filter_DXDY_neon, 76 SG8_alpha_D32_filter_DXDY_neon,
78 SG8_alpha_D32_filter_DX_neon, 77 SG8_alpha_D32_filter_DX_neon,
79 SG8_alpha_D32_filter_DX_neon, 78 SG8_alpha_D32_filter_DX_neon,
80 }; 79 };
81 80
82 const SkBitmapProcState::SampleProc16 gSkBitmapProcStateSample16_neon[] = {
83 S32_D16_nofilter_DXDY_neon,
84 S32_D16_nofilter_DX_neon,
85 S32_D16_filter_DXDY_neon,
86 S32_D16_filter_DX_neon,
87
88 S16_D16_nofilter_DXDY_neon,
89 S16_D16_nofilter_DX_neon,
90 S16_D16_filter_DXDY_neon,
91 S16_D16_filter_DX_neon,
92
93 SI8_D16_nofilter_DXDY_neon,
94 SI8_D16_nofilter_DX_neon,
95 SI8_D16_filter_DXDY_neon,
96 SI8_D16_filter_DX_neon,
97
98 // Don't support 4444 -> 565
99 nullptr, nullptr, nullptr, nullptr,
100 // Don't support A8 -> 565
101 nullptr, nullptr, nullptr, nullptr,
102 // Don't support G8 -> 565 (but we could)
103 nullptr, nullptr, nullptr, nullptr,
104 };
105
106 /////////////////////////////////////////////////////////////////////////////// 81 ///////////////////////////////////////////////////////////////////////////////
107 82
108 #include <arm_neon.h> 83 #include <arm_neon.h>
109 #include "SkConvolver.h" 84 #include "SkConvolver.h"
110 85
111 // Convolves horizontally along a single row. The row data is given in 86 // Convolves horizontally along a single row. The row data is given in
112 // |srcData| and continues for the numValues() of the filter. 87 // |srcData| and continues for the numValues() of the filter.
113 void convolveHorizontally_neon(const unsigned char* srcData, 88 void convolveHorizontally_neon(const unsigned char* srcData,
114 const SkConvolutionFilter1D& filter, 89 const SkConvolutionFilter1D& filter,
115 unsigned char* outRow, 90 unsigned char* outRow,
(...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after
515 } 490 }
516 } 491 }
517 492
518 void platformConvolutionProcs_arm_neon(SkConvolutionProcs* procs) { 493 void platformConvolutionProcs_arm_neon(SkConvolutionProcs* procs) {
519 procs->fExtraHorizontalReads = 3; 494 procs->fExtraHorizontalReads = 3;
520 procs->fConvolveVertically = &convolveVertically_neon; 495 procs->fConvolveVertically = &convolveVertically_neon;
521 procs->fConvolve4RowsHorizontally = &convolve4RowsHorizontally_neon; 496 procs->fConvolve4RowsHorizontally = &convolve4RowsHorizontally_neon;
522 procs->fConvolveHorizontally = &convolveHorizontally_neon; 497 procs->fConvolveHorizontally = &convolveHorizontally_neon;
523 procs->fApplySIMDPadding = &applySIMDPadding_neon; 498 procs->fApplySIMDPadding = &applySIMDPadding_neon;
524 } 499 }
OLDNEW
« no previous file with comments | « src/core/SkShader.cpp ('k') | src/opts/SkBitmapProcState_opts_mips_dsp.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698