Coverage Report

Created: 2026-05-16 07:22

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
114M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
114M
  return f(args...);
43
114M
}
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.40M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
1.40M
  return f(args...);
43
1.40M
}
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
350k
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
350k
  return f(args...);
43
350k
}
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.40M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
1.40M
  return f(args...);
43
1.40M
}
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
350k
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
350k
  return f(args...);
43
350k
}
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
88.3M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
88.3M
  return f(args...);
43
88.3M
}
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
17.6M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
17.6M
  return f(args...);
43
17.6M
}
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.17M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
4.17M
  return f(args...);
43
4.17M
}
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.03M
JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) {
42
1.03M
  return f(args...);
43
1.03M
}
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
594M
    size_t ROWSp, size_t COLSp) {
53
594M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
594M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
3.71G
  for (size_t n = 0; n < ROWS; ++n) {
56
18.5G
    for (size_t m = 0; m < COLS; ++m) {
57
15.4G
      to.Write(from.Read(n, m), m, n);
58
15.4G
    }
59
3.11G
  }
60
594M
}
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
758k
    size_t ROWSp, size_t COLSp) {
53
758k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
758k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
6.82M
  for (size_t n = 0; n < ROWS; ++n) {
56
30.3M
    for (size_t m = 0; m < COLS; ++m) {
57
24.2M
      to.Write(from.Read(n, m), m, n);
58
24.2M
    }
59
6.07M
  }
60
758k
}
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
469k
    size_t ROWSp, size_t COLSp) {
53
469k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
469k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.34M
  for (size_t n = 0; n < ROWS; ++n) {
56
16.9M
    for (size_t m = 0; m < COLS; ++m) {
57
15.0M
      to.Write(from.Read(n, m), m, n);
58
15.0M
    }
59
1.87M
  }
60
469k
}
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
410k
    size_t ROWSp, size_t COLSp) {
53
410k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
410k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.05M
  for (size_t n = 0; n < ROWS; ++n) {
56
8.20M
    for (size_t m = 0; m < COLS; ++m) {
57
6.56M
      to.Write(from.Read(n, m), m, n);
58
6.56M
    }
59
1.64M
  }
60
410k
}
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
486k
    size_t ROWSp, size_t COLSp) {
53
486k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
486k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
972k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.45M
    for (size_t m = 0; m < COLS; ++m) {
57
972k
      to.Write(from.Read(n, m), m, n);
58
972k
    }
59
486k
  }
60
486k
}
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
251k
    size_t ROWSp, size_t COLSp) {
53
251k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
251k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
754k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.00M
    for (size_t m = 0; m < COLS; ++m) {
57
503k
      to.Write(from.Read(n, m), m, n);
58
503k
    }
59
503k
  }
60
251k
}
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
172k
    size_t ROWSp, size_t COLSp) {
53
172k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
172k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
517k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.03M
    for (size_t m = 0; m < COLS; ++m) {
57
690k
      to.Write(from.Read(n, m), m, n);
58
690k
    }
59
345k
  }
60
172k
}
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
113k
    size_t ROWSp, size_t COLSp) {
53
113k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
113k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
340k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.13M
    for (size_t m = 0; m < COLS; ++m) {
57
907k
      to.Write(from.Read(n, m), m, n);
58
907k
    }
59
226k
  }
60
113k
}
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
758k
    size_t ROWSp, size_t COLSp) {
53
758k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
758k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
6.82M
  for (size_t n = 0; n < ROWS; ++n) {
56
30.3M
    for (size_t m = 0; m < COLS; ++m) {
57
24.2M
      to.Write(from.Read(n, m), m, n);
58
24.2M
    }
59
6.07M
  }
60
758k
}
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
469k
    size_t ROWSp, size_t COLSp) {
53
469k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
469k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.34M
  for (size_t n = 0; n < ROWS; ++n) {
56
16.9M
    for (size_t m = 0; m < COLS; ++m) {
57
15.0M
      to.Write(from.Read(n, m), m, n);
58
15.0M
    }
59
1.87M
  }
60
469k
}
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
410k
    size_t ROWSp, size_t COLSp) {
53
410k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
410k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
2.05M
  for (size_t n = 0; n < ROWS; ++n) {
56
8.20M
    for (size_t m = 0; m < COLS; ++m) {
57
6.56M
      to.Write(from.Read(n, m), m, n);
58
6.56M
    }
59
1.64M
  }
60
410k
}
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
486k
    size_t ROWSp, size_t COLSp) {
53
486k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
486k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
972k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.45M
    for (size_t m = 0; m < COLS; ++m) {
57
972k
      to.Write(from.Read(n, m), m, n);
58
972k
    }
59
486k
  }
60
486k
}
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
251k
    size_t ROWSp, size_t COLSp) {
53
251k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
251k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
754k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.00M
    for (size_t m = 0; m < COLS; ++m) {
57
503k
      to.Write(from.Read(n, m), m, n);
58
503k
    }
59
503k
  }
60
251k
}
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
172k
    size_t ROWSp, size_t COLSp) {
53
172k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
172k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
517k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.03M
    for (size_t m = 0; m < COLS; ++m) {
57
690k
      to.Write(from.Read(n, m), m, n);
58
690k
    }
59
345k
  }
60
172k
}
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
113k
    size_t ROWSp, size_t COLSp) {
53
113k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
113k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
340k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.13M
    for (size_t m = 0; m < COLS; ++m) {
57
907k
      to.Write(from.Read(n, m), m, n);
58
907k
    }
59
226k
  }
