1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/gfx/skia/trunk/src/opts/SkMorphology_opts_arm.cpp Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,34 @@ 1.4 +/* 1.5 + * Copyright 2014 ARM Ltd. 1.6 + * 1.7 + * Use of this source code is governed by a BSD-style license that can be 1.8 + * found in the LICENSE file. 1.9 + */ 1.10 + 1.11 +#include "SkMorphology_opts.h" 1.12 +#include "SkMorphology_opts_neon.h" 1.13 +#include "SkUtilsArm.h" 1.14 + 1.15 +SkMorphologyImageFilter::Proc SkMorphologyGetPlatformProc(SkMorphologyProcType type) { 1.16 +#if SK_ARM_NEON_IS_NONE 1.17 + return NULL; 1.18 +#else 1.19 +#if SK_ARM_NEON_IS_DYNAMIC 1.20 + if (!sk_cpu_arm_has_neon()) { 1.21 + return NULL; 1.22 + } 1.23 +#endif 1.24 + switch (type) { 1.25 + case kDilateX_SkMorphologyProcType: 1.26 + return SkDilateX_neon; 1.27 + case kDilateY_SkMorphologyProcType: 1.28 + return SkDilateY_neon; 1.29 + case kErodeX_SkMorphologyProcType: 1.30 + return SkErodeX_neon; 1.31 + case kErodeY_SkMorphologyProcType: 1.32 + return SkErodeY_neon; 1.33 + default: 1.34 + return NULL; 1.35 + } 1.36 +#endif 1.37 +}