Coverage Report

Created: 2025-11-14 07:32

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/libjxl/lib/jxl/transpose-inl.h
Line
Count
Source
1
// Copyright (c) the JPEG XL Project Authors. All rights reserved.
2
//
3
// Use of this source code is governed by a BSD-style
4
// license that can be found in the LICENSE file.
5
6
// Block transpose for DCT/IDCT
7
8
#include "lib/jxl/base/compiler_specific.h"
9
10
#if defined(LIB_JXL_TRANSPOSE_INL_H_) == defined(HWY_TARGET_TOGGLE)
11
#ifdef LIB_JXL_TRANSPOSE_INL_H_
12
#undef LIB_JXL_TRANSPOSE_INL_H_
13
#else
14
#define LIB_JXL_TRANSPOSE_INL_H_
15
#endif
16
17
#include <stddef.h>
18
19
#include <hwy/highway.h>
20
#include <type_traits>
21
22
#include "lib/jxl/base/status.h"
23
#include "lib/jxl/dct_block-inl.h"
24
25
HWY_BEFORE_NAMESPACE();
26
namespace jxl {
27
namespace HWY_NAMESPACE {
28
namespace {
29
30
#ifndef JXL_INLINE_TRANSPOSE
31
// Workaround for issue #42 - (excessive?) inlining causes invalid codegen.
32
#if defined(__arm__)
33
#define JXL_INLINE_TRANSPOSE HWY_NOINLINE
34
#else
35
#define JXL_INLINE_TRANSPOSE HWY_INLINE
36
#endif
37
#endif  // JXL_INLINE_TRANSPOSE
38
39
// Simple wrapper that ensures that a function will not be inlined.
40
template <typename T, typename... Args>
41
122M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
122M
  return f(args...);
43
122M
}
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Line
Count
Source
41
1.48M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
1.48M
  return f(args...);
43
1.48M
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Line
Count
Source
41
356k
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
356k
  return f(args...);
43
356k
}
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Line
Count
Source
41
1.48M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
1.48M
  return f(args...);
43
1.48M
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Line
Count
Source
41
356k
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
356k
  return f(args...);
43
356k
}
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Line
Count
Source
41
94.9M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
94.9M
  return f(args...);
43
94.9M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Line
Count
Source
41
18.8M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
18.8M
  return f(args...);
43
18.8M
}
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Line
Count
Source
41
4.46M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
4.46M
  return f(args...);
43
4.46M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
Line
Count
Source
41
1.06M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
1.06M
  return f(args...);
43
1.06M
}
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, float* restrict>(void ( const&)(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, float*), jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, float* restrict const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::NoInlineWrapper<void (*)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo, unsigned long, unsigned long>(void (* const&)(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long), jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true> const&, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long const&, unsigned long const&)
44
45
template <bool enabled>
46
struct TransposeSimdTag {};
47
48
// TODO(veluca): it's not super useful to have this in the SIMD namespace.
49
template <size_t ROWS_or_0, size_t COLS_or_0, class From, class To>
50
JXL_INLINE_TRANSPOSE void GenericTransposeBlock(
51
    TransposeSimdTag<false> /* tag */, const From& from, const To& to,
52
628M
    size_t ROWSp, size_t COLSp) {
53
628M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
628M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
3.92G
  for (size_t n = 0; n < ROWS; ++n) {
56
19.6G
    for (size_t m = 0; m < COLS; ++m) {
57
16.3G
      to.Write(from.Read(n, m), m, n);
58
16.3G
    }
59
3.29G
  }
60
628M
}
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
869k
    size_t ROWSp, size_t COLSp) {
53
869k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
869k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
7.82M
  for (size_t n = 0; n < ROWS; ++n) {
56
34.7M
    for (size_t m = 0; m < COLS; ++m) {
57
27.8M
      to.Write(from.Read(n, m), m, n);
58
27.8M
    }
59
6.95M
  }
60
869k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
520k
    size_t ROWSp, size_t COLSp) {
53
520k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
520k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.60M
  for (size_t n = 0; n < ROWS; ++n) {
56
18.7M
    for (size_t m = 0; m < COLS; ++m) {
57
16.6M
      to.Write(from.Read(n, m), m, n);
58
16.6M
    }
59
2.08M
  }
60
520k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
443k
    size_t ROWSp, size_t COLSp) {
53
443k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
443k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.21M
  for (size_t n = 0; n < ROWS; ++n) {
56
8.87M
    for (size_t m = 0; m < COLS; ++m) {
57
7.09M
      to.Write(from.Read(n, m), m, n);
58
7.09M
    }
59
1.77M
  }
60
443k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
534k
    size_t ROWSp, size_t COLSp) {
53
534k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
534k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.06M
  for (size_t n = 0; n < ROWS; ++n) {
56
1.60M
    for (size_t m = 0; m < COLS; ++m) {
57
1.06M
      to.Write(from.Read(n, m), m, n);
58
1.06M
    }
59
534k
  }
60
534k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
276k
    size_t ROWSp, size_t COLSp) {
53
276k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
276k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
829k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.10M
    for (size_t m = 0; m < COLS; ++m) {
57
552k
      to.Write(from.Read(n, m), m, n);
58
552k
    }
59
552k
  }
60
276k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
181k
    size_t ROWSp, size_t COLSp) {
53
181k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
181k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
545k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.09M
    for (size_t m = 0; m < COLS; ++m) {
57
727k
      to.Write(from.Read(n, m), m, n);
58
727k
    }
59
363k
  }
60
181k
}
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
115k
    size_t ROWSp, size_t COLSp) {
53
115k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
115k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
346k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.15M
    for (size_t m = 0; m < COLS; ++m) {
57
924k
      to.Write(from.Read(n, m), m, n);
58
924k
    }
59
231k
  }
60
115k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
57.7k
    size_t ROWSp, size_t COLSp) {
53
57.7k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
57.7k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
288k
  for (size_t n = 0; n < ROWS; ++n) {
56
693k
    for (size_t m = 0; m < COLS; ++m) {
57
462k
      to.Write(from.Read(n, m), m, n);
58
462k
    }
59
231k
  }
60
57.7k
}
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
869k
    size_t ROWSp, size_t COLSp) {
53
869k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
869k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
7.82M
  for (size_t n = 0; n < ROWS; ++n) {
56
34.7M
    for (size_t m = 0; m < COLS; ++m) {
57
27.8M
      to.Write(from.Read(n, m), m, n);
58
27.8M
    }
59
6.95M
  }
60
869k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
520k
    size_t ROWSp, size_t COLSp) {
53
520k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
520k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.60M
  for (size_t n = 0; n < ROWS; ++n) {
56
18.7M
    for (size_t m = 0; m < COLS; ++m) {
57
16.6M
      to.Write(from.Read(n, m), m, n);
58
16.6M
    }
59
2.08M
  }
60
520k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
443k
    size_t ROWSp, size_t COLSp) {
53
443k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
443k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.21M
  for (size_t n = 0; n < ROWS; ++n) {
56
8.87M
    for (size_t m = 0; m < COLS; ++m) {
57
7.09M
      to.Write(from.Read(n, m), m, n);
58
7.09M
    }
59
1.77M
  }
60
443k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
534k
    size_t ROWSp, size_t COLSp) {
53
534k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
534k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.06M
  for (size_t n = 0; n < ROWS; ++n) {
56
1.60M
    for (size_t m = 0; m < COLS; ++m) {
57
1.06M
      to.Write(from.Read(n, m), m, n);
58
1.06M
    }
59
534k
  }
60
534k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
276k
    size_t ROWSp, size_t COLSp) {
53
276k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
276k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
829k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.10M
    for (size_t m = 0; m < COLS; ++m) {
57
552k
      to.Write(from.Read(n, m), m, n);
58
552k
    }
59
552k
  }
60
276k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
181k
    size_t ROWSp, size_t COLSp) {
53
181k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
181k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
545k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.09M
    for (size_t m = 0; m < COLS; ++m) {
57
727k
      to.Write(from.Read(n, m), m, n);
58
727k
    }
59
363k
  }
60
181k
}
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
115k
    size_t ROWSp, size_t COLSp) {
53
115k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
115k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
346k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.15M
    for (size_t m = 0; m < COLS; ++m) {
57
924k
      to.Write(from.Read(n, m), m, n);
58
924k
    }
59
231k
  }