60
113k
}
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
184M
    size_t ROWSp, size_t COLSp) {
53
184M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
184M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.66G
  for (size_t n = 0; n < ROWS; ++n) {
56
7.39G
    for (size_t m = 0; m < COLS; ++m) {
57
5.91G
      to.Write(from.Read(n, m), m, n);
58
5.91G
    }
59
1.47G
  }
60
184M
}
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
184M
    size_t ROWSp, size_t COLSp) {
53
184M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
184M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
924M
  for (size_t n = 0; n < ROWS; ++n) {
56
6.65G
    for (size_t m = 0; m < COLS; ++m) {
57
5.91G
      to.Write(from.Read(n, m), m, n);
58
5.91G
    }
59
739M
  }
60
184M
}
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
211M
    size_t ROWSp, size_t COLSp) {
53
211M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
211M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.05G
  for (size_t n = 0; n < ROWS; ++n) {
56
4.22G
    for (size_t m = 0; m < COLS; ++m) {
57
3.38G
      to.Write(from.Read(n, m), m, n);
58
3.38G
    }
59
845M
  }
60
211M
}
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.26M
    size_t ROWSp, size_t COLSp) {
53
2.26M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
2.26M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
11.3M
  for (size_t n = 0; n < ROWS; ++n) {
56
81.4M
    for (size_t m = 0; m < COLS; ++m) {
57
72.3M
      to.Write(from.Read(n, m), m, n);
58
72.3M
    }
59
9.04M
  }
60
2.26M
}
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.38M
    size_t ROWSp, size_t COLSp) {
53
1.38M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
1.38M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
12.4M
  for (size_t n = 0; n < ROWS; ++n) {
56
55.5M
    for (size_t m = 0; m < COLS; ++m) {
57
44.4M
      to.Write(from.Read(n, m), m, n);
58
44.4M
    }
59
11.1M
  }
60
1.38M
}
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.23M
    size_t ROWSp, size_t COLSp) {
53
1.23M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
1.23M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
6.18M
  for (size_t n = 0; n < ROWS; ++n) {
56
24.7M
    for (size_t m = 0; m < COLS; ++m) {
57
19.7M
      to.Write(from.Read(n, m), m, n);
58
19.7M
    }
59
4.94M
  }
60
1.23M
}
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.46M
    size_t ROWSp, size_t COLSp) {
53
1.46M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
1.46M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
4.38M
  for (size_t n = 0; n < ROWS; ++n) {
56
5.84M
    for (size_t m = 0; m < COLS; ++m) {
57
2.92M
      to.Write(from.Read(n, m), m, n);
58
2.92M
    }
59
2.92M
  }
60
1.46M
}
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
757k
    size_t ROWSp, size_t COLSp) {
53
757k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
757k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.51M
  for (size_t n = 0; n < ROWS; ++n) {
56
2.27M
    for (size_t m = 0; m < COLS; ++m) {
57
1.51M
      to.Write(from.Read(n, m), m, n);
58
1.51M
    }
59
757k
  }
60
757k
}
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
517k
    size_t ROWSp, size_t COLSp) {
53
517k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
517k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.55M
  for (size_t n = 0; n < ROWS; ++n) {
56
3.10M
    for (size_t m = 0; m < COLS; ++m) {
57
2.07M
      to.Write(from.Read(n, m), m, n);
58
2.07M
    }
59
1.03M
  }
60
517k
}
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
189
    size_t ROWSp, size_t COLSp) {
53
189
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
189
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
945
  for (size_t n = 0; n < ROWS; ++n) {
56
1.51k
    for (size_t m = 0; m < COLS; ++m) {
57
756
      to.Write(from.Read(n, m), m, n);
58
756
    }
59
756
  }
60
189
}
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
144
    size_t ROWSp, size_t COLSp) {
53
144
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
144
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
288
  for (size_t n = 0; n < ROWS; ++n) {
56
720
    for (size_t m = 0; m < COLS; ++m) {
57
576
      to.Write(from.Read(n, m), m, n);
58
576
    }
59
144
  }
60
144
}
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
337k
    size_t ROWSp, size_t COLSp) {
53
337k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
337k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
1.68M
  for (size_t n = 0; n < ROWS; ++n) {
56
4.04M
    for (size_t m = 0; m < COLS; ++m) {
57
2.69M
      to.Write(from.Read(n, m), m, n);
58
2.69M
    }
59
1.34M
  }
60
337k
}
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
172k
    size_t ROWSp, size_t COLSp) {
53
172k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
54
172k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
55
517k
  for (size_t n = 0; n < ROWS; ++n) {
56
1.72M
    for (size_t m = 0; m < COLS; ++m) {
57
1.37M
      to.Write(from.Read(n, m), m, n);
58
1.37M
    }
59
344k
  }
60
172k
}
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
145M
    size_t ROWSp, size_t COLSp) {
72
145M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
145M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
145M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
145M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
145M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
388M
  for (size_t n = 0; n < ROWS; n += 8) {
78
751M
    for (size_t m = 0; m < COLS; m += 8) {
79
508M
      const BlockDesc<8> d;
80
508M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
508M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
508M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
508M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
508M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
508M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
508M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
508M
      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
508M
      const auto q0 = InterleaveLower(d, i0, i2);
91
508M
      const auto q1 = InterleaveLower(d, i1, i3);
92
508M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
508M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
508M
      const auto q4 = InterleaveLower(d, i4, i6);
95
508M
      const auto q5 = InterleaveLower(d, i5, i7);
96
508M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
508M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
508M
      const auto r0 = InterleaveLower(d, q0, q1);
100
508M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
508M
      const auto r2 = InterleaveLower(d, q2, q3);
102
508M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
508M
      const auto r4 = InterleaveLower(d, q4, q5);
104
508M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
508M
      const auto r6 = InterleaveLower(d, q6, q7);
106
508M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
508M
      i0 = ConcatLowerLower(d, r4, r0);
109
508M
      i1 = ConcatLowerLower(d, r5, r1);
110
508M
      i2 = ConcatLowerLower(d, r6, r2);
111
508M
      i3 = ConcatLowerLower(d, r7, r3);
112
508M
      i4 = ConcatUpperUpper(d, r4, r0);
113
508M
      i5 = ConcatUpperUpper(d, r5, r1);
114
508M
      i6 = ConcatUpperUpper(d, r6, r2);
115
508M
      i7 = ConcatUpperUpper(d, r7, r3);
116
508M
      to.StorePart(d, i0, m + 0, n + 0);
117
508M
      to.StorePart(d, i1, m + 1, n + 0);
118
508M
      to.StorePart(d, i2, m + 2, n + 0);
119
508M
      to.StorePart(d, i3, m + 3, n + 0);
120
508M
      to.StorePart(d, i4, m + 4, n + 0);
121
508M
      to.StorePart(d, i5, m + 5, n + 0);
122
508M
      to.StorePart(d, i6, m + 6, n + 0);
123
508M
      to.StorePart(d, i7, m + 7, n + 0);
124
508M
    }
125
242M
  }
126
145M
}
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
172k
    size_t ROWSp, size_t COLSp) {
72
172k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
172k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
172k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
172k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
172k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
517k
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.03M
    for (size_t m = 0; m < COLS; m += 8) {
79
690k
      const BlockDesc<8> d;
80
690k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
690k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
690k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
690k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
690k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
690k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
690k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
690k
      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
690k
      const auto q0 = InterleaveLower(d, i0, i2);
91
690k
      const auto q1 = InterleaveLower(d, i1, i3);
92
690k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
690k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
690k
      const auto q4 = InterleaveLower(d, i4, i6);
95
690k
      const auto q5 = InterleaveLower(d, i5, i7);
96
690k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
690k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
690k
      const auto r0 = InterleaveLower(d, q0, q1);
100
690k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
690k
      const auto r2 = InterleaveLower(d, q2, q3);
102
690k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
690k
      const auto r4 = InterleaveLower(d, q4, q5);
104
690k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
690k
      const auto r6 = InterleaveLower(d, q6, q7);
106
690k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
690k
      i0 = ConcatLowerLower(d, r4, r0);
109
690k
      i1 = ConcatLowerLower(d, r5, r1);
110
690k
      i2 = ConcatLowerLower(d, r6, r2);
111
690k
      i3 = ConcatLowerLower(d, r7, r3);
112
690k
      i4 = ConcatUpperUpper(d, r4, r0);
113
690k
      i5 = ConcatUpperUpper(d, r5, r1);
114
690k
      i6 = ConcatUpperUpper(d, r6, r2);
115
690k
      i7 = ConcatUpperUpper(d, r7, r3);
116
690k
      to.StorePart(d, i0, m + 0, n + 0);
117
690k
      to.StorePart(d, i1, m + 1, n + 0);
118
690k
      to.StorePart(d, i2, m + 2, n + 0);
119
690k
      to.StorePart(d, i3, m + 3, n + 0);
120
690k
      to.StorePart(d, i4, m + 4, n + 0);
121
690k
      to.StorePart(d, i5, m + 5, n + 0);
122
690k
      to.StorePart(d, i6, m + 6, n + 0);
123
690k
      to.StorePart(d, i7, m + 7, n + 0);
124
690k
    }
125
345k
  }
126
172k
}
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
486k
    size_t ROWSp, size_t COLSp) {
72
486k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
486k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
486k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
486k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
486k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.45M
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.94M
    for (size_t m = 0; m < COLS; m += 8) {
79
972k
      const BlockDesc<8> d;
80
972k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
972k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
972k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
972k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
972k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
972k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
972k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
972k
      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
972k
      const auto q0 = InterleaveLower(d, i0, i2);
91
972k
      const auto q1 = InterleaveLower(d, i1, i3);
92
972k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
972k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
972k
      const auto q4 = InterleaveLower(d, i4, i6);
95
972k
      const auto q5 = InterleaveLower(d, i5, i7);
96
972k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
972k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
972k
      const auto r0 = InterleaveLower(d, q0, q1);
100
972k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
972k
      const auto r2 = InterleaveLower(d, q2, q3);
102
972k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
972k
      const auto r4 = InterleaveLower(d, q4, q5);
104
972k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
972k
      const auto r6 = InterleaveLower(d, q6, q7);
106
972k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
972k
      i0 = ConcatLowerLower(d, r4, r0);
109
972k
      i1 = ConcatLowerLower(d, r5, r1);
110
972k
      i2 = ConcatLowerLower(d, r6, r2);
111
972k
      i3 = ConcatLowerLower(d, r7, r3);
112
972k
      i4 = ConcatUpperUpper(d, r4, r0);
113
972k
      i5 = ConcatUpperUpper(d, r5, r1);
114
972k
      i6 = ConcatUpperUpper(d, r6, r2);
115
972k
      i7 = ConcatUpperUpper(d, r7, r3);
116
972k
      to.StorePart(d, i0, m + 0, n + 0);
117
972k
      to.StorePart(d, i1, m + 1, n + 0);
118
972k
      to.StorePart(d, i2, m + 2, n + 0);
119
972k
      to.StorePart(d, i3, m + 3, n + 0);
120
972k
      to.StorePart(d, i4, m + 4, n + 0);
121
972k
      to.StorePart(d, i5, m + 5, n + 0);
122
972k
      to.StorePart(d, i6, m + 6, n + 0);
123
972k
      to.StorePart(d, i7, m + 7, n + 0);
124
972k
    }
125
972k
  }
