xref: /aosp_15_r20/external/skia/src/core/SkBlitMask_opts_ssse3.cpp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1 /*
2  * Copyright 2023 Google LLC
3  *
4  * Use of this source code is governed by a BSD-style license that can be
5  * found in the LICENSE file.
6  */
7 
8 #include "include/private/base/SkFeatures.h"
9 #include "src/core/SkBlitMask.h"
10 #include "src/core/SkOptsTargets.h"
11 
12 #if defined(SK_CPU_X86) && !defined(SK_ENABLE_OPTIMIZE_SIZE)
13 
14 // The order of these includes is important:
15 // 1) Select the target CPU architecture by defining SK_OPTS_TARGET and including SkOpts_SetTarget
16 // 2) Include the code to compile, typically in a _opts.h file.
17 // 3) Include SkOpts_RestoreTarget to switch back to the default CPU architecture
18 
19 #define SK_OPTS_TARGET SK_OPTS_TARGET_SSSE3
20 #include "src/opts/SkOpts_SetTarget.h"
21 
22 #include "src/opts/SkBlitMask_opts.h"
23 
24 #include "src/opts/SkOpts_RestoreTarget.h"
25 
26 namespace SkOpts {
Init_BlitMask_ssse3()27     void Init_BlitMask_ssse3() {
28         blit_mask_d32_a8 = ssse3::blit_mask_d32_a8;
29     }
30 }  // namespace SkOpts
31 
32 #endif // SK_CPU_X86 && !SK_ENABLE_OPTIMIZE_SIZE
33