1 /* 2 * Copyright 2018 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 #define SK_OPTS_NS hsw 11 #include "src/core/SkCubicSolver.h" 12 #include "src/opts/SkBitmapProcState_opts.h" 13 #include "src/opts/SkBlitRow_opts.h" 14 #include "src/opts/SkRasterPipeline_opts.h" 15 #include "src/opts/SkUtils_opts.h" 16 17 namespace SkOpts { Init_hsw()18 void Init_hsw() { 19 blit_row_color32 = hsw::blit_row_color32; 20 blit_row_s32a_opaque = hsw::blit_row_s32a_opaque; 21 22 S32_alpha_D32_filter_DX = hsw::S32_alpha_D32_filter_DX; 23 24 cubic_solver = SK_OPTS_NS::cubic_solver; 25 26 #define M(st) stages_highp[SkRasterPipeline::st] = (StageFn)SK_OPTS_NS::st; 27 SK_RASTER_PIPELINE_STAGES(M) 28 just_return_highp = (StageFn)SK_OPTS_NS::just_return; 29 start_pipeline_highp = SK_OPTS_NS::start_pipeline; 30 #undef M 31 32 #define M(st) stages_lowp[SkRasterPipeline::st] = (StageFn)SK_OPTS_NS::lowp::st; 33 SK_RASTER_PIPELINE_STAGES(M) 34 just_return_lowp = (StageFn)SK_OPTS_NS::lowp::just_return; 35 start_pipeline_lowp = SK_OPTS_NS::lowp::start_pipeline; 36 #undef M 37 } 38 } 39