/* * Copyright 2012 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include "SkBitmapProcState.h" #include "SkBitmapProcState_filter.h" #include "SkColorPriv.h" #include "SkFilterProc.h" #include "SkPaint.h" #include "SkShader.h" // for tilemodes #include "SkUtilsArm.h" // Required to ensure the table is part of the final binary. extern const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[]; extern const SkBitmapProcState::SampleProc16 gSkBitmapProcStateSample16_neon[]; #define NAME_WRAP(x) x ## _neon #include "SkBitmapProcState_filter_neon.h" #include "SkBitmapProcState_procs.h" const SkBitmapProcState::SampleProc32 gSkBitmapProcStateSample32_neon[] = { S32_opaque_D32_nofilter_DXDY_neon, S32_alpha_D32_nofilter_DXDY_neon, S32_opaque_D32_nofilter_DX_neon, S32_alpha_D32_nofilter_DX_neon, S32_opaque_D32_filter_DXDY_neon, S32_alpha_D32_filter_DXDY_neon, S32_opaque_D32_filter_DX_neon, S32_alpha_D32_filter_DX_neon, S16_opaque_D32_nofilter_DXDY_neon, S16_alpha_D32_nofilter_DXDY_neon, S16_opaque_D32_nofilter_DX_neon, S16_alpha_D32_nofilter_DX_neon, S16_opaque_D32_filter_DXDY_neon, S16_alpha_D32_filter_DXDY_neon, S16_opaque_D32_filter_DX_neon, S16_alpha_D32_filter_DX_neon, SI8_opaque_D32_nofilter_DXDY_neon, SI8_alpha_D32_nofilter_DXDY_neon, SI8_opaque_D32_nofilter_DX_neon, SI8_alpha_D32_nofilter_DX_neon, SI8_opaque_D32_filter_DXDY_neon, SI8_alpha_D32_filter_DXDY_neon, SI8_opaque_D32_filter_DX_neon, SI8_alpha_D32_filter_DX_neon, S4444_opaque_D32_nofilter_DXDY_neon, S4444_alpha_D32_nofilter_DXDY_neon, S4444_opaque_D32_nofilter_DX_neon, S4444_alpha_D32_nofilter_DX_neon, S4444_opaque_D32_filter_DXDY_neon, S4444_alpha_D32_filter_DXDY_neon, S4444_opaque_D32_filter_DX_neon, S4444_alpha_D32_filter_DX_neon, // A8 treats alpha/opauqe the same (equally efficient) SA8_alpha_D32_nofilter_DXDY_neon, SA8_alpha_D32_nofilter_DXDY_neon, SA8_alpha_D32_nofilter_DX_neon, SA8_alpha_D32_nofilter_DX_neon, SA8_alpha_D32_filter_DXDY_neon, SA8_alpha_D32_filter_DXDY_neon, SA8_alpha_D32_filter_DX_neon, SA8_alpha_D32_filter_DX_neon }; const SkBitmapProcState::SampleProc16 gSkBitmapProcStateSample16_neon[] = { S32_D16_nofilter_DXDY_neon, S32_D16_nofilter_DX_neon, S32_D16_filter_DXDY_neon, S32_D16_filter_DX_neon, S16_D16_nofilter_DXDY_neon, S16_D16_nofilter_DX_neon, S16_D16_filter_DXDY_neon, S16_D16_filter_DX_neon, SI8_D16_nofilter_DXDY_neon, SI8_D16_nofilter_DX_neon, SI8_D16_filter_DXDY_neon, SI8_D16_filter_DX_neon, // Don't support 4444 -> 565 NULL, NULL, NULL, NULL, // Don't support A8 -> 565 NULL, NULL, NULL, NULL };