1ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov/* 2ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov * Copyright 2009 The Android Open Source Project 3ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov * 4ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov * Use of this source code is governed by a BSD-style license that can be 5ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov * found in the LICENSE file. 6ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov */ 7ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 8ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#ifndef SkBitmapProcState_opts_SSE2_DEFINED 9ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#define SkBitmapProcState_opts_SSE2_DEFINED 10ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 11ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#include "SkBitmapProcState.h" 12ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 13ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid S32_opaque_D32_filter_DX_SSE2(const SkBitmapProcState& s, 14ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov const uint32_t* xy, 15ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov int count, uint32_t* colors); 16ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid S32_alpha_D32_filter_DX_SSE2(const SkBitmapProcState& s, 17ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov const uint32_t* xy, 18ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov int count, uint32_t* colors); 19ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid Color32_SSE2(SkPMColor dst[], const SkPMColor src[], int count, 20ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov SkPMColor color); 21ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid ClampX_ClampY_filter_scale_SSE2(const SkBitmapProcState& s, uint32_t xy[], 22ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov int count, int x, int y); 23ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid ClampX_ClampY_nofilter_scale_SSE2(const SkBitmapProcState& s, 24ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov uint32_t xy[], int count, int x, int y); 25ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid ClampX_ClampY_filter_affine_SSE2(const SkBitmapProcState& s, 26ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov uint32_t xy[], int count, int x, int y); 27ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid ClampX_ClampY_nofilter_affine_SSE2(const SkBitmapProcState& s, 28ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov uint32_t xy[], int count, int x, int y); 29ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovvoid S32_D16_filter_DX_SSE2(const SkBitmapProcState& s, 30ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov const uint32_t* xy, 31ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov int count, uint16_t* colors); 32ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 33ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#endif 34ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov