godot/thirdparty/libwebp/src/dsp/ssim_sse2.c

// Copyright 2017 Google Inc. All Rights Reserved.
//
// Use of this source code is governed by a BSD-style license
// that can be found in the COPYING file in the root of the source
// tree. An additional intellectual property rights grant can be found
// in the file PATENTS. All contributing project authors may
// be found in the AUTHORS file in the root of the source tree.
// -----------------------------------------------------------------------------
//
// SSE2 version of distortion calculation
//
// Author: Skal ([email protected])

#include "src/dsp/dsp.h"

#if defined(WEBP_USE_SSE2)

#include <assert.h>
#include <emmintrin.h>

#include "src/dsp/common_sse2.h"

#if !defined(WEBP_DISABLE_STATS)

// Helper function
static WEBP_INLINE void SubtractAndSquare_SSE2(const __m128i a, const __m128i b,
                                               __m128i* const sum) {}

//------------------------------------------------------------------------------
// SSIM / PSNR entry point

static uint32_t AccumulateSSE_SSE2(const uint8_t* src1,
                                   const uint8_t* src2, int len) {}
#endif  // !defined(WEBP_DISABLE_STATS)

#if !defined(WEBP_REDUCE_SIZE)

static uint32_t HorizontalAdd16b_SSE2(const __m128i* const m) {}

static uint32_t HorizontalAdd32b_SSE2(const __m128i* const m) {}

static const uint16_t kWeight[] =;

#define ACCUMULATE_ROW(WEIGHT)

static double SSIMGet_SSE2(const uint8_t* src1, int stride1,
                           const uint8_t* src2, int stride2) {}

#endif  // !defined(WEBP_REDUCE_SIZE)

extern void VP8SSIMDspInitSSE2(void);

WEBP_TSAN_IGNORE_FUNCTION void VP8SSIMDspInitSSE2(void) {}

#else  // !WEBP_USE_SSE2

WEBP_DSP_INIT_STUB(VP8SSIMDspInitSSE2)

#endif  // WEBP_USE_SSE2