60
115k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
57.7k
    size_t ROWSp, size_t COLSp) {
53
57.7k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
57.7k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
288k
  for (size_t n = 0; n < ROWS; ++n) {
56
693k
    for (size_t m = 0; m < COLS; ++m) {
57
462k
      to.Write(from.Read(n, m), m, n);
58
462k
    }
59
231k
  }
60
57.7k
}
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
195M
    size_t ROWSp, size_t COLSp) {
53
195M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
195M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.75G
  for (size_t n = 0; n < ROWS; ++n) {
56
7.80G
    for (size_t m = 0; m < COLS; ++m) {
57
6.24G
      to.Write(from.Read(n, m), m, n);
58
6.24G
    }
59
1.56G
  }
60
195M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
195M
    size_t ROWSp, size_t COLSp) {
53
195M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
195M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
976M
  for (size_t n = 0; n < ROWS; ++n) {
56
7.02G
    for (size_t m = 0; m < COLS; ++m) {
57
6.24G
      to.Write(from.Read(n, m), m, n);
58
6.24G
    }
59
780M
  }
60
195M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
223M
    size_t ROWSp, size_t COLSp) {
53
223M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
223M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.11G
  for (size_t n = 0; n < ROWS; ++n) {
56
4.46G
    for (size_t m = 0; m < COLS; ++m) {
57
3.56G
      to.Write(from.Read(n, m), m, n);
58
3.56G
    }
59
892M
  }
60
223M
}
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
2.62M
    size_t ROWSp, size_t COLSp) {
53
2.62M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
2.62M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
13.1M
  for (size_t n = 0; n < ROWS; ++n) {
56
94.3M
    for (size_t m = 0; m < COLS; ++m) {
57
83.8M
      to.Write(from.Read(n, m), m, n);
58
83.8M
    }
59
10.4M
  }
60
2.62M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
1.57M
    size_t ROWSp, size_t COLSp) {
53
1.57M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
1.57M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
14.1M
  for (size_t n = 0; n < ROWS; ++n) {
56
63.0M
    for (size_t m = 0; m < COLS; ++m) {
57
50.4M
      to.Write(from.Read(n, m), m, n);
58
50.4M
    }
59
12.6M
  }
60
1.57M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
1.34M
    size_t ROWSp, size_t COLSp) {
53
1.34M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
1.34M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
6.73M
  for (size_t n = 0; n < ROWS; ++n) {
56
26.9M
    for (size_t m = 0; m < COLS; ++m) {
57
21.5M
      to.Write(from.Read(n, m), m, n);
58
21.5M
    }
59
5.38M
  }
60
1.34M
}
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
1.61M
    size_t ROWSp, size_t COLSp) {
53
1.61M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
1.61M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
4.84M
  for (size_t n = 0; n < ROWS; ++n) {
56
6.45M
    for (size_t m = 0; m < COLS; ++m) {
57
3.22M
      to.Write(from.Read(n, m), m, n);
58
3.22M
    }
59
3.22M
  }
60
1.61M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
838k
    size_t ROWSp, size_t COLSp) {
53
838k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
838k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.67M
  for (size_t n = 0; n < ROWS; ++n) {
56
2.51M
    for (size_t m = 0; m < COLS; ++m) {
57
1.67M
      to.Write(from.Read(n, m), m, n);
58
1.67M
    }
59
838k
  }
60
838k
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
547k
    size_t ROWSp, size_t COLSp) {
53
547k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
547k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.64M
  for (size_t n = 0; n < ROWS; ++n) {
56
3.28M
    for (size_t m = 0; m < COLS; ++m) {
57
2.18M
      to.Write(from.Read(n, m), m, n);
58
2.18M
    }
59
1.09M
  }
60
547k
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
816
    size_t ROWSp, size_t COLSp) {
53
816
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
816
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
4.08k
  for (size_t n = 0; n < ROWS; ++n) {
56
6.52k
    for (size_t m = 0; m < COLS; ++m) {
57
3.26k
      to.Write(from.Read(n, m), m, n);
58
3.26k
    }
59
3.26k
  }
60
816
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
108
    size_t ROWSp, size_t COLSp) {
53
108
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
108
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
216
  for (size_t n = 0; n < ROWS; ++n) {
56
540
    for (size_t m = 0; m < COLS; ++m) {
57
432
      to.Write(from.Read(n, m), m, n);
58
432
    }
59
108
  }
60
108
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
346k
    size_t ROWSp, size_t COLSp) {
53
346k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
346k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.73M
  for (size_t n = 0; n < ROWS; ++n) {
56
4.16M
    for (size_t m = 0; m < COLS; ++m) {
57
2.77M
      to.Write(from.Read(n, m), m, n);
58
2.77M
    }
59
1.38M
  }
60
346k
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
52
173k
    size_t ROWSp, size_t COLSp) {
53
173k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
173k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
519k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.73M
    for (size_t m = 0; m < COLS; ++m) {
57
1.38M
      to.Write(from.Read(n, m), m, n);
58
1.38M
    }
59
346k
  }
60
173k
}
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 1ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<1ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 2ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<2ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<false>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
61
62
// TODO(veluca): AVX3?
63
#if HWY_CAP_GE256
64
0
constexpr bool TransposeUseSimd(size_t ROWS, size_t COLS) {
65
0
  return ROWS % 8 == 0 && COLS % 8 == 0;
66
0
}
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::N_AVX2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:jxl::N_AVX2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::N_AVX2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:jxl::N_AVX2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:jxl::N_AVX2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
67
68
template <size_t ROWS_or_0, size_t COLS_or_0, class From, class To>
69
JXL_INLINE_TRANSPOSE void GenericTransposeBlock(
70
    TransposeSimdTag<true> /* tag */, const From& from, const To& to,
71
155M
    size_t ROWSp, size_t COLSp) {
72
155M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
155M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
155M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
155M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
155M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
415M
  for (size_t n = 0; n < ROWS; n += 8) {
78
802M
    for (size_t m = 0; m < COLS; m += 8) {
79
542M
      const BlockDesc<8> d;
80
542M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
542M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
542M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
542M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
542M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
542M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
542M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
542M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
542M
      const auto q0 = InterleaveLower(d, i0, i2);
91
542M
      const auto q1 = InterleaveLower(d, i1, i3);
92
542M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
542M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
542M
      const auto q4 = InterleaveLower(d, i4, i6);
95
542M
      const auto q5 = InterleaveLower(d, i5, i7);
96
542M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
542M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
542M
      const auto r0 = InterleaveLower(d, q0, q1);
100
542M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
542M
      const auto r2 = InterleaveLower(d, q2, q3);
102
542M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
542M
      const auto r4 = InterleaveLower(d, q4, q5);
104
542M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
542M
      const auto r6 = InterleaveLower(d, q6, q7);
106
542M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
542M
      i0 = ConcatLowerLower(d, r4, r0);
109
542M
      i1 = ConcatLowerLower(d, r5, r1);
110
542M
      i2 = ConcatLowerLower(d, r6, r2);
111
542M
      i3 = ConcatLowerLower(d, r7, r3);
112
542M
      i4 = ConcatUpperUpper(d, r4, r0);
113
542M
      i5 = ConcatUpperUpper(d, r5, r1);
114
542M
      i6 = ConcatUpperUpper(d, r6, r2);
115
542M
      i7 = ConcatUpperUpper(d, r7, r3);
116
542M
      to.StorePart(d, i0, m + 0, n + 0);
117
542M
      to.StorePart(d, i1, m + 1, n + 0);
118
542M
      to.StorePart(d, i2, m + 2, n + 0);
119
542M
      to.StorePart(d, i3, m + 3, n + 0);
120
542M
      to.StorePart(d, i4, m + 4, n + 0);
121
542M
      to.StorePart(d, i5, m + 5, n + 0);
122
542M
      to.StorePart(d, i6, m + 6, n + 0);
123
542M
      to.StorePart(d, i7, m + 7, n + 0);
124
542M
    }
125
259M
  }
126
155M
}
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
181k
    size_t ROWSp, size_t COLSp) {
72
181k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
181k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
181k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
181k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
181k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
545k
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.09M
    for (size_t m = 0; m < COLS; m += 8) {
79
727k
      const BlockDesc<8> d;
80
727k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
727k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
727k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
727k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
727k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
727k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
727k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
727k
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
727k
      const auto q0 = InterleaveLower(d, i0, i2);
91
727k
      const auto q1 = InterleaveLower(d, i1, i3);
92
727k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
727k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
727k
      const auto q4 = InterleaveLower(d, i4, i6);
95
727k
      const auto q5 = InterleaveLower(d, i5, i7);
96
727k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
727k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
727k
      const auto r0 = InterleaveLower(d, q0, q1);
100
727k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
727k
      const auto r2 = InterleaveLower(d, q2, q3);
102
727k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
727k
      const auto r4 = InterleaveLower(d, q4, q5);
104
727k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
727k
      const auto r6 = InterleaveLower(d, q6, q7);
106
727k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
727k
      i0 = ConcatLowerLower(d, r4, r0);
109
727k
      i1 = ConcatLowerLower(d, r5, r1);
110
727k
      i2 = ConcatLowerLower(d, r6, r2);
111
727k
      i3 = ConcatLowerLower(d, r7, r3);
112
727k
      i4 = ConcatUpperUpper(d, r4, r0);
113
727k
      i5 = ConcatUpperUpper(d, r5, r1);
114
727k
      i6 = ConcatUpperUpper(d, r6, r2);
115
727k
      i7 = ConcatUpperUpper(d, r7, r3);
116
727k
      to.StorePart(d, i0, m + 0, n + 0);
117
727k
      to.StorePart(d, i1, m + 1, n + 0);
118
727k
      to.StorePart(d, i2, m + 2, n + 0);
119
727k
      to.StorePart(d, i3, m + 3, n + 0);
120
727k
      to.StorePart(d, i4, m + 4, n + 0);
121
727k
      to.StorePart(d, i5, m + 5, n + 0);
122
727k
      to.StorePart(d, i6, m + 6, n + 0);
123
727k
      to.StorePart(d, i7, m + 7, n + 0);
124
727k
    }
125
363k
  }
