xref: /aosp_15_r20/external/XNNPACK/src/xnnpack/vlog.h (revision 4bdc94577ba0e567308109d787f7fec7b531ce36)
1 // Copyright 2022 Google LLC
2 //
3 // This source code is licensed under the BSD-style license found in the
4 // LICENSE file in the root directory of this source tree.
5 
6 #pragma once
7 
8 #include <stddef.h>
9 #include <stdint.h>
10 
11 #include <xnnpack/common.h>
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 
18 #define DECLARE_U32_VLOG_UKERNEL_FUNCTION(fn_name) \
19   XNN_INTERNAL void fn_name(                       \
20     size_t batch_size,                             \
21     const uint32_t* input,                         \
22     uint32_t input_lshift,                         \
23     uint32_t output_scale,                         \
24     uint16_t* output);
25 
26 
27 DECLARE_U32_VLOG_UKERNEL_FUNCTION(xnn_u32_vlog_ukernel__scalar_x1)
28 DECLARE_U32_VLOG_UKERNEL_FUNCTION(xnn_u32_vlog_ukernel__scalar_x2)
29 DECLARE_U32_VLOG_UKERNEL_FUNCTION(xnn_u32_vlog_ukernel__scalar_x3)
30 DECLARE_U32_VLOG_UKERNEL_FUNCTION(xnn_u32_vlog_ukernel__scalar_x4)
31 
32 #ifdef __cplusplus
33 }  // extern "C"
34 #endif
35