126
486k
}
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
251k
    size_t ROWSp, size_t COLSp) {
72
251k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
251k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
251k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
251k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
251k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
503k
  for (size_t n = 0; n < ROWS; n += 8) {
78
754k
    for (size_t m = 0; m < COLS; m += 8) {
79
503k
      const BlockDesc<8> d;
80
503k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
503k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
503k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
503k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
503k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
503k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
503k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
503k
      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
503k
      const auto q0 = InterleaveLower(d, i0, i2);
91
503k
      const auto q1 = InterleaveLower(d, i1, i3);
92
503k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
503k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
503k
      const auto q4 = InterleaveLower(d, i4, i6);
95
503k
      const auto q5 = InterleaveLower(d, i5, i7);
96
503k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
503k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
503k
      const auto r0 = InterleaveLower(d, q0, q1);
100
503k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
503k
      const auto r2 = InterleaveLower(d, q2, q3);
102
503k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
503k
      const auto r4 = InterleaveLower(d, q4, q5);
104
503k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
503k
      const auto r6 = InterleaveLower(d, q6, q7);
106
503k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
503k
      i0 = ConcatLowerLower(d, r4, r0);
109
503k
      i1 = ConcatLowerLower(d, r5, r1);
110
503k
      i2 = ConcatLowerLower(d, r6, r2);
111
503k
      i3 = ConcatLowerLower(d, r7, r3);
112
503k
      i4 = ConcatUpperUpper(d, r4, r0);
113
503k
      i5 = ConcatUpperUpper(d, r5, r1);
114
503k
      i6 = ConcatUpperUpper(d, r6, r2);
115
503k
      i7 = ConcatUpperUpper(d, r7, r3);
116
503k
      to.StorePart(d, i0, m + 0, n + 0);
117
503k
      to.StorePart(d, i1, m + 1, n + 0);
118
503k
      to.StorePart(d, i2, m + 2, n + 0);
119
503k
      to.StorePart(d, i3, m + 3, n + 0);
120
503k
      to.StorePart(d, i4, m + 4, n + 0);
121
503k
      to.StorePart(d, i5, m + 5, n + 0);
122
503k
      to.StorePart(d, i6, m + 6, n + 0);
123
503k
      to.StorePart(d, i7, m + 7, n + 0);
124
503k
    }
125
251k
  }
126
251k
}
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
350k
    size_t ROWSp, size_t COLSp) {
72
350k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
350k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
350k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
350k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
350k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.93M
  for (size_t n = 0; n < ROWS; n += 8) {
78
8.87M
    for (size_t m = 0; m < COLS; m += 8) {
79
7.29M
      const BlockDesc<8> d;
80
7.29M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
7.29M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
7.29M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
7.29M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
7.29M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
7.29M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
7.29M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
7.29M
      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.29M
      const auto q0 = InterleaveLower(d, i0, i2);
91
7.29M
      const auto q1 = InterleaveLower(d, i1, i3);
92
7.29M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
7.29M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
7.29M
      const auto q4 = InterleaveLower(d, i4, i6);
95
7.29M
      const auto q5 = InterleaveLower(d, i5, i7);
96
7.29M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
7.29M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
7.29M
      const auto r0 = InterleaveLower(d, q0, q1);
100
7.29M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
7.29M
      const auto r2 = InterleaveLower(d, q2, q3);
102
7.29M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
7.29M
      const auto r4 = InterleaveLower(d, q4, q5);
104
7.29M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
7.29M
      const auto r6 = InterleaveLower(d, q6, q7);
106
7.29M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
7.29M
      i0 = ConcatLowerLower(d, r4, r0);
109
7.29M
      i1 = ConcatLowerLower(d, r5, r1);
110
7.29M
      i2 = ConcatLowerLower(d, r6, r2);
111
7.29M
      i3 = ConcatLowerLower(d, r7, r3);
112
7.29M
      i4 = ConcatUpperUpper(d, r4, r0);
113
7.29M
      i5 = ConcatUpperUpper(d, r5, r1);
114
7.29M
      i6 = ConcatUpperUpper(d, r6, r2);
115
7.29M
      i7 = ConcatUpperUpper(d, r7, r3);
116
7.29M
      to.StorePart(d, i0, m + 0, n + 0);
117
7.29M
      to.StorePart(d, i1, m + 1, n + 0);
118
7.29M
      to.StorePart(d, i2, m + 2, n + 0);
119
7.29M
      to.StorePart(d, i3, m + 3, n + 0);
120
7.29M
      to.StorePart(d, i4, m + 4, n + 0);
121
7.29M
      to.StorePart(d, i5, m + 5, n + 0);
122
7.29M
      to.StorePart(d, i6, m + 6, n + 0);
123
7.29M
      to.StorePart(d, i7, m + 7, n + 0);
124
7.29M
    }
125
1.58M
  }
126
350k
}
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.63M
    size_t ROWSp, size_t COLSp) {
72
1.63M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
1.63M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
1.63M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
1.63M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
1.63M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
3.27M
  for (size_t n = 0; n < ROWS; n += 8) {
78
3.27M
    for (size_t m = 0; m < COLS; m += 8) {
79
1.63M
      const BlockDesc<8> d;
80
1.63M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
1.63M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
1.63M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
1.63M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
1.63M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
1.63M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
1.63M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
1.63M
      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.63M
      const auto q0 = InterleaveLower(d, i0, i2);
91
1.63M
      const auto q1 = InterleaveLower(d, i1, i3);
92
1.63M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
1.63M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
1.63M
      const auto q4 = InterleaveLower(d, i4, i6);
95
1.63M
      const auto q5 = InterleaveLower(d, i5, i7);
96
1.63M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
1.63M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
1.63M
      const auto r0 = InterleaveLower(d, q0, q1);
100
1.63M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
1.63M
      const auto r2 = InterleaveLower(d, q2, q3);
102
1.63M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
1.63M
      const auto r4 = InterleaveLower(d, q4, q5);
104
1.63M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
1.63M
      const auto r6 = InterleaveLower(d, q6, q7);
106
1.63M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
1.63M
      i0 = ConcatLowerLower(d, r4, r0);
109
1.63M
      i1 = ConcatLowerLower(d, r5, r1);
110
1.63M
      i2 = ConcatLowerLower(d, r6, r2);
111
1.63M
      i3 = ConcatLowerLower(d, r7, r3);
112
1.63M
      i4 = ConcatUpperUpper(d, r4, r0);
113
1.63M
      i5 = ConcatUpperUpper(d, r5, r1);
114
1.63M
      i6 = ConcatUpperUpper(d, r6, r2);
115
1.63M
      i7 = ConcatUpperUpper(d, r7, r3);
116
1.63M
      to.StorePart(d, i0, m + 0, n + 0);
117
1.63M
      to.StorePart(d, i1, m + 1, n + 0);
118
1.63M
      to.StorePart(d, i2, m + 2, n + 0);
119
1.63M
      to.StorePart(d, i3, m + 3, n + 0);
120
1.63M
      to.StorePart(d, i4, m + 4, n + 0);
121
1.63M
      to.StorePart(d, i5, m + 5, n + 0);
122
1.63M
      to.StorePart(d, i6, m + 6, n + 0);
123
1.63M
      to.StorePart(d, i7, m + 7, n + 0);
124
1.63M
    }
125
1.63M
  }
126
1.63M
}
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
172k
    size_t ROWSp, size_t COLSp) {
72
172k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
172k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
172k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
172k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
172k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
517k
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.03M
    for (size_t m = 0; m < COLS; m += 8) {
79
690k
      const BlockDesc<8> d;
80
690k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
690k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
690k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
690k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
690k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
690k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
690k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
690k
      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
690k
      const auto q0 = InterleaveLower(d, i0, i2);
91
690k
      const auto q1 = InterleaveLower(d, i1, i3);
92
690k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
690k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
690k
      const auto q4 = InterleaveLower(d, i4, i6);
95
690k
      const auto q5 = InterleaveLower(d, i5, i7);
96
690k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
690k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
690k
      const auto r0 = InterleaveLower(d, q0, q1);
100
690k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
690k
      const auto r2 = InterleaveLower(d, q2, q3);
102
690k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
690k
      const auto r4 = InterleaveLower(d, q4, q5);
104
690k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
690k
      const auto r6 = InterleaveLower(d, q6, q7);
106
690k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
690k
      i0 = ConcatLowerLower(d, r4, r0);
109
690k
      i1 = ConcatLowerLower(d, r5, r1);
110
690k
      i2 = ConcatLowerLower(d, r6, r2);
111
690k
      i3 = ConcatLowerLower(d, r7, r3);
112
690k
      i4 = ConcatUpperUpper(d, r4, r0);
113
690k
      i5 = ConcatUpperUpper(d, r5, r1);
114
690k
      i6 = ConcatUpperUpper(d, r6, r2);
115
690k
      i7 = ConcatUpperUpper(d, r7, r3);
116
690k
      to.StorePart(d, i0, m + 0, n + 0);
117
690k
      to.StorePart(d, i1, m + 1, n + 0);
118
690k
      to.StorePart(d, i2, m + 2, n + 0);
119
690k
      to.StorePart(d, i3, m + 3, n + 0);
120
690k
      to.StorePart(d, i4, m + 4, n + 0);
121
690k
      to.StorePart(d, i5, m + 5, n + 0);
122
690k
      to.StorePart(d, i6, m + 6, n + 0);
123
690k
      to.StorePart(d, i7, m + 7, n + 0);
124
690k
    }
125
345k
  }
126
172k
}
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
486k
    size_t ROWSp, size_t COLSp) {
72
486k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
486k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
486k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
486k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
486k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.45M
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.94M
    for (size_t m = 0; m < COLS; m += 8) {
79
972k
      const BlockDesc<8> d;
80
972k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
972k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
972k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
972k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
972k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
972k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
972k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
972k
      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
972k
      const auto q0 = InterleaveLower(d, i0, i2);
91
972k
      const auto q1 = InterleaveLower(d, i1, i3);
92
972k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
972k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
972k
      const auto q4 = InterleaveLower(d, i4, i6);
95
972k
      const auto q5 = InterleaveLower(d, i5, i7);
96
972k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
972k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
972k
      const auto r0 = InterleaveLower(d, q0, q1);
100
972k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
972k
      const auto r2 = InterleaveLower(d, q2, q3);
102
972k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
972k
      const auto r4 = InterleaveLower(d, q4, q5);
104
972k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
972k
      const auto r6 = InterleaveLower(d, q6, q7);
106
972k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
972k
      i0 = ConcatLowerLower(d, r4, r0);
109
972k
      i1 = ConcatLowerLower(d, r5, r1);
110
972k
      i2 = ConcatLowerLower(d, r6, r2);
111
972k
      i3 = ConcatLowerLower(d, r7, r3);
112
972k
      i4 = ConcatUpperUpper(d, r4, r0);
113
972k
      i5 = ConcatUpperUpper(d, r5, r1);
114
972k
      i6 = ConcatUpperUpper(d, r6, r2);
115
972k
      i7 = ConcatUpperUpper(d, r7, r3);
116
972k
      to.StorePart(d, i0, m + 0, n + 0);
117
972k
      to.StorePart(d, i1, m + 1, n + 0);
118
972k
      to.StorePart(d, i2, m + 2, n + 0);
119
972k
      to.StorePart(d, i3, m + 3, n + 0);
120
972k
      to.StorePart(d, i4, m + 4, n + 0);
121
972k
      to.StorePart(d, i5, m + 5, n + 0);
122
972k
      to.StorePart(d, i6, m + 6, n + 0);
123
972k
      to.StorePart(d, i7, m + 7, n + 0);
124
972k
    }
125
972k
  }