126
181k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
534k
    size_t ROWSp, size_t COLSp) {
72
534k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
534k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
534k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
534k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
534k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.60M
  for (size_t n = 0; n < ROWS; n += 8) {
78
2.13M
    for (size_t m = 0; m < COLS; m += 8) {
79
1.06M
      const BlockDesc<8> d;
80
1.06M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
1.06M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
1.06M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
1.06M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
1.06M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
1.06M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
1.06M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
1.06M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
1.06M
      const auto q0 = InterleaveLower(d, i0, i2);
91
1.06M
      const auto q1 = InterleaveLower(d, i1, i3);
92
1.06M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
1.06M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
1.06M
      const auto q4 = InterleaveLower(d, i4, i6);
95
1.06M
      const auto q5 = InterleaveLower(d, i5, i7);
96
1.06M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
1.06M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
1.06M
      const auto r0 = InterleaveLower(d, q0, q1);
100
1.06M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
1.06M
      const auto r2 = InterleaveLower(d, q2, q3);
102
1.06M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
1.06M
      const auto r4 = InterleaveLower(d, q4, q5);
104
1.06M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
1.06M
      const auto r6 = InterleaveLower(d, q6, q7);
106
1.06M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
1.06M
      i0 = ConcatLowerLower(d, r4, r0);
109
1.06M
      i1 = ConcatLowerLower(d, r5, r1);
110
1.06M
      i2 = ConcatLowerLower(d, r6, r2);
111
1.06M
      i3 = ConcatLowerLower(d, r7, r3);
112
1.06M
      i4 = ConcatUpperUpper(d, r4, r0);
113
1.06M
      i5 = ConcatUpperUpper(d, r5, r1);
114
1.06M
      i6 = ConcatUpperUpper(d, r6, r2);
115
1.06M
      i7 = ConcatUpperUpper(d, r7, r3);
116
1.06M
      to.StorePart(d, i0, m + 0, n + 0);
117
1.06M
      to.StorePart(d, i1, m + 1, n + 0);
118
1.06M
      to.StorePart(d, i2, m + 2, n + 0);
119
1.06M
      to.StorePart(d, i3, m + 3, n + 0);
120
1.06M
      to.StorePart(d, i4, m + 4, n + 0);
121
1.06M
      to.StorePart(d, i5, m + 5, n + 0);
122
1.06M
      to.StorePart(d, i6, m + 6, n + 0);
123
1.06M
      to.StorePart(d, i7, m + 7, n + 0);
124
1.06M
    }
125
1.06M
  }
126
534k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
276k
    size_t ROWSp, size_t COLSp) {
72
276k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
276k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
276k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
276k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
276k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
552k
  for (size_t n = 0; n < ROWS; n += 8) {
78
829k
    for (size_t m = 0; m < COLS; m += 8) {
79
552k
      const BlockDesc<8> d;
80
552k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
552k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
552k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
552k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
552k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
552k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
552k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
552k
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
552k
      const auto q0 = InterleaveLower(d, i0, i2);
91
552k
      const auto q1 = InterleaveLower(d, i1, i3);
92
552k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
552k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
552k
      const auto q4 = InterleaveLower(d, i4, i6);
95
552k
      const auto q5 = InterleaveLower(d, i5, i7);
96
552k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
552k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
552k
      const auto r0 = InterleaveLower(d, q0, q1);
100
552k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
552k
      const auto r2 = InterleaveLower(d, q2, q3);
102
552k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
552k
      const auto r4 = InterleaveLower(d, q4, q5);
104
552k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
552k
      const auto r6 = InterleaveLower(d, q6, q7);
106
552k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
552k
      i0 = ConcatLowerLower(d, r4, r0);
109
552k
      i1 = ConcatLowerLower(d, r5, r1);
110
552k
      i2 = ConcatLowerLower(d, r6, r2);
111
552k
      i3 = ConcatLowerLower(d, r7, r3);
112
552k
      i4 = ConcatUpperUpper(d, r4, r0);
113
552k
      i5 = ConcatUpperUpper(d, r5, r1);
114
552k
      i6 = ConcatUpperUpper(d, r6, r2);
115
552k
      i7 = ConcatUpperUpper(d, r7, r3);
116
552k
      to.StorePart(d, i0, m + 0, n + 0);
117
552k
      to.StorePart(d, i1, m + 1, n + 0);
118
552k
      to.StorePart(d, i2, m + 2, n + 0);
119
552k
      to.StorePart(d, i3, m + 3, n + 0);
120
552k
      to.StorePart(d, i4, m + 4, n + 0);
121
552k
      to.StorePart(d, i5, m + 5, n + 0);
122
552k
      to.StorePart(d, i6, m + 6, n + 0);
123
552k
      to.StorePart(d, i7, m + 7, n + 0);
124
552k
    }
125
276k
  }
126
276k
}
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
356k
    size_t ROWSp, size_t COLSp) {
72
356k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
356k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
356k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
356k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
356k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.97M
  for (size_t n = 0; n < ROWS; n += 8) {
78
9.02M
    for (size_t m = 0; m < COLS; m += 8) {
79
7.40M
      const BlockDesc<8> d;
80
7.40M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
7.40M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
7.40M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
7.40M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
7.40M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
7.40M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
7.40M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
7.40M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
7.40M
      const auto q0 = InterleaveLower(d, i0, i2);
91
7.40M
      const auto q1 = InterleaveLower(d, i1, i3);
92
7.40M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
7.40M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
7.40M
      const auto q4 = InterleaveLower(d, i4, i6);
95
7.40M
      const auto q5 = InterleaveLower(d, i5, i7);
96
7.40M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
7.40M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
7.40M
      const auto r0 = InterleaveLower(d, q0, q1);
100
7.40M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
7.40M
      const auto r2 = InterleaveLower(d, q2, q3);
102
7.40M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
7.40M
      const auto r4 = InterleaveLower(d, q4, q5);
104
7.40M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
7.40M
      const auto r6 = InterleaveLower(d, q6, q7);
106
7.40M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
7.40M
      i0 = ConcatLowerLower(d, r4, r0);
109
7.40M
      i1 = ConcatLowerLower(d, r5, r1);
110
7.40M
      i2 = ConcatLowerLower(d, r6, r2);
111
7.40M
      i3 = ConcatLowerLower(d, r7, r3);
112
7.40M
      i4 = ConcatUpperUpper(d, r4, r0);
113
7.40M
      i5 = ConcatUpperUpper(d, r5, r1);
114
7.40M
      i6 = ConcatUpperUpper(d, r6, r2);
115
7.40M
      i7 = ConcatUpperUpper(d, r7, r3);
116
7.40M
      to.StorePart(d, i0, m + 0, n + 0);
117
7.40M
      to.StorePart(d, i1, m + 1, n + 0);
118
7.40M
      to.StorePart(d, i2, m + 2, n + 0);
119
7.40M
      to.StorePart(d, i3, m + 3, n + 0);
120
7.40M
      to.StorePart(d, i4, m + 4, n + 0);
121
7.40M
      to.StorePart(d, i5, m + 5, n + 0);
122
7.40M
      to.StorePart(d, i6, m + 6, n + 0);
123
7.40M
      to.StorePart(d, i7, m + 7, n + 0);
124
7.40M
    }
125
1.61M
  }
126
356k
}
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
1.79M
    size_t ROWSp, size_t COLSp) {
72
1.79M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
1.79M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
1.79M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
1.79M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
1.79M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
3.58M
  for (size_t n = 0; n < ROWS; n += 8) {
78
3.58M
    for (size_t m = 0; m < COLS; m += 8) {
79
1.79M
      const BlockDesc<8> d;
80
1.79M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
1.79M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
1.79M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
1.79M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
1.79M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
1.79M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
1.79M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
1.79M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
1.79M
      const auto q0 = InterleaveLower(d, i0, i2);
91
1.79M
      const auto q1 = InterleaveLower(d, i1, i3);
92
1.79M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
1.79M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
1.79M
      const auto q4 = InterleaveLower(d, i4, i6);
95
1.79M
      const auto q5 = InterleaveLower(d, i5, i7);
96
1.79M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
1.79M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
1.79M
      const auto r0 = InterleaveLower(d, q0, q1);
100
1.79M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
1.79M
      const auto r2 = InterleaveLower(d, q2, q3);
102
1.79M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
1.79M
      const auto r4 = InterleaveLower(d, q4, q5);
104
1.79M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
1.79M
      const auto r6 = InterleaveLower(d, q6, q7);
106
1.79M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
1.79M
      i0 = ConcatLowerLower(d, r4, r0);
109
1.79M
      i1 = ConcatLowerLower(d, r5, r1);
110
1.79M
      i2 = ConcatLowerLower(d, r6, r2);
111
1.79M
      i3 = ConcatLowerLower(d, r7, r3);
112
1.79M
      i4 = ConcatUpperUpper(d, r4, r0);
113
1.79M
      i5 = ConcatUpperUpper(d, r5, r1);
114
1.79M
      i6 = ConcatUpperUpper(d, r6, r2);
115
1.79M
      i7 = ConcatUpperUpper(d, r7, r3);
116
1.79M
      to.StorePart(d, i0, m + 0, n + 0);
117
1.79M
      to.StorePart(d, i1, m + 1, n + 0);
118
1.79M
      to.StorePart(d, i2, m + 2, n + 0);
119
1.79M
      to.StorePart(d, i3, m + 3, n + 0);
120
1.79M
      to.StorePart(d, i4, m + 4, n + 0);
121
1.79M
      to.StorePart(d, i5, m + 5, n + 0);
122
1.79M
      to.StorePart(d, i6, m + 6, n + 0);
123
1.79M
      to.StorePart(d, i7, m + 7, n + 0);
124
1.79M
    }
125
1.79M
  }
126
1.79M
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
181k
    size_t ROWSp, size_t COLSp) {
72
181k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
181k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
181k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
181k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
181k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
545k
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.09M
    for (size_t m = 0; m < COLS; m += 8) {
79
727k
      const BlockDesc<8> d;
80
727k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
727k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
727k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
727k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
727k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
727k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
727k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
727k
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
727k
      const auto q0 = InterleaveLower(d, i0, i2);
91
727k
      const auto q1 = InterleaveLower(d, i1, i3);
92
727k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
727k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
727k
      const auto q4 = InterleaveLower(d, i4, i6);
95
727k
      const auto q5 = InterleaveLower(d, i5, i7);
96
727k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
727k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
727k
      const auto r0 = InterleaveLower(d, q0, q1);
100
727k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
727k
      const auto r2 = InterleaveLower(d, q2, q3);
102
727k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
727k
      const auto r4 = InterleaveLower(d, q4, q5);
104
727k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
727k
      const auto r6 = InterleaveLower(d, q6, q7);
106
727k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
727k
      i0 = ConcatLowerLower(d, r4, r0);
109
727k
      i1 = ConcatLowerLower(d, r5, r1);
110
727k
      i2 = ConcatLowerLower(d, r6, r2);
111
727k
      i3 = ConcatLowerLower(d, r7, r3);
112
727k
      i4 = ConcatUpperUpper(d, r4, r0);
113
727k
      i5 = ConcatUpperUpper(d, r5, r1);
114
727k
      i6 = ConcatUpperUpper(d, r6, r2);
115
727k
      i7 = ConcatUpperUpper(d, r7, r3);
116
727k
      to.StorePart(d, i0, m + 0, n + 0);
117
727k
      to.StorePart(d, i1, m + 1, n + 0);
118
727k
      to.StorePart(d, i2, m + 2, n + 0);
119
727k
      to.StorePart(d, i3, m + 3, n + 0);
120
727k
      to.StorePart(d, i4, m + 4, n + 0);
121
727k
      to.StorePart(d, i5, m + 5, n + 0);
122
727k
      to.StorePart(d, i6, m + 6, n + 0);
123
727k
      to.StorePart(d, i7, m + 7, n + 0);
124
727k
    }
125
363k
  }
