blob: 8e525968dab750ab04b1dfd586c7346eef06ae67 [file] [log] [blame]
mtklein8317a182015-07-30 07:30:16 -07001/*
2 * Copyright 2015 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
Mike Kleinc0bd9f92019-04-23 12:05:21 -05008#include "src/core/SkOpts.h"
Mike Klein8caa5af2015-08-04 16:48:43 -04009
mtklein0358a6a2016-07-13 08:02:20 -070010#define SK_OPTS_NS sse41
Mike Kleinc0bd9f92019-04-23 12:05:21 -050011#include "src/opts/SkBlitRow_opts.h"
12#include "src/opts/SkRasterPipeline_opts.h"
mtklein8317a182015-07-30 07:30:16 -070013
14namespace SkOpts {
15 void Init_sse41() {
Mike Kleinc33e6dc2019-04-10 11:44:42 -050016 blit_row_color32 = sse41::blit_row_color32;
mtklein0358a6a2016-07-13 08:02:20 -070017 blit_row_s32a_opaque = sse41::blit_row_s32a_opaque;
Mike Klein1b9b7d52018-02-27 10:37:40 -050018
19 #define M(st) stages_highp[SkRasterPipeline::st] = (StageFn)SK_OPTS_NS::st;
20 SK_RASTER_PIPELINE_STAGES(M)
21 just_return_highp = (StageFn)SK_OPTS_NS::just_return;
22 start_pipeline_highp = SK_OPTS_NS::start_pipeline;
23 #undef M
24
25 #define M(st) stages_lowp[SkRasterPipeline::st] = (StageFn)SK_OPTS_NS::lowp::st;
26 SK_RASTER_PIPELINE_STAGES(M)
27 just_return_lowp = (StageFn)SK_OPTS_NS::lowp::just_return;
28 start_pipeline_lowp = SK_OPTS_NS::lowp::start_pipeline;
29 #undef M
mtklein8317a182015-07-30 07:30:16 -070030 }
31}