126
486k
}
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
251k
    size_t ROWSp, size_t COLSp) {
72
251k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
251k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
251k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
251k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
251k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
503k
  for (size_t n = 0; n < ROWS; n += 8) {
78
754k
    for (size_t m = 0; m < COLS; m += 8) {
79
503k
      const BlockDesc<8> d;
80
503k
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
503k
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
503k
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
503k
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
503k
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
503k
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
503k
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
503k
      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
503k
      const auto q0 = InterleaveLower(d, i0, i2);
91
503k
      const auto q1 = InterleaveLower(d, i1, i3);
92
503k
      const auto q2 = InterleaveUpper(d, i0, i2);
93
503k
      const auto q3 = InterleaveUpper(d, i1, i3);
94
503k
      const auto q4 = InterleaveLower(d, i4, i6);
95
503k
      const auto q5 = InterleaveLower(d, i5, i7);
96
503k
      const auto q6 = InterleaveUpper(d, i4, i6);
97
503k
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
503k
      const auto r0 = InterleaveLower(d, q0, q1);
100
503k
      const auto r1 = InterleaveUpper(d, q0, q1);
101
503k
      const auto r2 = InterleaveLower(d, q2, q3);
102
503k
      const auto r3 = InterleaveUpper(d, q2, q3);
103
503k
      const auto r4 = InterleaveLower(d, q4, q5);
104
503k
      const auto r5 = InterleaveUpper(d, q4, q5);
105
503k
      const auto r6 = InterleaveLower(d, q6, q7);
106
503k
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
503k
      i0 = ConcatLowerLower(d, r4, r0);
109
503k
      i1 = ConcatLowerLower(d, r5, r1);
110
503k
      i2 = ConcatLowerLower(d, r6, r2);
111
503k
      i3 = ConcatLowerLower(d, r7, r3);
112
503k
      i4 = ConcatUpperUpper(d, r4, r0);
113
503k
      i5 = ConcatUpperUpper(d, r5, r1);
114
503k
      i6 = ConcatUpperUpper(d, r6, r2);
115
503k
      i7 = ConcatUpperUpper(d, r7, r3);
116
503k
      to.StorePart(d, i0, m + 0, n + 0);
117
503k
      to.StorePart(d, i1, m + 1, n + 0);
118
503k
      to.StorePart(d, i2, m + 2, n + 0);
119
503k
      to.StorePart(d, i3, m + 3, n + 0);
120
503k
      to.StorePart(d, i4, m + 4, n + 0);
121
503k
      to.StorePart(d, i5, m + 5, n + 0);
122
503k
      to.StorePart(d, i6, m + 6, n + 0);
123
503k
      to.StorePart(d, i7, m + 7, n + 0);
124
503k
    }
125
251k
  }
126
251k
}
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
350k
    size_t ROWSp, size_t COLSp) {
72
350k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
350k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
350k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
350k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
350k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.93M
  for (size_t n = 0; n < ROWS; n += 8) {
78
8.87M
    for (size_t m = 0; m < COLS; m += 8) {
79
7.29M
      const BlockDesc<8> d;
80
7.29M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
7.29M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
7.29M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
7.29M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
7.29M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
7.29M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
7.29M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
7.29M
      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.29M
      const auto q0 = InterleaveLower(d, i0, i2);
91
7.29M
      const auto q1 = InterleaveLower(d, i1, i3);
92
7.29M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
7.29M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
7.29M
      const auto q4 = InterleaveLower(d, i4, i6);
95
7.29M
      const auto q5 = InterleaveLower(d, i5, i7);
96
7.29M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
7.29M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
7.29M
      const auto r0 = InterleaveLower(d, q0, q1);
100
7.29M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
7.29M
      const auto r2 = InterleaveLower(d, q2, q3);
102
7.29M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
7.29M
      const auto r4 = InterleaveLower(d, q4, q5);
104
7.29M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
7.29M
      const auto r6 = InterleaveLower(d, q6, q7);
106
7.29M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
7.29M
      i0 = ConcatLowerLower(d, r4, r0);
109
7.29M
      i1 = ConcatLowerLower(d, r5, r1);
110
7.29M
      i2 = ConcatLowerLower(d, r6, r2);
111
7.29M
      i3 = ConcatLowerLower(d, r7, r3);
112
7.29M
      i4 = ConcatUpperUpper(d, r4, r0);
113
7.29M
      i5 = ConcatUpperUpper(d, r5, r1);
114
7.29M
      i6 = ConcatUpperUpper(d, r6, r2);
115
7.29M
      i7 = ConcatUpperUpper(d, r7, r3);
116
7.29M
      to.StorePart(d, i0, m + 0, n + 0);
117
7.29M
      to.StorePart(d, i1, m + 1, n + 0);
118
7.29M
      to.StorePart(d, i2, m + 2, n + 0);
119
7.29M
      to.StorePart(d, i3, m + 3, n + 0);
120
7.29M
      to.StorePart(d, i4, m + 4, n + 0);
121
7.29M
      to.StorePart(d, i5, m + 5, n + 0);
122
7.29M
      to.StorePart(d, i6, m + 6, n + 0);
123
7.29M
      to.StorePart(d, i7, m + 7, n + 0);
124
7.29M
    }
125
1.58M
  }
126
350k
}
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
14.8M
    size_t ROWSp, size_t COLSp) {
72
14.8M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
14.8M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
14.8M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
14.8M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
14.8M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
29.6M
  for (size_t n = 0; n < ROWS; n += 8) {
78
29.6M
    for (size_t m = 0; m < COLS; m += 8) {
79
14.8M
      const BlockDesc<8> d;
80
14.8M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
14.8M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
14.8M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
14.8M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
14.8M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
14.8M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
14.8M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
14.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
14.8M
      const auto q0 = InterleaveLower(d, i0, i2);
91
14.8M
      const auto q1 = InterleaveLower(d, i1, i3);
92
14.8M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
14.8M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
14.8M
      const auto q4 = InterleaveLower(d, i4, i6);
95
14.8M
      const auto q5 = InterleaveLower(d, i5, i7);
96
14.8M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
14.8M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
14.8M
      const auto r0 = InterleaveLower(d, q0, q1);
100
14.8M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
14.8M
      const auto r2 = InterleaveLower(d, q2, q3);
102
14.8M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
14.8M
      const auto r4 = InterleaveLower(d, q4, q5);
104
14.8M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
14.8M
      const auto r6 = InterleaveLower(d, q6, q7);
106
14.8M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
14.8M
      i0 = ConcatLowerLower(d, r4, r0);
109
14.8M
      i1 = ConcatLowerLower(d, r5, r1);
110
14.8M
      i2 = ConcatLowerLower(d, r6, r2);
111
14.8M
      i3 = ConcatLowerLower(d, r7, r3);
112
14.8M
      i4 = ConcatUpperUpper(d, r4, r0);
113
14.8M
      i5 = ConcatUpperUpper(d, r5, r1);
114
14.8M
      i6 = ConcatUpperUpper(d, r6, r2);
115
14.8M
      i7 = ConcatUpperUpper(d, r7, r3);
116
14.8M
      to.StorePart(d, i0, m + 0, n + 0);
117
14.8M
      to.StorePart(d, i1, m + 1, n + 0);
118
14.8M
      to.StorePart(d, i2, m + 2, n + 0);
119
14.8M
      to.StorePart(d, i3, m + 3, n + 0);
120
14.8M
      to.StorePart(d, i4, m + 4, n + 0);
121
14.8M
      to.StorePart(d, i5, m + 5, n + 0);
122
14.8M
      to.StorePart(d, i6, m + 6, n + 0);
123
14.8M
      to.StorePart(d, i7, m + 7, n + 0);
124
14.8M
    }
125
14.8M
  }
126
14.8M
}
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
10.5M
    size_t ROWSp, size_t COLSp) {
72
10.5M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
10.5M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
10.5M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
10.5M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
10.5M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
31.6M
  for (size_t n = 0; n < ROWS; n += 8) {
78
63.3M
    for (size_t m = 0; m < COLS; m += 8) {
79
42.2M
      const BlockDesc<8> d;
80
42.2M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
42.2M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
42.2M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
42.2M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
42.2M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
42.2M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
42.2M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
42.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
42.2M
      const auto q0 = InterleaveLower(d, i0, i2);
91
42.2M
      const auto q1 = InterleaveLower(d, i1, i3);
92
42.2M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
42.2M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
42.2M
      const auto q4 = InterleaveLower(d, i4, i6);
95
42.2M
      const auto q5 = InterleaveLower(d, i5, i7);
96
42.2M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
42.2M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
42.2M
      const auto r0 = InterleaveLower(d, q0, q1);
100
42.2M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
42.2M
      const auto r2 = InterleaveLower(d, q2, q3);
102
42.2M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
42.2M
      const auto r4 = InterleaveLower(d, q4, q5);
104
42.2M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
42.2M
      const auto r6 = InterleaveLower(d, q6, q7);
106
42.2M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
42.2M
      i0 = ConcatLowerLower(d, r4, r0);
109
42.2M
      i1 = ConcatLowerLower(d, r5, r1);
110
42.2M
      i2 = ConcatLowerLower(d, r6, r2);
111
42.2M
      i3 = ConcatLowerLower(d, r7, r3);
112
42.2M
      i4 = ConcatUpperUpper(d, r4, r0);
113
42.2M
      i5 = ConcatUpperUpper(d, r5, r1);
114
42.2M
      i6 = ConcatUpperUpper(d, r6, r2);
115
42.2M
      i7 = ConcatUpperUpper(d, r7, r3);
116
42.2M
      to.StorePart(d, i0, m + 0, n + 0);
117
42.2M
      to.StorePart(d, i1, m + 1, n + 0);
118
42.2M
      to.StorePart(d, i2, m + 2, n + 0);
119
42.2M
      to.StorePart(d, i3, m + 3, n + 0);
120
42.2M
      to.StorePart(d, i4, m + 4, n + 0);
121
42.2M
      to.StorePart(d, i5, m + 5, n + 0);
122
42.2M
      to.StorePart(d, i6, m + 6, n + 0);
123
42.2M
      to.StorePart(d, i7, m + 7, n + 0);
124
42.2M
    }
125
21.1M
  }
126
10.5M
}
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
31.2M
    size_t ROWSp, size_t COLSp) {
72
31.2M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
31.2M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
31.2M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
31.2M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
31.2M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
93.7M
  for (size_t n = 0; n < ROWS; n += 8) {
78
124M
    for (size_t m = 0; m < COLS; m += 8) {
79
62.4M
      const BlockDesc<8> d;
80
62.4M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
62.4M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
62.4M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
62.4M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
62.4M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
62.4M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
62.4M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
62.4M
      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
62.4M
      const auto q0 = InterleaveLower(d, i0, i2);
91
62.4M
      const auto q1 = InterleaveLower(d, i1, i3);
92
62.4M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
62.4M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
62.4M
      const auto q4 = InterleaveLower(d, i4, i6);
95
62.4M
      const auto q5 = InterleaveLower(d, i5, i7);
96
62.4M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
62.4M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
62.4M
      const auto r0 = InterleaveLower(d, q0, q1);
100
62.4M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
62.4M
      const auto r2 = InterleaveLower(d, q2, q3);
102
62.4M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
62.4M
      const auto r4 = InterleaveLower(d, q4, q5);
104
62.4M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
62.4M
      const auto r6 = InterleaveLower(d, q6, q7);
106
62.4M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
62.4M
      i0 = ConcatLowerLower(d, r4, r0);
109
62.4M
      i1 = ConcatLowerLower(d, r5, r1);
110
62.4M
      i2 = ConcatLowerLower(d, r6, r2);
111
62.4M
      i3 = ConcatLowerLower(d, r7, r3);
112
62.4M
      i4 = ConcatUpperUpper(d, r4, r0);
113
62.4M
      i5 = ConcatUpperUpper(d, r5, r1);
114
62.4M
      i6 = ConcatUpperUpper(d, r6, r2);
115
62.4M
      i7 = ConcatUpperUpper(d, r7, r3);
116
62.4M
      to.StorePart(d, i0, m + 0, n + 0);
117
62.4M
      to.StorePart(d, i1, m + 1, n + 0);
118
62.4M
      to.StorePart(d, i2, m + 2, n + 0);
119
62.4M
      to.StorePart(d, i3, m + 3, n + 0);
120
62.4M
      to.StorePart(d, i4, m + 4, n + 0);
121
62.4M
      to.StorePart(d, i5, m + 5, n + 0);
122
62.4M
      to.StorePart(d, i6, m + 6, n + 0);
123
62.4M
      to.StorePart(d, i7, m + 7, n + 0);
124
62.4M
    }
125
62.4M
  }
126
31.2M
}
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
31.2M
    size_t ROWSp, size_t COLSp) {
72
31.2M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
31.2M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
31.2M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
31.2M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
31.2M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
62.4M
  for (size_t n = 0; n < ROWS; n += 8) {
78
93.7M
    for (size_t m = 0; m < COLS; m += 8) {
79
62.4M
      const BlockDesc<8> d;
80
62.4M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
62.4M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
62.4M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
62.4M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
62.4M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
62.4M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
62.4M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
62.4M
      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
62.4M
      const auto q0 = InterleaveLower(d, i0, i2);
91
62.4M
      const auto q1 = InterleaveLower(d, i1, i3);
92
62.4M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
62.4M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
62.4M
      const auto q4 = InterleaveLower(d, i4, i6);
95
62.4M
      const auto q5 = InterleaveLower(d, i5, i7);
96
62.4M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
62.4M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
62.4M
      const auto r0 = InterleaveLower(d, q0, q1);
100
62.4M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
62.4M
      const auto r2 = InterleaveLower(d, q2, q3);
102
62.4M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
62.4M
      const auto r4 = InterleaveLower(d, q4, q5);
104
62.4M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
62.4M
      const auto r6 = InterleaveLower(d, q6, q7);
106
62.4M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
62.4M
      i0 = ConcatLowerLower(d, r4, r0);
109
62.4M
      i1 = ConcatLowerLower(d, r5, r1);
110
62.4M
      i2 = ConcatLowerLower(d, r6, r2);
111
62.4M
      i3 = ConcatLowerLower(d, r7, r3);
112
62.4M
      i4 = ConcatUpperUpper(d, r4, r0);
113
62.4M
      i5 = ConcatUpperUpper(d, r5, r1);
114
62.4M
      i6 = ConcatUpperUpper(d, r6, r2);
115
62.4M
      i7 = ConcatUpperUpper(d, r7, r3);
116
62.4M
      to.StorePart(d, i0, m + 0, n + 0);
117
62.4M
      to.StorePart(d, i1, m + 1, n + 0);
118
62.4M
      to.StorePart(d, i2, m + 2, n + 0);
119
62.4M
      to.StorePart(d, i3, m + 3, n + 0);
120
62.4M
      to.StorePart(d, i4, m + 4, n + 0);
121
62.4M
      to.StorePart(d, i5, m + 5, n + 0);
122
62.4M
      to.StorePart(d, i6, m + 6, n + 0);
123
62.4M
      to.StorePart(d, i7, m + 7, n + 0);
124
62.4M
    }
125
31.2M
  }
126
31.2M
}
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
17.6M
    size_t ROWSp, size_t COLSp) {
72
17.6M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
17.6M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
17.6M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
17.6M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
17.6M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
83.1M
  for (size_t n = 0; n < ROWS; n += 8) {
78
311M
    for (size_t m = 0; m < COLS; m += 8) {
79
246M
      const BlockDesc<8> d;
80
246M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
246M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
246M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
246M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
246M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
246M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
246M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
246M
      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
246M
      const auto q0 = InterleaveLower(d, i0, i2);
91
246M
      const auto q1 = InterleaveLower(d, i1, i3);
92
246M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
246M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
246M
      const auto q4 = InterleaveLower(d, i4, i6);
95
246M
      const auto q5 = InterleaveLower(d, i5, i7);
96
246M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
246M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
246M
      const auto r0 = InterleaveLower(d, q0, q1);
100
246M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
246M
      const auto r2 = InterleaveLower(d, q2, q3);
102
246M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
246M
      const auto r4 = InterleaveLower(d, q4, q5);
104
246M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
246M
      const auto r6 = InterleaveLower(d, q6, q7);
106
246M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
246M
      i0 = ConcatLowerLower(d, r4, r0);
109
246M
      i1 = ConcatLowerLower(d, r5, r1);
110
246M
      i2 = ConcatLowerLower(d, r6, r2);
111
246M
      i3 = ConcatLowerLower(d, r7, r3);
112
246M
      i4 = ConcatUpperUpper(d, r4, r0);
113
246M
      i5 = ConcatUpperUpper(d, r5, r1);
114
246M
      i6 = ConcatUpperUpper(d, r6, r2);
115
246M
      i7 = ConcatUpperUpper(d, r7, r3);
116
246M
      to.StorePart(d, i0, m + 0, n + 0);
117
246M
      to.StorePart(d, i1, m + 1, n + 0);
118
246M
      to.StorePart(d, i2, m + 2, n + 0);
119
246M
      to.StorePart(d, i3, m + 3, n + 0);
120
246M
      to.StorePart(d, i4, m + 4, n + 0);
121
246M
      to.StorePart(d, i5, m + 5, n + 0);
122
246M
      to.StorePart(d, i6, m + 6, n + 0);
123
246M
      to.StorePart(d, i7, m + 7, n + 0);
124
246M
    }
125
65.4M
  }
126
17.6M
}
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
26.4M
    size_t ROWSp, size_t COLSp) {
72
26.4M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
26.4M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
26.4M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
26.4M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
26.4M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
52.8M
  for (size_t n = 0; n < ROWS; n += 8) {
78
52.8M
    for (size_t m = 0; m < COLS; m += 8) {
79
26.4M
      const BlockDesc<8> d;
80
26.4M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
26.4M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
26.4M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
26.4M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
26.4M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
26.4M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
26.4M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
26.4M
      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
26.4M
      const auto q0 = InterleaveLower(d, i0, i2);
91
26.4M
      const auto q1 = InterleaveLower(d, i1, i3);
92
26.4M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
26.4M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
26.4M
      const auto q4 = InterleaveLower(d, i4, i6);
95
26.4M
      const auto q5 = InterleaveLower(d, i5, i7);
96
26.4M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
26.4M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
26.4M
      const auto r0 = InterleaveLower(d, q0, q1);
100
26.4M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
26.4M
      const auto r2 = InterleaveLower(d, q2, q3);
102
26.4M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
26.4M
      const auto r4 = InterleaveLower(d, q4, q5);
104
26.4M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
26.4M
      const auto r6 = InterleaveLower(d, q6, q7);
106
26.4M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
26.4M
      i0 = ConcatLowerLower(d, r4, r0);
109
26.4M
      i1 = ConcatLowerLower(d, r5, r1);
110
26.4M
      i2 = ConcatLowerLower(d, r6, r2);
111
26.4M
      i3 = ConcatLowerLower(d, r7, r3);
112
26.4M
      i4 = ConcatUpperUpper(d, r4, r0);
113
26.4M
      i5 = ConcatUpperUpper(d, r5, r1);
114
26.4M
      i6 = ConcatUpperUpper(d, r6, r2);
115
26.4M
      i7 = ConcatUpperUpper(d, r7, r3);
116
26.4M
      to.StorePart(d, i0, m + 0, n + 0);
117
26.4M
      to.StorePart(d, i1, m + 1, n + 0);
118
26.4M
      to.StorePart(d, i2, m + 2, n + 0);
119
26.4M
      to.StorePart(d, i3, m + 3, n + 0);
120
26.4M
      to.StorePart(d, i4, m + 4, n + 0);
121
26.4M
      to.StorePart(d, i5, m + 5, n + 0);
122
26.4M
      to.StorePart(d, i6, m + 6, n + 0);
123
26.4M
      to.StorePart(d, i7, m + 7, n + 0);
124
26.4M
    }
125
26.4M
  }
126
26.4M
}
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
517k
    size_t ROWSp, size_t COLSp) {
72
517k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
517k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
517k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
517k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
517k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
1.55M
  for (size_t n = 0; n < ROWS; n += 8) {
78
3.10M
    for (size_t m = 0; m < COLS; m += 8) {
79
2.07M
      const BlockDesc<8> d;
80
2.07M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
2.07M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
2.07M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
2.07M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
2.07M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
2.07M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
2.07M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
2.07M
      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.07M
      const auto q0 = InterleaveLower(d, i0, i2);
91
2.07M
      const auto q1 = InterleaveLower(d, i1, i3);
92
2.07M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
2.07M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
2.07M
      const auto q4 = InterleaveLower(d, i4, i6);
95
2.07M
      const auto q5 = InterleaveLower(d, i5, i7);
96
2.07M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
2.07M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
2.07M
      const auto r0 = InterleaveLower(d, q0, q1);
100
2.07M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
2.07M
      const auto r2 = InterleaveLower(d, q2, q3);
102
2.07M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
2.07M
      const auto r4 = InterleaveLower(d, q4, q5);
104
2.07M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
2.07M
      const auto r6 = InterleaveLower(d, q6, q7);
106
2.07M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
2.07M
      i0 = ConcatLowerLower(d, r4, r0);
109
2.07M
      i1 = ConcatLowerLower(d, r5, r1);
110
2.07M
      i2 = ConcatLowerLower(d, r6, r2);
111
2.07M
      i3 = ConcatLowerLower(d, r7, r3);
112
2.07M
      i4 = ConcatUpperUpper(d, r4, r0);
113
2.07M
      i5 = ConcatUpperUpper(d, r5, r1);
114
2.07M
      i6 = ConcatUpperUpper(d, r6, r2);
115
2.07M
      i7 = ConcatUpperUpper(d, r7, r3);
116
2.07M
      to.StorePart(d, i0, m + 0, n + 0);
117
2.07M
      to.StorePart(d, i1, m + 1, n + 0);
118
2.07M
      to.StorePart(d, i2, m + 2, n + 0);
119
2.07M
      to.StorePart(d, i3, m + 3, n + 0);
120
2.07M
      to.StorePart(d, i4, m + 4, n + 0);
121
2.07M
      to.StorePart(d, i5, m + 5, n + 0);
122
2.07M
      to.StorePart(d, i6, m + 6, n + 0);
123
2.07M
      to.StorePart(d, i7, m + 7, n + 0);
124
2.07M
    }
125
1.03M
  }
126
517k
}
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.46M
    size_t ROWSp, size_t COLSp) {
72
1.46M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
1.46M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
1.46M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
1.46M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
1.46M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
2.92M
  for (size_t n = 0; n < ROWS; n += 8) {
78
4.38M
    for (size_t m = 0; m < COLS; m += 8) {
79
2.92M
      const BlockDesc<8> d;
80
2.92M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
2.92M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
2.92M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
2.92M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
2.92M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
2.92M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
2.92M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
2.92M
      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.92M
      const auto q0 = InterleaveLower(d, i0, i2);
91
2.92M
      const auto q1 = InterleaveLower(d, i1, i3);
92
2.92M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
2.92M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
2.92M
      const auto q4 = InterleaveLower(d, i4, i6);
95
2.92M
      const auto q5 = InterleaveLower(d, i5, i7);
96
2.92M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
2.92M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
2.92M
      const auto r0 = InterleaveLower(d, q0, q1);
100
2.92M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
2.92M
      const auto r2 = InterleaveLower(d, q2, q3);
102
2.92M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
2.92M
      const auto r4 = InterleaveLower(d, q4, q5);
104
2.92M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
2.92M
      const auto r6 = InterleaveLower(d, q6, q7);
106
2.92M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
2.92M
      i0 = ConcatLowerLower(d, r4, r0);
109
2.92M
      i1 = ConcatLowerLower(d, r5, r1);
110
2.92M
      i2 = ConcatLowerLower(d, r6, r2);
111
2.92M
      i3 = ConcatLowerLower(d, r7, r3);
112
2.92M
      i4 = ConcatUpperUpper(d, r4, r0);
113
2.92M
      i5 = ConcatUpperUpper(d, r5, r1);
114
2.92M
      i6 = ConcatUpperUpper(d, r6, r2);
115
2.92M
      i7 = ConcatUpperUpper(d, r7, r3);
116
2.92M
      to.StorePart(d, i0, m + 0, n + 0);
117
2.92M
      to.StorePart(d, i1, m + 1, n + 0);
118
2.92M
      to.StorePart(d, i2, m + 2, n + 0);
119
2.92M
      to.StorePart(d, i3, m + 3, n + 0);
120
2.92M
      to.StorePart(d, i4, m + 4, n + 0);
121
2.92M
      to.StorePart(d, i5, m + 5, n + 0);
122
2.92M
      to.StorePart(d, i6, m + 6, n + 0);
123
2.92M
      to.StorePart(d, i7, m + 7, n + 0);
124
2.92M
    }
125
1.46M
  }
126
1.46M
}
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
757k
    size_t ROWSp, size_t COLSp) {
72
757k
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
757k
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
757k
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
757k
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
757k
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
2.27M
  for (size_t n = 0; n < ROWS; n += 8) {
78
3.03M
    for (size_t m = 0; m < COLS; m += 8) {
79
1.51M
      const BlockDesc<8> d;
80
1.51M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
1.51M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
1.51M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
1.51M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
1.51M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
1.51M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
1.51M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
1.51M
      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.51M
      const auto q0 = InterleaveLower(d, i0, i2);
91
1.51M
      const auto q1 = InterleaveLower(d, i1, i3);
92
1.51M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
1.51M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
1.51M
      const auto q4 = InterleaveLower(d, i4, i6);
95
1.51M
      const auto q5 = InterleaveLower(d, i5, i7);
96
1.51M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
1.51M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
1.51M
      const auto r0 = InterleaveLower(d, q0, q1);
100
1.51M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
1.51M
      const auto r2 = InterleaveLower(d, q2, q3);
102
1.51M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
1.51M
      const auto r4 = InterleaveLower(d, q4, q5);
104
1.51M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
1.51M
      const auto r6 = InterleaveLower(d, q6, q7);
106
1.51M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
1.51M
      i0 = ConcatLowerLower(d, r4, r0);
109
1.51M
      i1 = ConcatLowerLower(d, r5, r1);
110
1.51M
      i2 = ConcatLowerLower(d, r6, r2);
111
1.51M
      i3 = ConcatLowerLower(d, r7, r3);
112
1.51M
      i4 = ConcatUpperUpper(d, r4, r0);
113
1.51M
      i5 = ConcatUpperUpper(d, r5, r1);
114
1.51M
      i6 = ConcatUpperUpper(d, r6, r2);
115
1.51M
      i7 = ConcatUpperUpper(d, r7, r3);
116
1.51M
      to.StorePart(d, i0, m + 0, n + 0);
117
1.51M
      to.StorePart(d, i1, m + 1, n + 0);
118
1.51M
      to.StorePart(d, i2, m + 2, n + 0);
119
1.51M
      to.StorePart(d, i3, m + 3, n + 0);
120
1.51M
      to.StorePart(d, i4, m + 4, n + 0);
121
1.51M
      to.StorePart(d, i5, m + 5, n + 0);
122
1.51M
      to.StorePart(d, i6, m + 6, n + 0);
123
1.51M
      to.StorePart(d, i7, m + 7, n + 0);
124
1.51M
    }
125
1.51M
  }
126
757k
}
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
189
    size_t ROWSp, size_t COLSp) {
72
189
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
189
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
189
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
189
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
189
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
378
  for (size_t n = 0; n < ROWS; n += 8) {
78
945
    for (size_t m = 0; m < COLS; m += 8) {
79
756
      const BlockDesc<8> d;
80
756
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
756
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
756
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
756
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
756
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
756
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
756
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
756
      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
756
      const auto q0 = InterleaveLower(d, i0, i2);
91
756
      const auto q1 = InterleaveLower(d, i1, i3);
92
756
      const auto q2 = InterleaveUpper(d, i0, i2);
93
756
      const auto q3 = InterleaveUpper(d, i1, i3);
94
756
      const auto q4 = InterleaveLower(d, i4, i6);
95
756
      const auto q5 = InterleaveLower(d, i5, i7);
96
756
      const auto q6 = InterleaveUpper(d, i4, i6);
97
756
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
756
      const auto r0 = InterleaveLower(d, q0, q1);
100
756
      const auto r1 = InterleaveUpper(d, q0, q1);
101
756
      const auto r2 = InterleaveLower(d, q2, q3);
102
756
      const auto r3 = InterleaveUpper(d, q2, q3);
103
756
      const auto r4 = InterleaveLower(d, q4, q5);
104
756
      const auto r5 = InterleaveUpper(d, q4, q5);
105
756
      const auto r6 = InterleaveLower(d, q6, q7);
106
756
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
756
      i0 = ConcatLowerLower(d, r4, r0);
109
756
      i1 = ConcatLowerLower(d, r5, r1);
110
756
      i2 = ConcatLowerLower(d, r6, r2);
111
756
      i3 = ConcatLowerLower(d, r7, r3);
112
756
      i4 = ConcatUpperUpper(d, r4, r0);
113
756
      i5 = ConcatUpperUpper(d, r5, r1);
114
756
      i6 = ConcatUpperUpper(d, r6, r2);
115
756
      i7 = ConcatUpperUpper(d, r7, r3);
116
756
      to.StorePart(d, i0, m + 0, n + 0);
117
756
      to.StorePart(d, i1, m + 1, n + 0);
118
756
      to.StorePart(d, i2, m + 2, n + 0);
119
756
      to.StorePart(d, i3, m + 3, n + 0);
120
756
      to.StorePart(d, i4, m + 4, n + 0);
121
756
      to.StorePart(d, i5, m + 5, n + 0);
122
756
      to.StorePart(d, i6, m + 6, n + 0);
123
756
      to.StorePart(d, i7, m + 7, n + 0);
124
756
    }
125
189
  }
126
189
}
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
144
    size_t ROWSp, size_t COLSp) {
72
144
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
144
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
144
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
144
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
144
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
720
  for (size_t n = 0; n < ROWS; n += 8) {
78
1.15k
    for (size_t m = 0; m < COLS; m += 8) {
79
576
      const BlockDesc<8> d;
80
576
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
576
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
576
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
576
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
576
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
576
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
576
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
576
      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
576
      const auto q0 = InterleaveLower(d, i0, i2);
91
576
      const auto q1 = InterleaveLower(d, i1, i3);
92
576
      const auto q2 = InterleaveUpper(d, i0, i2);
93
576
      const auto q3 = InterleaveUpper(d, i1, i3);
94
576
      const auto q4 = InterleaveLower(d, i4, i6);
95
576
      const auto q5 = InterleaveLower(d, i5, i7);
96
576
      const auto q6 = InterleaveUpper(d, i4, i6);
97
576
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
576
      const auto r0 = InterleaveLower(d, q0, q1);
100
576
      const auto r1 = InterleaveUpper(d, q0, q1);
101
576
      const auto r2 = InterleaveLower(d, q2, q3);
102
576
      const auto r3 = InterleaveUpper(d, q2, q3);
103
576
      const auto r4 = InterleaveLower(d, q4, q5);
104
576
      const auto r5 = InterleaveUpper(d, q4, q5);
105
576
      const auto r6 = InterleaveLower(d, q6, q7);
106
576
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
576
      i0 = ConcatLowerLower(d, r4, r0);
109
576
      i1 = ConcatLowerLower(d, r5, r1);
110
576
      i2 = ConcatLowerLower(d, r6, r2);
111
576
      i3 = ConcatLowerLower(d, r7, r3);
112
576
      i4 = ConcatUpperUpper(d, r4, r0);
113
576
      i5 = ConcatUpperUpper(d, r5, r1);
114
576
      i6 = ConcatUpperUpper(d, r6, r2);
115
576
      i7 = ConcatUpperUpper(d, r7, r3);
116
576
      to.StorePart(d, i0, m + 0, n + 0);
117
576
      to.StorePart(d, i1, m + 1, n + 0);
118
576
      to.StorePart(d, i2, m + 2, n + 0);
119
576
      to.StorePart(d, i3, m + 3, n + 0);
120
576
      to.StorePart(d, i4, m + 4, n + 0);
121
576
      to.StorePart(d, i5, m + 5, n + 0);
122
576
      to.StorePart(d, i6, m + 6, n + 0);
123
576
      to.StorePart(d, i7, m + 7, n + 0);
124
576
    }
125
576
  }
126
144
}
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.03M
    size_t ROWSp, size_t COLSp) {
72
1.03M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
1.03M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
1.03M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
1.03M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
1.03M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
5.22M
  for (size_t n = 0; n < ROWS; n += 8) {
78
25.5M
    for (size_t m = 0; m < COLS; m += 8) {
79
21.3M
      const BlockDesc<8> d;
80
21.3M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
21.3M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
21.3M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
21.3M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
21.3M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
21.3M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
21.3M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
21.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
21.3M
      const auto q0 = InterleaveLower(d, i0, i2);
91
21.3M
      const auto q1 = InterleaveLower(d, i1, i3);
92
21.3M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
21.3M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
21.3M
      const auto q4 = InterleaveLower(d, i4, i6);
95
21.3M
      const auto q5 = InterleaveLower(d, i5, i7);
96
21.3M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
21.3M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
21.3M
      const auto r0 = InterleaveLower(d, q0, q1);
100
21.3M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
21.3M
      const auto r2 = InterleaveLower(d, q2, q3);
102
21.3M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
21.3M
      const auto r4 = InterleaveLower(d, q4, q5);
104
21.3M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
21.3M
      const auto r6 = InterleaveLower(d, q6, q7);
106
21.3M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
21.3M
      i0 = ConcatLowerLower(d, r4, r0);
109
21.3M
      i1 = ConcatLowerLower(d, r5, r1);
110
21.3M
      i2 = ConcatLowerLower(d, r6, r2);
111
21.3M
      i3 = ConcatLowerLower(d, r7, r3);
112
21.3M
      i4 = ConcatUpperUpper(d, r4, r0);
113
21.3M
      i5 = ConcatUpperUpper(d, r5, r1);
114
21.3M
      i6 = ConcatUpperUpper(d, r6, r2);
115
21.3M
      i7 = ConcatUpperUpper(d, r7, r3);
116
21.3M
      to.StorePart(d, i0, m + 0, n + 0);
117
21.3M
      to.StorePart(d, i1, m + 1, n + 0);
118
21.3M
      to.StorePart(d, i2, m + 2, n + 0);
119
21.3M
      to.StorePart(d, i3, m + 3, n + 0);
120
21.3M
      to.StorePart(d, i4, m + 4, n + 0);
121
21.3M
      to.StorePart(d, i5, m + 5, n + 0);
122
21.3M
      to.StorePart(d, i6, m + 6, n + 0);
123
21.3M
      to.StorePart(d, i7, m + 7, n + 0);
124
21.3M
    }
125
4.19M
  }
126
1.03M
}
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.29M
    size_t ROWSp, size_t COLSp) {
72
5.29M
  size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0;
73
5.29M
  size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0;
74
5.29M
  JXL_DASSERT(Lanes(BlockDesc<8>()) == 8);
75
5.29M
  static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows");
76
5.29M
  static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns");
77
10.5M
  for (size_t n = 0; n < ROWS; n += 8) {
78
10.5M
    for (size_t m = 0; m < COLS; m += 8) {
79
5.29M
      const BlockDesc<8> d;
80
5.29M
      auto i0 = from.LoadPart(d, n + 0, m + 0);
81
5.29M
      auto i1 = from.LoadPart(d, n + 1, m + 0);
82
5.29M
      auto i2 = from.LoadPart(d, n + 2, m + 0);
83
5.29M
      auto i3 = from.LoadPart(d, n + 3, m + 0);
84
5.29M
      auto i4 = from.LoadPart(d, n + 4, m + 0);
85
5.29M
      auto i5 = from.LoadPart(d, n + 5, m + 0);
86
5.29M
      auto i6 = from.LoadPart(d, n + 6, m + 0);
87
5.29M
      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.29M
      const auto q0 = InterleaveLower(d, i0, i2);
91
5.29M
      const auto q1 = InterleaveLower(d, i1, i3);
92
5.29M
      const auto q2 = InterleaveUpper(d, i0, i2);
93
5.29M
      const auto q3 = InterleaveUpper(d, i1, i3);
94
5.29M
      const auto q4 = InterleaveLower(d, i4, i6);
95
5.29M
      const auto q5 = InterleaveLower(d, i5, i7);
96
5.29M
      const auto q6 = InterleaveUpper(d, i4, i6);
97
5.29M
      const auto q7 = InterleaveUpper(d, i5, i7);
98
99
5.29M
      const auto r0 = InterleaveLower(d, q0, q1);
100
5.29M
      const auto r1 = InterleaveUpper(d, q0, q1);
101
5.29M
      const auto r2 = InterleaveLower(d, q2, q3);
102
5.29M
      const auto r3 = InterleaveUpper(d, q2, q3);
103
5.29M
      const auto r4 = InterleaveLower(d, q4, q5);
104
5.29M
      const auto r5 = InterleaveUpper(d, q4, q5);
105
5.29M
      const auto r6 = InterleaveLower(d, q6, q7);
106
5.29M
      const auto r7 = InterleaveUpper(d, q6, q7);
107
108
5.29M
      i0 = ConcatLowerLower(d, r4, r0);
109
5.29M
      i1 = ConcatLowerLower(d, r5, r1);
110
5.29M
      i2 = ConcatLowerLower(d, r6, r2);
111
5.29M
      i3 = ConcatLowerLower(d, r7, r3);
112
5.29M
      i4 = ConcatUpperUpper(d, r4, r0);
113
5.29M
      i5 = ConcatUpperUpper(d, r5, r1);
114
5.29M
      i6 = ConcatUpperUpper(d, r6, r2);
115
5.29M
      i7 = ConcatUpperUpper(d, r7, r3);
116
5.29M
      to.StorePart(d, i0, m + 0, n + 0);
117
5.29M
      to.StorePart(d, i1, m + 1, n + 0);
118
5.29M
      to.StorePart(d, i2, m + 2, n + 0);
119
5.29M
      to.StorePart(d, i3, m + 3, n + 0);
120
5.29M
      to.StorePart(d, i4, m + 4, n + 0);
121
5.29M
      to.StorePart(d, i5, m + 5, n + 0);
122
5.29M
      to.StorePart(d, i6, m + 6, n + 0);
123
5.29M
      to.StorePart(d, i7, m + 7, n + 0);
124
5.29M
    }
125
5.29M
  }
126
5.29M
}
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
720M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
720M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
720M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
720M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
720M
  }
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
758k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
758k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
758k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
758k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
758k
  }
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
469k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
469k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
469k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
469k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
469k
  }
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
410k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
410k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
410k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
410k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
410k
  }
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
172k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
172k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
172k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
172k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
172k
  }
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
486k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
486k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
486k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
486k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
486k
  }
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
251k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
251k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
251k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
251k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
251k
  }
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.63M
  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.63M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.63M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.63M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.63M
  }
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
486k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
486k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
486k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
486k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
486k
  }
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
251k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
251k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
251k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
251k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
251k
  }
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
172k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
172k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
172k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
172k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
172k
  }
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
113k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
113k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
113k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
113k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
113k
  }
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
758k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
758k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
758k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
758k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
758k
  }
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
469k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
469k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
469k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
469k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
469k
  }
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
410k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
410k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
410k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
410k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
410k
  }
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
172k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
172k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
172k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
172k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
172k
  }
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
486k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
486k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
486k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
486k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
486k
  }
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
251k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
251k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
251k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
251k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
251k
  }
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
14.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
14.8M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
14.8M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
14.8M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
14.8M
  }
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
486k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
486k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
486k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
486k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
486k
  }
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
251k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
251k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
251k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
251k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
251k
  }
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
172k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
172k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
172k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
172k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
172k
  }
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
113k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
113k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
113k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
113k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
113k
  }
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
184M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
184M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
184M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
184M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
184M
  }
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
184M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
184M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
184M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
184M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
184M
  }
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
211M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
211M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
211M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
211M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
211M
  }
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
10.5M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
10.5M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
10.5M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
10.5M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
10.5M
  }
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
31.2M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
31.2M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
31.2M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
31.2M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
31.2M
  }
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
31.2M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
31.2M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
31.2M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
31.2M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
31.2M
  }
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
26.4M
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
26.4M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
26.4M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
26.4M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
26.4M
  }
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.26M
  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.26M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