126
181k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
534k
    size_t ROWSp, size_t COLSp) {
72
534k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
534k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
534k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
534k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
534k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.60M
  for (size_t n = 0; n < ROWS; n += 8) {
78
2.13M
    for (size_t m = 0; m < COLS; m += 8) {
79
1.06M
      const BlockDesc<8> d;
80
1.06M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
1.06M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
1.06M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
1.06M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
1.06M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
1.06M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
1.06M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
1.06M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
1.06M
      const auto q0 = InterleaveLower(d, i0, i2);
91
1.06M
      const auto q1 = InterleaveLower(d, i1, i3);
92
1.06M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
1.06M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
1.06M
      const auto q4 = InterleaveLower(d, i4, i6);
95
1.06M
      const auto q5 = InterleaveLower(d, i5, i7);
96
1.06M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
1.06M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
1.06M
      const auto r0 = InterleaveLower(d, q0, q1);
100
1.06M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
1.06M
      const auto r2 = InterleaveLower(d, q2, q3);
102
1.06M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
1.06M
      const auto r4 = InterleaveLower(d, q4, q5);
104
1.06M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
1.06M
      const auto r6 = InterleaveLower(d, q6, q7);
106
1.06M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
1.06M
      i0 = ConcatLowerLower(d, r4, r0);
109
1.06M
      i1 = ConcatLowerLower(d, r5, r1);
110
1.06M
      i2 = ConcatLowerLower(d, r6, r2);
111
1.06M
      i3 = ConcatLowerLower(d, r7, r3);
112
1.06M
      i4 = ConcatUpperUpper(d, r4, r0);
113
1.06M
      i5 = ConcatUpperUpper(d, r5, r1);
114
1.06M
      i6 = ConcatUpperUpper(d, r6, r2);
115
1.06M
      i7 = ConcatUpperUpper(d, r7, r3);
116
1.06M
      to.StorePart(d, i0, m + 0, n + 0);
117
1.06M
      to.StorePart(d, i1, m + 1, n + 0);
118
1.06M
      to.StorePart(d, i2, m + 2, n + 0);
119
1.06M
      to.StorePart(d, i3, m + 3, n + 0);
120
1.06M
      to.StorePart(d, i4, m + 4, n + 0);
121
1.06M
      to.StorePart(d, i5, m + 5, n + 0);
122
1.06M
      to.StorePart(d, i6, m + 6, n + 0);
123
1.06M
      to.StorePart(d, i7, m + 7, n + 0);
124
1.06M
    }
125
1.06M
  }
126
534k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
276k
    size_t ROWSp, size_t COLSp) {
72
276k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
276k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
276k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
276k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
276k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
552k
  for (size_t n = 0; n < ROWS; n += 8) {
78
829k
    for (size_t m = 0; m < COLS; m += 8) {
79
552k
      const BlockDesc<8> d;
80
552k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
552k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
552k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
552k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
552k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
552k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
552k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
552k
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
552k
      const auto q0 = InterleaveLower(d, i0, i2);
91
552k
      const auto q1 = InterleaveLower(d, i1, i3);
92
552k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
552k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
552k
      const auto q4 = InterleaveLower(d, i4, i6);
95
552k
      const auto q5 = InterleaveLower(d, i5, i7);
96
552k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
552k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
552k
      const auto r0 = InterleaveLower(d, q0, q1);
100
552k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
552k
      const auto r2 = InterleaveLower(d, q2, q3);
102
552k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
552k
      const auto r4 = InterleaveLower(d, q4, q5);
104
552k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
552k
      const auto r6 = InterleaveLower(d, q6, q7);
106
552k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
552k
      i0 = ConcatLowerLower(d, r4, r0);
109
552k
      i1 = ConcatLowerLower(d, r5, r1);
110
552k
      i2 = ConcatLowerLower(d, r6, r2);
111
552k
      i3 = ConcatLowerLower(d, r7, r3);
112
552k
      i4 = ConcatUpperUpper(d, r4, r0);
113
552k
      i5 = ConcatUpperUpper(d, r5, r1);
114
552k
      i6 = ConcatUpperUpper(d, r6, r2);
115
552k
      i7 = ConcatUpperUpper(d, r7, r3);
116
552k
      to.StorePart(d, i0, m + 0, n + 0);
117
552k
      to.StorePart(d, i1, m + 1, n + 0);
118
552k
      to.StorePart(d, i2, m + 2, n + 0);
119
552k
      to.StorePart(d, i3, m + 3, n + 0);
120
552k
      to.StorePart(d, i4, m + 4, n + 0);
121
552k
      to.StorePart(d, i5, m + 5, n + 0);
122
552k
      to.StorePart(d, i6, m + 6, n + 0);
123
552k
      to.StorePart(d, i7, m + 7, n + 0);
124
552k
    }
125
276k
  }
126
276k
}
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
356k
    size_t ROWSp, size_t COLSp) {
72
356k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
356k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
356k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
356k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
356k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.97M
  for (size_t n = 0; n < ROWS; n += 8) {
78
9.02M
    for (size_t m = 0; m < COLS; m += 8) {
79
7.40M
      const BlockDesc<8> d;
80
7.40M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
7.40M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
7.40M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
7.40M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
7.40M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
7.40M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
7.40M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
7.40M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
7.40M
      const auto q0 = InterleaveLower(d, i0, i2);
91
7.40M
      const auto q1 = InterleaveLower(d, i1, i3);
92
7.40M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
7.40M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
7.40M
      const auto q4 = InterleaveLower(d, i4, i6);
95
7.40M
      const auto q5 = InterleaveLower(d, i5, i7);
96
7.40M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
7.40M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
7.40M
      const auto r0 = InterleaveLower(d, q0, q1);
100
7.40M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
7.40M
      const auto r2 = InterleaveLower(d, q2, q3);
102
7.40M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
7.40M
      const auto r4 = InterleaveLower(d, q4, q5);
104
7.40M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
7.40M
      const auto r6 = InterleaveLower(d, q6, q7);
106
7.40M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
7.40M
      i0 = ConcatLowerLower(d, r4, r0);
109
7.40M
      i1 = ConcatLowerLower(d, r5, r1);
110
7.40M
      i2 = ConcatLowerLower(d, r6, r2);
111
7.40M
      i3 = ConcatLowerLower(d, r7, r3);
112
7.40M
      i4 = ConcatUpperUpper(d, r4, r0);
113
7.40M
      i5 = ConcatUpperUpper(d, r5, r1);
114
7.40M
      i6 = ConcatUpperUpper(d, r6, r2);
115
7.40M
      i7 = ConcatUpperUpper(d, r7, r3);
116
7.40M
      to.StorePart(d, i0, m + 0, n + 0);
117
7.40M
      to.StorePart(d, i1, m + 1, n + 0);
118
7.40M
      to.StorePart(d, i2, m + 2, n + 0);
119
7.40M
      to.StorePart(d, i3, m + 3, n + 0);
120
7.40M
      to.StorePart(d, i4, m + 4, n + 0);
121
7.40M
      to.StorePart(d, i5, m + 5, n + 0);
122
7.40M
      to.StorePart(d, i6, m + 6, n + 0);
123
7.40M
      to.StorePart(d, i7, m + 7, n + 0);
124
7.40M
    }
125
1.61M
  }
126
356k
}
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
15.7M
    size_t ROWSp, size_t COLSp) {
72
15.7M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
15.7M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
15.7M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
15.7M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
15.7M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
31.4M
  for (size_t n = 0; n < ROWS; n += 8) {
78
31.4M
    for (size_t m = 0; m < COLS; m += 8) {
79
15.7M
      const BlockDesc<8> d;
80
15.7M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
15.7M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
15.7M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
15.7M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
15.7M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
15.7M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
15.7M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
15.7M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
15.7M
      const auto q0 = InterleaveLower(d, i0, i2);
91
15.7M
      const auto q1 = InterleaveLower(d, i1, i3);
92
15.7M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
15.7M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
15.7M
      const auto q4 = InterleaveLower(d, i4, i6);
95
15.7M
      const auto q5 = InterleaveLower(d, i5, i7);
96
15.7M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
15.7M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
15.7M
      const auto r0 = InterleaveLower(d, q0, q1);
100
15.7M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
15.7M
      const auto r2 = InterleaveLower(d, q2, q3);
102
15.7M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
15.7M
      const auto r4 = InterleaveLower(d, q4, q5);
104
15.7M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
15.7M
      const auto r6 = InterleaveLower(d, q6, q7);
106
15.7M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
15.7M
      i0 = ConcatLowerLower(d, r4, r0);
109
15.7M
      i1 = ConcatLowerLower(d, r5, r1);
110
15.7M
      i2 = ConcatLowerLower(d, r6, r2);
111
15.7M
      i3 = ConcatLowerLower(d, r7, r3);
112
15.7M
      i4 = ConcatUpperUpper(d, r4, r0);
113
15.7M
      i5 = ConcatUpperUpper(d, r5, r1);
114
15.7M
      i6 = ConcatUpperUpper(d, r6, r2);
115
15.7M
      i7 = ConcatUpperUpper(d, r7, r3);
116
15.7M
      to.StorePart(d, i0, m + 0, n + 0);
117
15.7M
      to.StorePart(d, i1, m + 1, n + 0);
118
15.7M
      to.StorePart(d, i2, m + 2, n + 0);
119
15.7M
      to.StorePart(d, i3, m + 3, n + 0);
120
15.7M
      to.StorePart(d, i4, m + 4, n + 0);
121
15.7M
      to.StorePart(d, i5, m + 5, n + 0);
122
15.7M
      to.StorePart(d, i6, m + 6, n + 0);
123
15.7M
      to.StorePart(d, i7, m + 7, n + 0);
124
15.7M
    }
125
15.7M
  }
126
15.7M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
11.3M
    size_t ROWSp, size_t COLSp) {
72
11.3M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
11.3M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
11.3M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
11.3M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
11.3M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
34.1M
  for (size_t n = 0; n < ROWS; n += 8) {
78
68.3M
    for (size_t m = 0; m < COLS; m += 8) {
79
45.5M
      const BlockDesc<8> d;
80
45.5M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
45.5M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
45.5M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
45.5M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
45.5M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
45.5M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
45.5M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
45.5M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
45.5M
      const auto q0 = InterleaveLower(d, i0, i2);
91
45.5M
      const auto q1 = InterleaveLower(d, i1, i3);
92
45.5M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
45.5M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
45.5M
      const auto q4 = InterleaveLower(d, i4, i6);
95
45.5M
      const auto q5 = InterleaveLower(d, i5, i7);
96
45.5M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
45.5M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
45.5M
      const auto r0 = InterleaveLower(d, q0, q1);
100
45.5M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
45.5M
      const auto r2 = InterleaveLower(d, q2, q3);
102
45.5M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
45.5M
      const auto r4 = InterleaveLower(d, q4, q5);
104
45.5M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
45.5M
      const auto r6 = InterleaveLower(d, q6, q7);
106
45.5M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
45.5M
      i0 = ConcatLowerLower(d, r4, r0);
109
45.5M
      i1 = ConcatLowerLower(d, r5, r1);
110
45.5M
      i2 = ConcatLowerLower(d, r6, r2);
111
45.5M
      i3 = ConcatLowerLower(d, r7, r3);
112
45.5M
      i4 = ConcatUpperUpper(d, r4, r0);
113
45.5M
      i5 = ConcatUpperUpper(d, r5, r1);
114
45.5M
      i6 = ConcatUpperUpper(d, r6, r2);
115
45.5M
      i7 = ConcatUpperUpper(d, r7, r3);
116
45.5M
      to.StorePart(d, i0, m + 0, n + 0);
117
45.5M
      to.StorePart(d, i1, m + 1, n + 0);
118
45.5M
      to.StorePart(d, i2, m + 2, n + 0);
119
45.5M
      to.StorePart(d, i3, m + 3, n + 0);
120
45.5M
      to.StorePart(d, i4, m + 4, n + 0);
121
45.5M
      to.StorePart(d, i5, m + 5, n + 0);
122
45.5M
      to.StorePart(d, i6, m + 6, n + 0);
123
45.5M
      to.StorePart(d, i7, m + 7, n + 0);
124
45.5M
    }
125
22.7M
  }
126
11.3M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
33.6M
    size_t ROWSp, size_t COLSp) {
72
33.6M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
33.6M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
33.6M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
33.6M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
33.6M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
100M
  for (size_t n = 0; n < ROWS; n += 8) {
78
134M
    for (size_t m = 0; m < COLS; m += 8) {
79
67.3M
      const BlockDesc<8> d;
80
67.3M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
67.3M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
67.3M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
67.3M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
67.3M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
67.3M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
67.3M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
67.3M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
67.3M
      const auto q0 = InterleaveLower(d, i0, i2);
91
67.3M
      const auto q1 = InterleaveLower(d, i1, i3);
92
67.3M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
67.3M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
67.3M
      const auto q4 = InterleaveLower(d, i4, i6);
95
67.3M
      const auto q5 = InterleaveLower(d, i5, i7);
96
67.3M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
67.3M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
67.3M
      const auto r0 = InterleaveLower(d, q0, q1);
100
67.3M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
67.3M
      const auto r2 = InterleaveLower(d, q2, q3);
102
67.3M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
67.3M
      const auto r4 = InterleaveLower(d, q4, q5);
104
67.3M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
67.3M
      const auto r6 = InterleaveLower(d, q6, q7);
106
67.3M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
67.3M
      i0 = ConcatLowerLower(d, r4, r0);
109
67.3M
      i1 = ConcatLowerLower(d, r5, r1);
110
67.3M
      i2 = ConcatLowerLower(d, r6, r2);
111
67.3M
      i3 = ConcatLowerLower(d, r7, r3);
112
67.3M
      i4 = ConcatUpperUpper(d, r4, r0);
113
67.3M
      i5 = ConcatUpperUpper(d, r5, r1);
114
67.3M
      i6 = ConcatUpperUpper(d, r6, r2);
115
67.3M
      i7 = ConcatUpperUpper(d, r7, r3);
116
67.3M
      to.StorePart(d, i0, m + 0, n + 0);
117
67.3M
      to.StorePart(d, i1, m + 1, n + 0);
118
67.3M
      to.StorePart(d, i2, m + 2, n + 0);
119
67.3M
      to.StorePart(d, i3, m + 3, n + 0);
120
67.3M
      to.StorePart(d, i4, m + 4, n + 0);
121
67.3M
      to.StorePart(d, i5, m + 5, n + 0);
122
67.3M
      to.StorePart(d, i6, m + 6, n + 0);
123
67.3M
      to.StorePart(d, i7, m + 7, n + 0);
124
67.3M
    }
125
67.3M
  }
126
33.6M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
33.6M
    size_t ROWSp, size_t COLSp) {
72
33.6M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
33.6M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
33.6M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
33.6M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
33.6M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
67.3M
  for (size_t n = 0; n < ROWS; n += 8) {
78
100M
    for (size_t m = 0; m < COLS; m += 8) {
79
67.3M
      const BlockDesc<8> d;
80
67.3M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
67.3M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
67.3M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
67.3M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
67.3M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
67.3M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
67.3M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
67.3M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
67.3M
      const auto q0 = InterleaveLower(d, i0, i2);
91
67.3M
      const auto q1 = InterleaveLower(d, i1, i3);
92
67.3M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
67.3M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
67.3M
      const auto q4 = InterleaveLower(d, i4, i6);
95
67.3M
      const auto q5 = InterleaveLower(d, i5, i7);
96
67.3M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
67.3M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
67.3M
      const auto r0 = InterleaveLower(d, q0, q1);
100
67.3M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
67.3M
      const auto r2 = InterleaveLower(d, q2, q3);
102
67.3M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
67.3M
      const auto r4 = InterleaveLower(d, q4, q5);
104
67.3M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
67.3M
      const auto r6 = InterleaveLower(d, q6, q7);
106
67.3M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
67.3M
      i0 = ConcatLowerLower(d, r4, r0);
109
67.3M
      i1 = ConcatLowerLower(d, r5, r1);
110
67.3M
      i2 = ConcatLowerLower(d, r6, r2);
111
67.3M
      i3 = ConcatLowerLower(d, r7, r3);
112
67.3M
      i4 = ConcatUpperUpper(d, r4, r0);
113
67.3M
      i5 = ConcatUpperUpper(d, r5, r1);
114
67.3M
      i6 = ConcatUpperUpper(d, r6, r2);
115
67.3M
      i7 = ConcatUpperUpper(d, r7, r3);
116
67.3M
      to.StorePart(d, i0, m + 0, n + 0);
117
67.3M
      to.StorePart(d, i1, m + 1, n + 0);
118
67.3M
      to.StorePart(d, i2, m + 2, n + 0);
119
67.3M
      to.StorePart(d, i3, m + 3, n + 0);
120
67.3M
      to.StorePart(d, i4, m + 4, n + 0);
121
67.3M
      to.StorePart(d, i5, m + 5, n + 0);
122
67.3M
      to.StorePart(d, i6, m + 6, n + 0);
123
67.3M
      to.StorePart(d, i7, m + 7, n + 0);
124
67.3M
    }
125
33.6M
  }
126
33.6M
}
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
18.8M
    size_t ROWSp, size_t COLSp) {
72
18.8M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
18.8M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
18.8M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
18.8M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
18.8M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
88.4M
  for (size_t n = 0; n < ROWS; n += 8) {
78
331M
    for (size_t m = 0; m < COLS; m += 8) {
79
262M
      const BlockDesc<8> d;
80
262M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
262M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
262M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
262M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
262M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
262M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
262M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
262M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
262M
      const auto q0 = InterleaveLower(d, i0, i2);
91
262M
      const auto q1 = InterleaveLower(d, i1, i3);
92
262M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
262M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
262M
      const auto q4 = InterleaveLower(d, i4, i6);
95
262M
      const auto q5 = InterleaveLower(d, i5, i7);
96
262M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
262M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
262M
      const auto r0 = InterleaveLower(d, q0, q1);
100
262M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
262M
      const auto r2 = InterleaveLower(d, q2, q3);
102
262M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
262M
      const auto r4 = InterleaveLower(d, q4, q5);
104
262M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
262M
      const auto r6 = InterleaveLower(d, q6, q7);
106
262M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
262M
      i0 = ConcatLowerLower(d, r4, r0);
109
262M
      i1 = ConcatLowerLower(d, r5, r1);
110
262M
      i2 = ConcatLowerLower(d, r6, r2);
111
262M
      i3 = ConcatLowerLower(d, r7, r3);
112
262M
      i4 = ConcatUpperUpper(d, r4, r0);
113
262M
      i5 = ConcatUpperUpper(d, r5, r1);
114
262M
      i6 = ConcatUpperUpper(d, r6, r2);
115
262M
      i7 = ConcatUpperUpper(d, r7, r3);
116
262M
      to.StorePart(d, i0, m + 0, n + 0);
117
262M
      to.StorePart(d, i1, m + 1, n + 0);
118
262M
      to.StorePart(d, i2, m + 2, n + 0);
119
262M
      to.StorePart(d, i3, m + 3, n + 0);
120
262M
      to.StorePart(d, i4, m + 4, n + 0);
121
262M
      to.StorePart(d, i5, m + 5, n + 0);
122
262M
      to.StorePart(d, i6, m + 6, n + 0);
123
262M
      to.StorePart(d, i7, m + 7, n + 0);
124
262M
    }
125
69.6M
  }
126
18.8M
}
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
27.8M
    size_t ROWSp, size_t COLSp) {
72
27.8M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
27.8M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
27.8M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
27.8M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
27.8M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
55.7M
  for (size_t n = 0; n < ROWS; n += 8) {
78
55.7M
    for (size_t m = 0; m < COLS; m += 8) {
79
27.8M
      const BlockDesc<8> d;
80
27.8M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
27.8M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
27.8M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
27.8M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
27.8M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
27.8M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
27.8M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
27.8M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
27.8M
      const auto q0 = InterleaveLower(d, i0, i2);
91
27.8M
      const auto q1 = InterleaveLower(d, i1, i3);
92
27.8M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
27.8M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
27.8M
      const auto q4 = InterleaveLower(d, i4, i6);
95
27.8M
      const auto q5 = InterleaveLower(d, i5, i7);
96
27.8M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
27.8M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
27.8M
      const auto r0 = InterleaveLower(d, q0, q1);
100
27.8M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
27.8M
      const auto r2 = InterleaveLower(d, q2, q3);
102
27.8M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
27.8M
      const auto r4 = InterleaveLower(d, q4, q5);
104
27.8M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
27.8M
      const auto r6 = InterleaveLower(d, q6, q7);
106
27.8M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
27.8M
      i0 = ConcatLowerLower(d, r4, r0);
109
27.8M
      i1 = ConcatLowerLower(d, r5, r1);
110
27.8M
      i2 = ConcatLowerLower(d, r6, r2);
111
27.8M
      i3 = ConcatLowerLower(d, r7, r3);
112
27.8M
      i4 = ConcatUpperUpper(d, r4, r0);
113
27.8M
      i5 = ConcatUpperUpper(d, r5, r1);
114
27.8M
      i6 = ConcatUpperUpper(d, r6, r2);
115
27.8M
      i7 = ConcatUpperUpper(d, r7, r3);
116
27.8M
      to.StorePart(d, i0, m + 0, n + 0);
117
27.8M
      to.StorePart(d, i1, m + 1, n + 0);
118
27.8M
      to.StorePart(d, i2, m + 2, n + 0);
119
27.8M
      to.StorePart(d, i3, m + 3, n + 0);
120
27.8M
      to.StorePart(d, i4, m + 4, n + 0);
121
27.8M
      to.StorePart(d, i5, m + 5, n + 0);
122
27.8M
      to.StorePart(d, i6, m + 6, n + 0);
123
27.8M
      to.StorePart(d, i7, m + 7, n + 0);
124
27.8M
    }
125
27.8M
  }
126
27.8M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
547k
    size_t ROWSp, size_t COLSp) {
72
547k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
547k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
547k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
547k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
547k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.64M
  for (size_t n = 0; n < ROWS; n += 8) {
78
3.28M
    for (size_t m = 0; m < COLS; m += 8) {
79
2.18M
      const BlockDesc<8> d;
80
2.18M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
2.18M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
2.18M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
2.18M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
2.18M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
2.18M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
2.18M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
2.18M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
2.18M
      const auto q0 = InterleaveLower(d, i0, i2);
91
2.18M
      const auto q1 = InterleaveLower(d, i1, i3);
92
2.18M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
2.18M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
2.18M
      const auto q4 = InterleaveLower(d, i4, i6);
95
2.18M
      const auto q5 = InterleaveLower(d, i5, i7);
96
2.18M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
2.18M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
2.18M
      const auto r0 = InterleaveLower(d, q0, q1);
100
2.18M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
2.18M
      const auto r2 = InterleaveLower(d, q2, q3);
102
2.18M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
2.18M
      const auto r4 = InterleaveLower(d, q4, q5);
104
2.18M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
2.18M
      const auto r6 = InterleaveLower(d, q6, q7);
106
2.18M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
2.18M
      i0 = ConcatLowerLower(d, r4, r0);
109
2.18M
      i1 = ConcatLowerLower(d, r5, r1);
110
2.18M
      i2 = ConcatLowerLower(d, r6, r2);
111
2.18M
      i3 = ConcatLowerLower(d, r7, r3);
112
2.18M
      i4 = ConcatUpperUpper(d, r4, r0);
113
2.18M
      i5 = ConcatUpperUpper(d, r5, r1);
114
2.18M
      i6 = ConcatUpperUpper(d, r6, r2);
115
2.18M
      i7 = ConcatUpperUpper(d, r7, r3);
116
2.18M
      to.StorePart(d, i0, m + 0, n + 0);
117
2.18M
      to.StorePart(d, i1, m + 1, n + 0);
118
2.18M
      to.StorePart(d, i2, m + 2, n + 0);
119
2.18M
      to.StorePart(d, i3, m + 3, n + 0);
120
2.18M
      to.StorePart(d, i4, m + 4, n + 0);
121
2.18M
      to.StorePart(d, i5, m + 5, n + 0);
122
2.18M
      to.StorePart(d, i6, m + 6, n + 0);
123
2.18M
      to.StorePart(d, i7, m + 7, n + 0);
124
2.18M
    }
125
1.09M
  }
126
547k
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
1.61M
    size_t ROWSp, size_t COLSp) {
72
1.61M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
1.61M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
1.61M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
1.61M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
1.61M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
3.22M
  for (size_t n = 0; n < ROWS; n += 8) {
78
4.84M
    for (size_t m = 0; m < COLS; m += 8) {
79
3.22M
      const BlockDesc<8> d;
80
3.22M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
3.22M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
3.22M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
3.22M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
3.22M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
3.22M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
3.22M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
3.22M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
3.22M
      const auto q0 = InterleaveLower(d, i0, i2);
91
3.22M
      const auto q1 = InterleaveLower(d, i1, i3);
92
3.22M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
3.22M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
3.22M
      const auto q4 = InterleaveLower(d, i4, i6);
95
3.22M
      const auto q5 = InterleaveLower(d, i5, i7);
96
3.22M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
3.22M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
3.22M
      const auto r0 = InterleaveLower(d, q0, q1);
100
3.22M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
3.22M
      const auto r2 = InterleaveLower(d, q2, q3);
102
3.22M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
3.22M
      const auto r4 = InterleaveLower(d, q4, q5);
104
3.22M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
3.22M
      const auto r6 = InterleaveLower(d, q6, q7);
106
3.22M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
3.22M
      i0 = ConcatLowerLower(d, r4, r0);
109
3.22M
      i1 = ConcatLowerLower(d, r5, r1);
110
3.22M
      i2 = ConcatLowerLower(d, r6, r2);
111
3.22M
      i3 = ConcatLowerLower(d, r7, r3);
112
3.22M
      i4 = ConcatUpperUpper(d, r4, r0);
113
3.22M
      i5 = ConcatUpperUpper(d, r5, r1);
114
3.22M
      i6 = ConcatUpperUpper(d, r6, r2);
115
3.22M
      i7 = ConcatUpperUpper(d, r7, r3);
116
3.22M
      to.StorePart(d, i0, m + 0, n + 0);
117
3.22M
      to.StorePart(d, i1, m + 1, n + 0);
118
3.22M
      to.StorePart(d, i2, m + 2, n + 0);
119
3.22M
      to.StorePart(d, i3, m + 3, n + 0);
120
3.22M
      to.StorePart(d, i4, m + 4, n + 0);
121
3.22M
      to.StorePart(d, i5, m + 5, n + 0);
122
3.22M
      to.StorePart(d, i6, m + 6, n + 0);
123
3.22M
      to.StorePart(d, i7, m + 7, n + 0);
124
3.22M
    }
125
1.61M
  }
126
1.61M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
838k
    size_t ROWSp, size_t COLSp) {
72
838k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
838k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
838k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
838k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
838k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
2.51M
  for (size_t n = 0; n < ROWS; n += 8) {
78
3.35M
    for (size_t m = 0; m < COLS; m += 8) {
79
1.67M
      const BlockDesc<8> d;
80
1.67M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
1.67M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
1.67M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
1.67M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
1.67M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
1.67M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
1.67M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
1.67M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
1.67M
      const auto q0 = InterleaveLower(d, i0, i2);
91
1.67M
      const auto q1 = InterleaveLower(d, i1, i3);
92
1.67M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
1.67M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
1.67M
      const auto q4 = InterleaveLower(d, i4, i6);
95
1.67M
      const auto q5 = InterleaveLower(d, i5, i7);
96
1.67M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
1.67M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
1.67M
      const auto r0 = InterleaveLower(d, q0, q1);
100
1.67M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
1.67M
      const auto r2 = InterleaveLower(d, q2, q3);
102
1.67M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
1.67M
      const auto r4 = InterleaveLower(d, q4, q5);
104
1.67M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
1.67M
      const auto r6 = InterleaveLower(d, q6, q7);
106
1.67M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
1.67M
      i0 = ConcatLowerLower(d, r4, r0);
109
1.67M
      i1 = ConcatLowerLower(d, r5, r1);
110
1.67M
      i2 = ConcatLowerLower(d, r6, r2);
111
1.67M
      i3 = ConcatLowerLower(d, r7, r3);
112
1.67M
      i4 = ConcatUpperUpper(d, r4, r0);
113
1.67M
      i5 = ConcatUpperUpper(d, r5, r1);
114
1.67M
      i6 = ConcatUpperUpper(d, r6, r2);
115
1.67M
      i7 = ConcatUpperUpper(d, r7, r3);
116
1.67M
      to.StorePart(d, i0, m + 0, n + 0);
117
1.67M
      to.StorePart(d, i1, m + 1, n + 0);
118
1.67M
      to.StorePart(d, i2, m + 2, n + 0);
119
1.67M
      to.StorePart(d, i3, m + 3, n + 0);
120
1.67M
      to.StorePart(d, i4, m + 4, n + 0);
121
1.67M
      to.StorePart(d, i5, m + 5, n + 0);
122
1.67M
      to.StorePart(d, i6, m + 6, n + 0);
123
1.67M
      to.StorePart(d, i7, m + 7, n + 0);
124
1.67M
    }
125
1.67M
  }
126
838k
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
816
    size_t ROWSp, size_t COLSp) {
72
816
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
816
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
816
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
816
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
816
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.63k
  for (size_t n = 0; n < ROWS; n += 8) {
78
4.08k
    for (size_t m = 0; m < COLS; m += 8) {
79
3.26k
      const BlockDesc<8> d;
80
3.26k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
3.26k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
3.26k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
3.26k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
3.26k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
3.26k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
3.26k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
3.26k
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
3.26k
      const auto q0 = InterleaveLower(d, i0, i2);
91
3.26k
      const auto q1 = InterleaveLower(d, i1, i3);
92
3.26k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
3.26k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
3.26k
      const auto q4 = InterleaveLower(d, i4, i6);
95
3.26k
      const auto q5 = InterleaveLower(d, i5, i7);
96
3.26k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
3.26k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
3.26k
      const auto r0 = InterleaveLower(d, q0, q1);
100
3.26k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
3.26k
      const auto r2 = InterleaveLower(d, q2, q3);
102
3.26k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
3.26k
      const auto r4 = InterleaveLower(d, q4, q5);
104
3.26k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
3.26k
      const auto r6 = InterleaveLower(d, q6, q7);
106
3.26k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
3.26k
      i0 = ConcatLowerLower(d, r4, r0);
109
3.26k
      i1 = ConcatLowerLower(d, r5, r1);
110
3.26k
      i2 = ConcatLowerLower(d, r6, r2);
111
3.26k
      i3 = ConcatLowerLower(d, r7, r3);
112
3.26k
      i4 = ConcatUpperUpper(d, r4, r0);
113
3.26k
      i5 = ConcatUpperUpper(d, r5, r1);
114
3.26k
      i6 = ConcatUpperUpper(d, r6, r2);
115
3.26k
      i7 = ConcatUpperUpper(d, r7, r3);
116
3.26k
      to.StorePart(d, i0, m + 0, n + 0);
117
3.26k
      to.StorePart(d, i1, m + 1, n + 0);
118
3.26k
      to.StorePart(d, i2, m + 2, n + 0);
119
3.26k
      to.StorePart(d, i3, m + 3, n + 0);
120
3.26k
      to.StorePart(d, i4, m + 4, n + 0);
121
3.26k
      to.StorePart(d, i5, m + 5, n + 0);
122
3.26k
      to.StorePart(d, i6, m + 6, n + 0);
123
3.26k
      to.StorePart(d, i7, m + 7, n + 0);
124
3.26k
    }
125
816
  }
126
816
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
108
    size_t ROWSp, size_t COLSp) {
72
108
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
108
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
108
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
108
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
108
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
540
  for (size_t n = 0; n < ROWS; n += 8) {
78
864
    for (size_t m = 0; m < COLS; m += 8) {
79
432
      const BlockDesc<8> d;
80
432
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
432
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
432
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
432
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
432
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
432
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
432
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
432
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
432
      const auto q0 = InterleaveLower(d, i0, i2);
91
432
      const auto q1 = InterleaveLower(d, i1, i3);
92
432
      const auto q2 = InterleaveUpper(d, i0, i2);
93
432
      const auto q3 = InterleaveUpper(d, i1, i3);
94
432
      const auto q4 = InterleaveLower(d, i4, i6);
95
432
      const auto q5 = InterleaveLower(d, i5, i7);
96
432
      const auto q6 = InterleaveUpper(d, i4, i6);
97
432
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
432
      const auto r0 = InterleaveLower(d, q0, q1);
100
432
      const auto r1 = InterleaveUpper(d, q0, q1);
101
432
      const auto r2 = InterleaveLower(d, q2, q3);
102
432
      const auto r3 = InterleaveUpper(d, q2, q3);
103
432
      const auto r4 = InterleaveLower(d, q4, q5);
104
432
      const auto r5 = InterleaveUpper(d, q4, q5);
105
432
      const auto r6 = InterleaveLower(d, q6, q7);
106
432
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
432
      i0 = ConcatLowerLower(d, r4, r0);
109
432
      i1 = ConcatLowerLower(d, r5, r1);
110
432
      i2 = ConcatLowerLower(d, r6, r2);
111
432
      i3 = ConcatLowerLower(d, r7, r3);
112
432
      i4 = ConcatUpperUpper(d, r4, r0);
113
432
      i5 = ConcatUpperUpper(d, r5, r1);
114
432
      i6 = ConcatUpperUpper(d, r6, r2);
115
432
      i7 = ConcatUpperUpper(d, r7, r3);
116
432
      to.StorePart(d, i0, m + 0, n + 0);
117
432
      to.StorePart(d, i1, m + 1, n + 0);
118
432
      to.StorePart(d, i2, m + 2, n + 0);
119
432
      to.StorePart(d, i3, m + 3, n + 0);
120
432
      to.StorePart(d, i4, m + 4, n + 0);
121
432
      to.StorePart(d, i5, m + 5, n + 0);
122
432
      to.StorePart(d, i6, m + 6, n + 0);
123
432
      to.StorePart(d, i7, m + 7, n + 0);
124
432
    }
125
432
  }
126
108
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
1.06M
    size_t ROWSp, size_t COLSp) {
72
1.06M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
1.06M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
1.06M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
1.06M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
1.06M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
5.38M
  for (size_t n = 0; n < ROWS; n += 8) {
78
26.5M
    for (size_t m = 0; m < COLS; m += 8) {
79
22.2M
      const BlockDesc<8> d;
80
22.2M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
22.2M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
22.2M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
22.2M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
22.2M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
22.2M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
22.2M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
22.2M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
22.2M
      const auto q0 = InterleaveLower(d, i0, i2);
91
22.2M
      const auto q1 = InterleaveLower(d, i1, i3);
92
22.2M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
22.2M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
22.2M
      const auto q4 = InterleaveLower(d, i4, i6);
95
22.2M
      const auto q5 = InterleaveLower(d, i5, i7);
96
22.2M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
22.2M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
22.2M
      const auto r0 = InterleaveLower(d, q0, q1);
100
22.2M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
22.2M
      const auto r2 = InterleaveLower(d, q2, q3);
102
22.2M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
22.2M
      const auto r4 = InterleaveLower(d, q4, q5);
104
22.2M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
22.2M
      const auto r6 = InterleaveLower(d, q6, q7);
106
22.2M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
22.2M
      i0 = ConcatLowerLower(d, r4, r0);
109
22.2M
      i1 = ConcatLowerLower(d, r5, r1);
110
22.2M
      i2 = ConcatLowerLower(d, r6, r2);
111
22.2M
      i3 = ConcatLowerLower(d, r7, r3);
112
22.2M
      i4 = ConcatUpperUpper(d, r4, r0);
113
22.2M
      i5 = ConcatUpperUpper(d, r5, r1);
114
22.2M
      i6 = ConcatUpperUpper(d, r6, r2);
115
22.2M
      i7 = ConcatUpperUpper(d, r7, r3);
116
22.2M
      to.StorePart(d, i0, m + 0, n + 0);
117
22.2M
      to.StorePart(d, i1, m + 1, n + 0);
118
22.2M
      to.StorePart(d, i2, m + 2, n + 0);
119
22.2M
      to.StorePart(d, i3, m + 3, n + 0);
120
22.2M
      to.StorePart(d, i4, m + 4, n + 0);
121
22.2M
      to.StorePart(d, i5, m + 5, n + 0);
122
22.2M
      to.StorePart(d, i6, m + 6, n + 0);
123
22.2M
      to.StorePart(d, i7, m + 7, n + 0);
124
22.2M
    }
125
4.31M
  }
126
1.06M
}
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Line
Count
Source
71
5.77M
    size_t ROWSp, size_t COLSp) {
72
5.77M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
5.77M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
5.77M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
5.77M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
5.77M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
11.5M
  for (size_t n = 0; n < ROWS; n += 8) {
78
11.5M
    for (size_t m = 0; m < COLS; m += 8) {
79
5.77M
      const BlockDesc<8> d;
80
5.77M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
5.77M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
5.77M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
5.77M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
5.77M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
5.77M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
5.77M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
5.77M
      auto i7 = from.LoadPart(d, n + 7, m + 0);
88
      // Surprisingly, this straightforward implementation (24 cycles on port5)
89
      // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend.
90
5.77M
      const auto q0 = InterleaveLower(d, i0, i2);
91
5.77M
      const auto q1 = InterleaveLower(d, i1, i3);
92
5.77M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
5.77M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
5.77M
      const auto q4 = InterleaveLower(d, i4, i6);
95
5.77M
      const auto q5 = InterleaveLower(d, i5, i7);
96
5.77M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
5.77M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
5.77M
      const auto r0 = InterleaveLower(d, q0, q1);
100
5.77M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
5.77M
      const auto r2 = InterleaveLower(d, q2, q3);
102
5.77M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
5.77M
      const auto r4 = InterleaveLower(d, q4, q5);
104
5.77M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
5.77M
      const auto r6 = InterleaveLower(d, q6, q7);
106
5.77M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
5.77M
      i0 = ConcatLowerLower(d, r4, r0);
109
5.77M
      i1 = ConcatLowerLower(d, r5, r1);
110
5.77M
      i2 = ConcatLowerLower(d, r6, r2);
111
5.77M
      i3 = ConcatLowerLower(d, r7, r3);
112
5.77M
      i4 = ConcatUpperUpper(d, r4, r0);
113
5.77M
      i5 = ConcatUpperUpper(d, r5, r1);
114
5.77M
      i6 = ConcatUpperUpper(d, r6, r2);
115
5.77M
      i7 = ConcatUpperUpper(d, r7, r3);
116
5.77M
      to.StorePart(d, i0, m + 0, n + 0);
117
5.77M
      to.StorePart(d, i1, m + 1, n + 0);
118
5.77M
      to.StorePart(d, i2, m + 2, n + 0);
119
5.77M
      to.StorePart(d, i3, m + 3, n + 0);
120
5.77M
      to.StorePart(d, i4, m + 4, n + 0);
121
5.77M
      to.StorePart(d, i5, m + 5, n + 0);
122
5.77M
      to.StorePart(d, i6, m + 6, n + 0);
123
5.77M
      to.StorePart(d, i7, m + 7, n + 0);
124
5.77M
    }
125
5.77M
  }
126
5.77M
}
127
#elif HWY_TARGET != HWY_SCALAR
128
0
constexpr bool TransposeUseSimd(size_t ROWS, size_t COLS) {
129
0
  return ROWS % 4 == 0 && COLS % 4 == 0;
130
0
}
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::N_SSE4::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::N_SSE2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:jxl::N_SSE4::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:jxl::N_SSE2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::N_SSE4::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::N_SSE2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:jxl::N_SSE4::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:jxl::N_SSE2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:jxl::N_SSE4::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:jxl::N_SSE2::(anonymous namespace)::TransposeUseSimd(unsigned long, unsigned long)
131
132
template <size_t ROWS_or_0, size_t COLS_or_0, class From, class To>
133
JXL_INLINE_TRANSPOSE void GenericTransposeBlock(
134
    TransposeSimdTag<true> /* tag */, const From& from, const To& to,
135
0
    size_t ROWSp, size_t COLSp) {
136
0
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
137
0
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
138
0
  JXL_DASSERT(Lanes(BlockDesc<4>()) == 4);
139
0
  static_assert(ROWS_or_0 % 4 == 0, "Invalid number of rows");
140
0
  static_assert(COLS_or_0 % 4 == 0, "Invalid number of columns");
141
0
  for (size_t n = 0; n < ROWS; n += 4) {
142
0
    for (size_t m = 0; m < COLS; m += 4) {
143
0
      const BlockDesc<4> d;
144
0
      const auto p0 = from.LoadPart(d, n + 0, m + 0);
145
0
      const auto p1 = from.LoadPart(d, n + 1, m + 0);
146
0
      const auto p2 = from.LoadPart(d, n + 2, m + 0);
147
0
      const auto p3 = from.LoadPart(d, n + 3, m + 0);
148
149
0
      const auto q0 = InterleaveLower(d, p0, p2);
150
0
      const auto q1 = InterleaveLower(d, p1, p3);
151
0
      const auto q2 = InterleaveUpper(d, p0, p2);
152
0
      const auto q3 = InterleaveUpper(d, p1, p3);
153
154
0
      const auto r0 = InterleaveLower(d, q0, q1);
155
0
      const auto r1 = InterleaveUpper(d, q0, q1);
156
0
      const auto r2 = InterleaveLower(d, q2, q3);
157
0
      const auto r3 = InterleaveUpper(d, q2, q3);
158
159
0
      to.StorePart(d, r0, m + 0, n + 0);
160
0
      to.StorePart(d, r1, m + 1, n + 0);
161
0
      to.StorePart(d, r2, m + 2, n + 0);
162
0
      to.StorePart(d, r3, m + 3, n + 0);
163
0
    }
164
0
  }
165
0
}
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<4ul, 4ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 16ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 32ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<32ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<0ul, 0ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::GenericTransposeBlock<8ul, 8ul, jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long)
166
#else
167
constexpr bool TransposeUseSimd(size_t ROWS, size_t COLS) { return false; }
168
#endif
169
170
template <size_t N, size_t M, typename = void>
171
struct Transpose {
172
  template <typename From, typename To>
173
763M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
763M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
763M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
763M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
763M
  }
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
869k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
869k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
869k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
869k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
869k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
520k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
520k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
520k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
520k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
520k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
443k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
443k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
443k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
443k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
443k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
181k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
181k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
181k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
181k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
181k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
534k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
534k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
534k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
534k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
534k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
276k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
276k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
276k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
276k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
276k
  }
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
1.79M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
1.79M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.79M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.79M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.79M
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
534k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
534k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
534k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
534k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
534k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
276k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
276k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
276k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
276k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
276k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
181k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
181k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
181k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
181k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
181k
  }
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
115k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
115k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
115k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
115k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
115k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
57.7k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
57.7k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
57.7k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
57.7k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
57.7k
  }
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
869k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
869k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
869k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
869k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
869k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
520k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
520k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
520k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
520k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
520k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
443k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
443k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
443k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
443k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
443k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
181k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
181k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
181k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
181k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
181k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
534k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
534k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
534k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
534k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
534k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
276k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
276k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
276k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
276k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
276k
  }
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
15.7M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
15.7M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
15.7M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
15.7M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
15.7M
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
534k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
534k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
534k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
534k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
534k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
276k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
276k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
276k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
276k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
276k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
181k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
181k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
181k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
181k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
181k
  }
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
115k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
115k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
115k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
115k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
115k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
57.7k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
57.7k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
57.7k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
57.7k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
57.7k
  }
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
195M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
195M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
195M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
195M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
195M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
195M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
195M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
195M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
195M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
195M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
223M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
223M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
223M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
223M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
223M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
11.3M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
11.3M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
11.3M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
11.3M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
11.3M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
33.6M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
33.6M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
33.6M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
33.6M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
33.6M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
33.6M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
33.6M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
33.6M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
33.6M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
33.6M
  }
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
27.8M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
27.8M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
27.8M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
27.8M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
27.8M
  }
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
2.62M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
2.62M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
2.62M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
2.62M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
2.62M
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
1.57M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
1.57M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.57M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.57M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.57M
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
1.34M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
1.34M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.34M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.34M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.34M
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
547k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
547k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
547k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
547k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
547k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
1.61M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
1.61M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.61M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.61M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.61M
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
838k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
838k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
838k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
838k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
838k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
816
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
816
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
816
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
816
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
816
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
108
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
108
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
108
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
108
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
108
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
5.77M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
5.77M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
5.77M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
5.77M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
5.77M
  }
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<8ul, 8ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
1.61M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
1.61M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.61M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.61M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.61M
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
838k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
838k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
838k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
838k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
838k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
547k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
547k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
547k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
547k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
547k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
816
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
816
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
816
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
816
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
816
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
108
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
108
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
108
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
108
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
108
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
346k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
346k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
346k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
346k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
346k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
173
173k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
173k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
173k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
173k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
173k
  }
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 1ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<1ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<4ul, 2ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<2ul, 4ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
180
};
181
182
// Avoid inlining and unrolling transposes for large blocks.
183
template <size_t N, size_t M>
184
struct Transpose<
185
    N, M, typename std::enable_if<(N >= 8 && M >= 8 && N * M >= 512)>::type> {
186
  template <typename From, typename To>
187
20.6M
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
20.6M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
20.6M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
20.6M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
20.6M
                                const From&, const To&, size_t, size_t) =
