1 // Copyright (c) Facebook, Inc. and its affiliates. 2 // All rights reserved. 3 // 4 // Copyright 2019 Google LLC 5 // 6 // This source code is licensed under the BSD-style license found in the 7 // LICENSE file in the root directory of this source tree. 8 9 #pragma once 10 11 #include <stddef.h> 12 #include <stdint.h> 13 14 #include <xnnpack/common.h> 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 21 #define DECLARE_F32_RMAX_UKERNEL_FUNCTION(fn_name) \ 22 XNN_INTERNAL void fn_name( \ 23 size_t n, \ 24 const float* x, \ 25 float* y); 26 27 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__neon) 28 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__sse) 29 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__avx) 30 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__avx512f) 31 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__wasmsimd_arm) 32 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__wasmsimd_x86) 33 DECLARE_F32_RMAX_UKERNEL_FUNCTION(xnn_f32_rmax_ukernel__scalar) 34 35 36 #define DECLARE_U8_RMAX_UKERNEL_FUNCTION(fn_name) \ 37 XNN_INTERNAL void fn_name( \ 38 size_t n, \ 39 const uint8_t* x, \ 40 uint8_t* y); 41 42 DECLARE_U8_RMAX_UKERNEL_FUNCTION(xnn_u8_rmax_ukernel__neon) 43 DECLARE_U8_RMAX_UKERNEL_FUNCTION(xnn_u8_rmax_ukernel__sse2) 44 DECLARE_U8_RMAX_UKERNEL_FUNCTION(xnn_u8_rmax_ukernel__scalar) 45 46 47 #ifdef __cplusplus 48 } // extern "C" 49 #endif 50