2.26M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
2.26M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
2.26M
  }
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.38M
  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.38M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.38M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.38M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.38M
  }
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.23M
  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.23M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.23M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.23M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.23M
  }
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
517k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
517k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
517k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
517k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
517k
  }
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.46M
  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.46M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.46M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.46M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.46M
  }
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
757k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
757k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
757k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
757k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
757k
  }
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
189
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
189
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
189
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
189
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
189
  }
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
144
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
144
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
144
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
144
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
144
  }
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.29M
  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.29M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
5.29M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
5.29M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
5.29M
  }
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.46M
  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.46M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
1.46M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
1.46M
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
1.46M
  }
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
757k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
757k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
757k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
757k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
757k
  }
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
517k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
517k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
517k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
517k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
517k
  }
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
189
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
189
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
189
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
189
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
189
  }
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
144
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
144
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
144
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
144
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
144
  }
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
337k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
337k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
337k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
337k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
337k
  }
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
172k
  static void Run(const From& from, const To& to) {
174
    // This does not guarantee anything, just saves from the most stupid
175
    // mistakes.
176
172k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
177
172k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
178
172k
    GenericTransposeBlock<N, M>(tag, from, to, N, M);
179
172k
  }
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
19.4M
  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.4M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
19.4M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
19.4M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
19.4M
                                const From&, const To&, size_t, size_t) =