194
20.6M
        GenericTransposeBlock<0, 0, From, To>;
195
20.6M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
20.6M
  }
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_adaptive_quantization.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
115k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
115k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
115k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
115k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
115k
                                const From&, const To&, size_t, size_t) =
194
115k
        GenericTransposeBlock<0, 0, From, To>;
195
115k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
115k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
57.7k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
57.7k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
57.7k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
57.7k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
57.7k
                                const From&, const To&, size_t, size_t) =
194
57.7k
        GenericTransposeBlock<0, 0, From, To>;
195
57.7k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
57.7k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
99.5k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
99.5k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
99.5k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
99.5k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
99.5k
                                const From&, const To&, size_t, size_t) =
194
99.5k
        GenericTransposeBlock<0, 0, From, To>;
195
99.5k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
99.5k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
54.5k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
54.5k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
54.5k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
54.5k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
54.5k
                                const From&, const To&, size_t, size_t) =
194
54.5k
        GenericTransposeBlock<0, 0, From, To>;
195
54.5k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
54.5k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
22.6k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
22.6k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
22.6k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
22.6k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
22.6k
                                const From&, const To&, size_t, size_t) =
194
22.6k
        GenericTransposeBlock<0, 0, From, To>;
195
22.6k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
22.6k
  }
enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
6.41k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
6.41k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.41k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.41k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.41k
                                const From&, const To&, size_t, size_t) =
