chromium/third_party/xnnpack/src/src/configs/reduce-config.c

// Copyright 2023 Google LLC
//
// This source code is licensed under the BSD-style license found in the
// LICENSE file in the root directory of this source tree.

#include <assert.h>
#include <stddef.h>

#ifdef _WIN32
  #include <windows.h>
#else
  #include <pthread.h>
#endif

#include "xnnpack/common.h"
#include "xnnpack/config.h"
#include "xnnpack/microfnptr.h"
#include "xnnpack/microparams-init.h"
#include "xnnpack/reduce.h"

static struct xnn_reduce_config f16_f32acc_rsum_config =;
static struct xnn_reduce_config f16_f32acc_rdsum_config =;
static struct xnn_reduce_config f16_rminmax_config =;
static struct xnn_reduce_config f32_rminmax_config =;
static struct xnn_reduce_config f32_rsum_config =;
static struct xnn_reduce_config f32_rdsum_config =;

#if XNN_PLATFORM_WINDOWS
  static INIT_ONCE init_guard_f16_f32acc_rsum = INIT_ONCE_STATIC_INIT;
  static INIT_ONCE init_guard_f16_f32acc_rdsum = INIT_ONCE_STATIC_INIT;
  static INIT_ONCE init_guard_f16_rminmax = INIT_ONCE_STATIC_INIT;
  static INIT_ONCE init_guard_f32_rminmax = INIT_ONCE_STATIC_INIT;
  static INIT_ONCE init_guard_f32_rsum = INIT_ONCE_STATIC_INIT;
  static INIT_ONCE init_guard_f32_rdsum = INIT_ONCE_STATIC_INIT;
#else
  static pthread_once_t init_guard_f16_f32acc_rsum =;
  static pthread_once_t init_guard_f16_f32acc_rdsum =;
  static pthread_once_t init_guard_f16_rminmax =;
  static pthread_once_t init_guard_f32_rminmax =;
  static pthread_once_t init_guard_f32_rsum =;
  static pthread_once_t init_guard_f32_rdsum =;
#endif

static void init_f16_f32acc_rsum_config(void) {}

static void init_f16_rminmax_config(void) {}

static void init_f32_rminmax_config(void) {}

static void init_f32_rsum_config(void) {}

static void init_f16_f32acc_rdsum_config(void) {}

static void init_f32_rdsum_config(void) {}

#if XNN_PLATFORM_WINDOWS
  static BOOL CALLBACK init_f16_f32acc_rsum_config_windows(PINIT_ONCE init_once, PVOID parameter, PVOID* context) {
    init_f16_f32acc_rsum_config();
    return TRUE;
  }

  static BOOL CALLBACK init_f16_f32acc_rdsum_config_windows(PINIT_ONCE init_once, PVOID parameter, PVOID* context) {
    init_f16_f32acc_rdsum_config();
    return TRUE;
  }

  static BOOL CALLBACK init_f16_rminmax_config_windows(PINIT_ONCE init_once, PVOID parameter, PVOID* context) {
    init_f16_rminmax_config();
    return TRUE;
  }
  static BOOL CALLBACK init_f32_rminmax_config_windows(PINIT_ONCE init_once, PVOID parameter, PVOID* context) {
    init_f32_rminmax_config();
    return TRUE;
  }

  static BOOL CALLBACK init_f32_rsum_config_windows(PINIT_ONCE init_once, PVOID parameter, PVOID* context) {
    init_f32_rsum_config();
    return TRUE;
  }

  static BOOL CALLBACK init_f32_rdsum_config_windows(PINIT_ONCE init_once, PVOID parameter, PVOID* context) {
    init_f32_rdsum_config();
    return TRUE;
  }
#endif

const struct xnn_reduce_config* xnn_init_f16_f32acc_rsum_config() {}

const struct xnn_reduce_config* xnn_init_f16_rminmax_config() {}

const struct xnn_reduce_config* xnn_init_f32_rminmax_config() {}

const struct xnn_reduce_config* xnn_init_f32_rsum_config() {}

const struct xnn_reduce_config* xnn_init_f16_f32acc_rdsum_config() {}

const struct xnn_reduce_config* xnn_init_f32_rdsum_config() {}