194
19.4M
        GenericTransposeBlock<0, 0, From, To>;
195
19.4M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
19.4M
  }
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
113k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
113k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
113k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
113k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
113k
                                const From&, const To&, size_t, size_t) =
194
113k
        GenericTransposeBlock<0, 0, From, To>;
195
113k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
113k
  }
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
98.4k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
98.4k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
98.4k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
98.4k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
98.4k
                                const From&, const To&, size_t, size_t) =
194
98.4k
        GenericTransposeBlock<0, 0, From, To>;
195
98.4k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
98.4k
  }
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
55.4k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
55.4k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
55.4k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
55.4k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
55.4k
                                const From&, const To&, size_t, size_t) =
194
55.4k
        GenericTransposeBlock<0, 0, From, To>;
195
55.4k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
55.4k
  }
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
18.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
18.5k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
18.5k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
18.5k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
18.5k
                                const From&, const To&, size_t, size_t) =
194
18.5k
        GenericTransposeBlock<0, 0, From, To>;
195
18.5k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
18.5k
  }
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.50k
  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.50k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.50k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.50k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.50k
                                const From&, const To&, size_t, size_t) =
194
6.50k
        GenericTransposeBlock<0, 0, From, To>;
195
6.50k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.50k
  }
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
113k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
113k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
113k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
113k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
113k
                                const From&, const To&, size_t, size_t) =