194
6.41k
        GenericTransposeBlock<0, 0, From, To>;
195
6.41k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.41k
  }
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
115k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
115k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
115k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
115k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
115k
                                const From&, const To&, size_t, size_t) =
194
115k
        GenericTransposeBlock<0, 0, From, To>;
195
115k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
115k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
57.7k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
57.7k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
57.7k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
57.7k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
57.7k
                                const From&, const To&, size_t, size_t) =
194
57.7k
        GenericTransposeBlock<0, 0, From, To>;
195
57.7k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
57.7k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
99.5k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
99.5k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
99.5k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
99.5k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
99.5k
                                const From&, const To&, size_t, size_t) =
194
99.5k
        GenericTransposeBlock<0, 0, From, To>;
195
99.5k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
99.5k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
54.5k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
54.5k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
54.5k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
54.5k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
54.5k
                                const From&, const To&, size_t, size_t) =
194
54.5k
        GenericTransposeBlock<0, 0, From, To>;
195
54.5k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
54.5k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
22.6k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
22.6k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
22.6k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
22.6k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
22.6k
                                const From&, const To&, size_t, size_t) =
194
22.6k
        GenericTransposeBlock<0, 0, From, To>;
195
22.6k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
22.6k
  }
enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
6.41k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
6.41k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.41k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.41k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.41k
                                const From&, const To&, size_t, size_t) =
