Home | History | Annotate | Download | only in opts
      1 /*
      2  * Copyright 2014 ARM Ltd.
      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 "SkUtils.h"
      9 #include "SkUtilsArm.h"
     10 
     11 void sk_memset16_neon(uint16_t dst[], uint16_t value, int count);
     12 void sk_memset32_neon(uint32_t dst[], uint32_t value, int count);
     13 
     14 SkMemset16Proc SkMemset16GetPlatformProc() {
     15 #if SK_ARM_NEON_IS_ALWAYS
     16     return sk_memset16_neon;
     17 #elif SK_ARM_NEON_IS_DYNAMIC
     18     return sk_cpu_arm_has_neon() ? sk_memset16_neon : nullptr;
     19 #else
     20     return nullptr;
     21 #endif
     22 }
     23 
     24 SkMemset32Proc SkMemset32GetPlatformProc() {
     25 #if SK_ARM_NEON_IS_ALWAYS
     26     return sk_memset32_neon;
     27 #elif SK_ARM_NEON_IS_DYNAMIC
     28     return sk_cpu_arm_has_neon() ? sk_memset32_neon : nullptr;
     29 #else
     30     return nullptr;
     31 #endif
     32 }
     33 
     34 SkMemcpy32Proc SkMemcpy32GetPlatformProc() {
     35     return NULL;
     36 }
     37