194
113k
        GenericTransposeBlock<0, 0, From, To>;
195
113k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
113k
  }
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
98.4k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
98.4k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
98.4k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
98.4k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
98.4k
                                const From&, const To&, size_t, size_t) =
194
98.4k
        GenericTransposeBlock<0, 0, From, To>;
195
98.4k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
98.4k
  }
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
55.4k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
55.4k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
55.4k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
55.4k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
55.4k
                                const From&, const To&, size_t, size_t) =
194
55.4k
        GenericTransposeBlock<0, 0, From, To>;
195
55.4k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
55.4k
  }
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
18.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
18.5k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
18.5k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
18.5k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
18.5k
                                const From&, const To&, size_t, size_t) =
194
18.5k
        GenericTransposeBlock<0, 0, From, To>;
195
18.5k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
18.5k
  }
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.50k
  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.50k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.50k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.50k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.50k
                                const From&, const To&, size_t, size_t) =
194
6.50k
        GenericTransposeBlock<0, 0, From, To>;
195
6.50k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.50k
  }
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.20M
  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.20M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.20M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.20M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.20M
                                const From&, const To&, size_t, size_t) =
194
6.20M
        GenericTransposeBlock<0, 0, From, To>;
195
6.20M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.20M
  }
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.20M
  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.20M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