194
6.41k
        GenericTransposeBlock<0, 0, From, To>;
195
6.41k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.41k
  }
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_chroma_from_luma.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
6.59M
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
6.59M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.59M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.59M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.59M
                                const From&, const To&, size_t, size_t) =
194
6.59M
        GenericTransposeBlock<0, 0, From, To>;
195
6.59M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.59M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
6.59M
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
6.59M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.59M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.59M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.59M
                                const From&, const To&, size_t, size_t) =
194
6.59M
        GenericTransposeBlock<0, 0, From, To>;
195
6.59M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.59M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
2.24M
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
2.24M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
2.24M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
2.24M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
2.24M
                                const From&, const To&, size_t, size_t) =
194
2.24M
        GenericTransposeBlock<0, 0, From, To>;
195
2.24M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
2.24M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
385k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
385k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
385k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
385k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
385k
                                const From&, const To&, size_t, size_t) =
194
385k
        GenericTransposeBlock<0, 0, From, To>;
195
385k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
385k
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
1.50M
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
1.50M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
1.50M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
1.50M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
1.50M
                                const From&, const To&, size_t, size_t) =
194
1.50M
        GenericTransposeBlock<0, 0, From, To>;
195
1.50M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
1.50M
  }
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
1.50M
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
1.50M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
1.50M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
1.50M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
1.50M
                                const From&, const To&, size_t, size_t) =
