blob: 397095945d2d7cfe59e29133578fa62d31753d30 [file] [log] [blame]
XNNPACK Teamb455b122019-09-27 18:10:33 -07001// 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/params.h>
15#include <xnnpack/common.h>
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21
Marat Dukhan99936602020-04-11 16:47:01 -070022#define DECLARE_F32_MAXPOOL_MINMAX_UKERNEL_FUNCTION(fn_name) \
23 XNN_INTERNAL void fn_name( \
24 size_t output_pixels, \
25 size_t kernel_size, \
26 size_t channels, \
27 const float** input, \
28 size_t input_offset, \
29 float* output, \
30 size_t input_increment, \
31 size_t output_increment, \
Marat Dukhaneb09a6b2020-04-08 17:34:32 -070032 const union xnn_f32_minmax_params* params);
XNNPACK Teamb455b122019-09-27 18:10:33 -070033
Marat Dukhan99936602020-04-11 16:47:01 -070034DECLARE_F32_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_f32_maxpool_minmax_ukernel_9p8x__sse_c4)
35DECLARE_F32_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_f32_maxpool_minmax_ukernel_9p8x__neon_c4)
36DECLARE_F32_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_f32_maxpool_minmax_ukernel_9p8x__psimd_c4)
37DECLARE_F32_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_f32_maxpool_minmax_ukernel_9p8x__wasm_c1)
38DECLARE_F32_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_f32_maxpool_minmax_ukernel_9p8x__scalar_c1)
XNNPACK Teamb455b122019-09-27 18:10:33 -070039
40
Marat Dukhan99936602020-04-11 16:47:01 -070041#define DECLARE_U8_MAXPOOL_MINMAX_UKERNEL_FUNCTION(fn_name) \
42 XNN_INTERNAL void fn_name( \
43 size_t output_pixels, \
44 size_t kernel_size, \
45 size_t channels, \
46 const uint8_t** input, \
47 size_t input_offset, \
48 uint8_t* output, \
49 size_t input_increment, \
50 size_t output_increment, \
Marat Dukhaneb09a6b2020-04-08 17:34:32 -070051 const union xnn_u8_minmax_params* params);
XNNPACK Teamb455b122019-09-27 18:10:33 -070052
Marat Dukhan99936602020-04-11 16:47:01 -070053DECLARE_U8_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_u8_maxpool_minmax_ukernel_9p8x__neon_c16)
54DECLARE_U8_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_u8_maxpool_minmax_ukernel_9p8x__sse2_c16)
55DECLARE_U8_MAXPOOL_MINMAX_UKERNEL_FUNCTION(xnn_u8_maxpool_minmax_ukernel_9p8x__scalar_c1)
XNNPACK Teamb455b122019-09-27 18:10:33 -070056
57
58#ifdef __cplusplus
Marat Dukhan80fc9322019-09-29 21:06:36 -070059} // extern "C"
XNNPACK Teamb455b122019-09-27 18:10:33 -070060#endif