6.20M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
6.20M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
6.20M
                                const From&, const To&, size_t, size_t) =
194
6.20M
        GenericTransposeBlock<0, 0, From, To>;
195
6.20M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
6.20M
  }
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.10M
  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.10M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
2.10M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
2.10M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
2.10M
                                const From&, const To&, size_t, size_t) =
194
2.10M
        GenericTransposeBlock<0, 0, From, To>;
195
2.10M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
2.10M
  }
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
365k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
365k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
365k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
365k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
365k
                                const From&, const To&, size_t, size_t) =
194
365k
        GenericTransposeBlock<0, 0, From, To>;
195
365k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
365k
  }
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.40M
  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.40M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
1.40M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
1.40M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
1.40M
                                const From&, const To&, size_t, size_t) =
194
1.40M
        GenericTransposeBlock<0, 0, From, To>;
195
1.40M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
1.40M
  }
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.40M
  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.40M
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
1.40M
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
1.40M
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
1.40M
                                const From&, const To&, size_t, size_t) =
194
1.40M
        GenericTransposeBlock<0, 0, From, To>;
195
1.40M
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
1.40M
  }
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
337k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
337k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
337k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
337k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
337k
                                const From&, const To&, size_t, size_t) =
194
337k
        GenericTransposeBlock<0, 0, From, To>;
195
337k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
337k
  }
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
172k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
172k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
172k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
172k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
172k
                                const From&, const To&, size_t, size_t) =
194
172k
        GenericTransposeBlock<0, 0, From, To>;
195
172k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
172k
  }
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
295k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
295k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
295k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
295k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
295k
                                const From&, const To&, size_t, size_t) =
194
295k
        GenericTransposeBlock<0, 0, From, To>;
195
295k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
295k
  }
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
41.4k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
41.4k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
41.4k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
41.4k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
41.4k
                                const From&, const To&, size_t, size_t) =
194
41.4k
        GenericTransposeBlock<0, 0, From, To>;
195
41.4k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
41.4k
  }
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.0k
  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.0k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
19.0k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
19.0k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
19.0k
                                const From&, const To&, size_t, size_t) =
194
19.0k
        GenericTransposeBlock<0, 0, From, To>;
195
19.0k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
19.0k
  }
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
166k
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
166k
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
166k
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
166k
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
166k
                                const From&, const To&, size_t, size_t) =
194
166k
        GenericTransposeBlock<0, 0, From, To>;
195
166k
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
166k
  }
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
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
  }
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
3
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
3
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
3
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
3
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
3
                                const From&, const To&, size_t, size_t) =
194
3
        GenericTransposeBlock<0, 0, From, To>;
195
3
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
3
  }
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
24
  static void Run(const From& from, const To& to) {
188
    // This does not guarantee anything, just saves from the most stupid
189
    // mistakes.
190
24
    JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0));
191
24
    TransposeSimdTag<TransposeUseSimd(N, M)> tag;
192
24
    constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>,
193
24
                                const From&, const To&, size_t, size_t) =
194
24
        GenericTransposeBlock<0, 0, From, To>;
195
24
    NoInlineWrapper(transpose, tag, from, to, N, M);
196
24
  }
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_