194
1.50M
        GenericTransposeBlock<0, 0, From, To>;
195
1.50M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
1.50M
  }
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: enc_ac_strategy.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE4::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE4::(anonymous namespace)::DCTFrom, jxl::N_SSE4::(anonymous namespace)::DCTTo>(jxl::N_SSE4::(anonymous namespace)::DCTFrom const&, jxl::N_SSE4::(anonymous namespace)::DCTTo const&)
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
346k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
346k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
346k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
346k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
346k
                                const From&, const To&, size_t, size_t) =
194
346k
        GenericTransposeBlock<0, 0, From, To>;
195
346k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
346k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
173k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
173k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
173k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
173k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
173k
                                const From&, const To&, size_t, size_t) =
194
173k
        GenericTransposeBlock<0, 0, From, To>;
195
173k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
173k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
298k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
298k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
298k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
298k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
298k
                                const From&, const To&, size_t, size_t) =
194
298k
        GenericTransposeBlock<0, 0, From, To>;
195
298k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
298k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
67.9k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
67.9k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
67.9k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
67.9k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
67.9k
                                const From&, const To&, size_t, size_t) =
194
67.9k
        GenericTransposeBlock<0, 0, From, To>;
195
67.9k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
67.9k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
19.2k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
19.2k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
19.2k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
19.2k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
19.2k
                                const From&, const To&, size_t, size_t) =
194
19.2k
        GenericTransposeBlock<0, 0, From, To>;
195
19.2k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
19.2k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
163k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
163k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
163k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
163k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
163k
                                const From&, const To&, size_t, size_t) =
194
163k
        GenericTransposeBlock<0, 0, From, To>;
195
163k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
163k
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
12
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
12
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
12
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
12
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
12
                                const From&, const To&, size_t, size_t) =
194
12
        GenericTransposeBlock<0, 0, From, To>;
195
12
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
12
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
9
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
9
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
9
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
9
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
9
                                const From&, const To&, size_t, size_t) =
194
9
        GenericTransposeBlock<0, 0, From, To>;
195
9
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
9
  }
dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Line
Count
Source
187
6
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
6
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6
                                const From&, const To&, size_t, size_t) =
194
6
        GenericTransposeBlock<0, 0, From, To>;
195
6
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6
  }
Unexecuted instantiation: dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<16ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 16ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<32ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 32ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<64ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 64ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<128ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 128ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
Unexecuted instantiation: dec_group.cc:void jxl::N_SSE2::(anonymous namespace)::Transpose<256ul, 256ul, void>::Run<jxl::N_SSE2::(anonymous namespace)::DCTFrom, jxl::N_SSE2::(anonymous namespace)::DCTTo>(jxl::N_SSE2::(anonymous namespace)::DCTFrom const&, jxl::N_SSE2::(anonymous namespace)::DCTTo const&)
197
};
198
199
}  // namespace
200
// NOLINTNEXTLINE(google-readability-namespace-comments)
201
}  // namespace HWY_NAMESPACE
202
}  // namespace jxl
203
HWY_AFTER_NAMESPACE();
204
205
#endif  // LIB_JXL_TRANSPOSE_INL_H_