Source code
Revision control
Other Tools
1
/*
2
* Copyright 2016 Google Inc.
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 "src/core/SkOpts.h"
9
10
#ifdef __clang__
11
#define SK_OPTS_NS avx
12
#include "src/opts/SkRasterPipeline_opts.h"
13
#endif
14
15
#include "src/opts/SkUtils_opts.h"
16
17
namespace SkOpts {
18
void Init_avx() {
19
memset16 = SK_OPTS_NS::memset16;
20
memset32 = SK_OPTS_NS::memset32;
21
memset64 = SK_OPTS_NS::memset64;
22
23
rect_memset16 = SK_OPTS_NS::rect_memset16;
24
rect_memset32 = SK_OPTS_NS::rect_memset32;
25
rect_memset64 = SK_OPTS_NS::rect_memset64;
26
27
#ifdef __clang__
28
#define M(st) stages_highp[SkRasterPipeline::st] = (StageFn)SK_OPTS_NS::st;
29
SK_RASTER_PIPELINE_STAGES(M)
30
just_return_highp = (StageFn)SK_OPTS_NS::just_return;
31
start_pipeline_highp = SK_OPTS_NS::start_pipeline;
32
#undef M
33
34
#define M(st) stages_lowp[SkRasterPipeline::st] = (StageFn)SK_OPTS_NS::lowp::st;
35
SK_RASTER_PIPELINE_STAGES(M)
36
just_return_lowp = (StageFn)SK_OPTS_NS::lowp::just_return;
37
start_pipeline_lowp = SK_OPTS_NS::lowp::start_pipeline;
38
#undef M
39
#endif
40
}
41
}