/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 | 134M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { |
42 | 134M | return f(args...); |
43 | 134M | } 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.58M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 1.58M | return f(args...); | 43 | 1.58M | } |
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 | 415k | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 415k | return f(args...); | 43 | 415k | } |
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.58M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 1.58M | return f(args...); | 43 | 1.58M | } |
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 | 415k | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 415k | return f(args...); | 43 | 415k | } |
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 | 103M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 103M | return f(args...); | 43 | 103M | } |
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 | 20.7M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 20.7M | return f(args...); | 43 | 20.7M | } |
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.71M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 4.71M | return f(args...); | 43 | 4.71M | } |
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.22M | JXL_NOINLINE void NoInlineWrapper(const T& f, const Args&... args) { | 42 | 1.22M | return f(args...); | 43 | 1.22M | } |
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 | 709M | size_t ROWSp, size_t COLSp) { |
53 | 709M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; |
54 | 709M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; |
55 | 4.43G | for (size_t n = 0; n < ROWS; ++n) { |
56 | 22.1G | for (size_t m = 0; m < COLS; ++m) { |
57 | 18.4G | to.Write(from.Read(n, m), m, n); |
58 | 18.4G | } |
59 | 3.72G | } |
60 | 709M | } 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 | 831k | size_t ROWSp, size_t COLSp) { | 53 | 831k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 831k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 7.48M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 33.2M | for (size_t m = 0; m < COLS; ++m) { | 57 | 26.6M | to.Write(from.Read(n, m), m, n); | 58 | 26.6M | } | 59 | 6.65M | } | 60 | 831k | } |
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 | 511k | size_t ROWSp, size_t COLSp) { | 53 | 511k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 511k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 2.55M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 18.4M | for (size_t m = 0; m < COLS; ++m) { | 57 | 16.3M | to.Write(from.Read(n, m), m, n); | 58 | 16.3M | } | 59 | 2.04M | } | 60 | 511k | } |
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 | 459k | size_t ROWSp, size_t COLSp) { | 53 | 459k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 459k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 2.29M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 9.18M | for (size_t m = 0; m < COLS; ++m) { | 57 | 7.34M | to.Write(from.Read(n, m), m, n); | 58 | 7.34M | } | 59 | 1.83M | } | 60 | 459k | } |
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 | 518k | size_t ROWSp, size_t COLSp) { | 53 | 518k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 518k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.03M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.55M | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.03M | to.Write(from.Read(n, m), m, n); | 58 | 1.03M | } | 59 | 518k | } | 60 | 518k | } |
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 | 266k | size_t ROWSp, size_t COLSp) { | 53 | 266k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 266k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 798k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.06M | for (size_t m = 0; m < COLS; ++m) { | 57 | 532k | to.Write(from.Read(n, m), m, n); | 58 | 532k | } | 59 | 532k | } | 60 | 266k | } |
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 | 187k | size_t ROWSp, size_t COLSp) { | 53 | 187k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 187k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 562k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.12M | for (size_t m = 0; m < COLS; ++m) { | 57 | 749k | to.Write(from.Read(n, m), m, n); | 58 | 749k | } | 59 | 374k | } | 60 | 187k | } |
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 | 125k | size_t ROWSp, size_t COLSp) { | 53 | 125k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 125k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 375k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.25M | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.00M | to.Write(from.Read(n, m), m, n); | 58 | 1.00M | } | 59 | 250k | } | 60 | 125k | } |
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 | 62.8k | size_t ROWSp, size_t COLSp) { | 53 | 62.8k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 62.8k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 314k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 753k | for (size_t m = 0; m < COLS; ++m) { | 57 | 502k | to.Write(from.Read(n, m), m, n); | 58 | 502k | } | 59 | 251k | } | 60 | 62.8k | } |
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 | 831k | size_t ROWSp, size_t COLSp) { | 53 | 831k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 831k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 7.48M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 33.2M | for (size_t m = 0; m < COLS; ++m) { | 57 | 26.6M | to.Write(from.Read(n, m), m, n); | 58 | 26.6M | } | 59 | 6.65M | } | 60 | 831k | } |
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 | 511k | size_t ROWSp, size_t COLSp) { | 53 | 511k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 511k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 2.55M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 18.4M | for (size_t m = 0; m < COLS; ++m) { | 57 | 16.3M | to.Write(from.Read(n, m), m, n); | 58 | 16.3M | } | 59 | 2.04M | } | 60 | 511k | } |
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 | 459k | size_t ROWSp, size_t COLSp) { | 53 | 459k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 459k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 2.29M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 9.18M | for (size_t m = 0; m < COLS; ++m) { | 57 | 7.34M | to.Write(from.Read(n, m), m, n); | 58 | 7.34M | } | 59 | 1.83M | } | 60 | 459k | } |
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 | 518k | size_t ROWSp, size_t COLSp) { | 53 | 518k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 518k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.03M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.55M | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.03M | to.Write(from.Read(n, m), m, n); | 58 | 1.03M | } | 59 | 518k | } | 60 | 518k | } |
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 | 266k | size_t ROWSp, size_t COLSp) { | 53 | 266k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 266k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 798k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.06M | for (size_t m = 0; m < COLS; ++m) { | 57 | 532k | to.Write(from.Read(n, m), m, n); | 58 | 532k | } | 59 | 532k | } | 60 | 266k | } |
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 | 187k | size_t ROWSp, size_t COLSp) { | 53 | 187k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 187k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 562k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.12M | for (size_t m = 0; m < COLS; ++m) { | 57 | 749k | to.Write(from.Read(n, m), m, n); | 58 | 749k | } | 59 | 374k | } | 60 | 187k | } |
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 | 125k | size_t ROWSp, size_t COLSp) { | 53 | 125k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 125k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 375k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.25M | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.00M | to.Write(from.Read(n, m), m, n); | 58 | 1.00M | } | 59 | 250k | } | 60 | 125k | } |
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 | 62.8k | size_t ROWSp, size_t COLSp) { | 53 | 62.8k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 62.8k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 314k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 753k | for (size_t m = 0; m < COLS; ++m) { | 57 | 502k | to.Write(from.Read(n, m), m, n); | 58 | 502k | } | 59 | 251k | } | 60 | 62.8k | } |
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 | 221M | size_t ROWSp, size_t COLSp) { | 53 | 221M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 221M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.98G | for (size_t n = 0; n < ROWS; ++n) { | 56 | 8.84G | for (size_t m = 0; m < COLS; ++m) { | 57 | 7.07G | to.Write(from.Read(n, m), m, n); | 58 | 7.07G | } | 59 | 1.76G | } | 60 | 221M | } |
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 | 221M | size_t ROWSp, size_t COLSp) { | 53 | 221M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 221M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.10G | for (size_t n = 0; n < ROWS; ++n) { | 56 | 7.95G | for (size_t m = 0; m < COLS; ++m) { | 57 | 7.07G | to.Write(from.Read(n, m), m, n); | 58 | 7.07G | } | 59 | 884M | } | 60 | 221M | } |
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 | 252M | size_t ROWSp, size_t COLSp) { | 53 | 252M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 252M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.26G | for (size_t n = 0; n < ROWS; ++n) { | 56 | 5.05G | for (size_t m = 0; m < COLS; ++m) { | 57 | 4.04G | to.Write(from.Read(n, m), m, n); | 58 | 4.04G | } | 59 | 1.01G | } | 60 | 252M | } |
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.48M | size_t ROWSp, size_t COLSp) { | 53 | 2.48M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 2.48M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 12.4M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 89.3M | for (size_t m = 0; m < COLS; ++m) { | 57 | 79.4M | to.Write(from.Read(n, m), m, n); | 58 | 79.4M | } | 59 | 9.93M | } | 60 | 2.48M | } |
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.51M | size_t ROWSp, size_t COLSp) { | 53 | 1.51M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 1.51M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 13.6M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 60.6M | for (size_t m = 0; m < COLS; ++m) { | 57 | 48.5M | to.Write(from.Read(n, m), m, n); | 58 | 48.5M | } | 59 | 12.1M | } | 60 | 1.51M | } |
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.37M | size_t ROWSp, size_t COLSp) { | 53 | 1.37M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 1.37M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 6.89M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 27.5M | for (size_t m = 0; m < COLS; ++m) { | 57 | 22.0M | to.Write(from.Read(n, m), m, n); | 58 | 22.0M | } | 59 | 5.51M | } | 60 | 1.37M | } |
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.55M | size_t ROWSp, size_t COLSp) { | 53 | 1.55M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 1.55M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 4.65M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 6.21M | for (size_t m = 0; m < COLS; ++m) { | 57 | 3.10M | to.Write(from.Read(n, m), m, n); | 58 | 3.10M | } | 59 | 3.10M | } | 60 | 1.55M | } |
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 | 801k | size_t ROWSp, size_t COLSp) { | 53 | 801k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 801k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.60M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 2.40M | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.60M | to.Write(from.Read(n, m), m, n); | 58 | 1.60M | } | 59 | 801k | } | 60 | 801k | } |
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 | 562k | size_t ROWSp, size_t COLSp) { | 53 | 562k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 562k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.68M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 3.37M | for (size_t m = 0; m < COLS; ++m) { | 57 | 2.25M | to.Write(from.Read(n, m), m, n); | 58 | 2.25M | } | 59 | 1.12M | } | 60 | 562k | } |
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 | 429 | size_t ROWSp, size_t COLSp) { | 53 | 429 | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 429 | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 2.14k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 3.43k | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.71k | to.Write(from.Read(n, m), m, n); | 58 | 1.71k | } | 59 | 1.71k | } | 60 | 429 | } |
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 | 150 | size_t ROWSp, size_t COLSp) { | 53 | 150 | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 150 | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 300 | for (size_t n = 0; n < ROWS; ++n) { | 56 | 750 | for (size_t m = 0; m < COLS; ++m) { | 57 | 600 | to.Write(from.Read(n, m), m, n); | 58 | 600 | } | 59 | 150 | } | 60 | 150 | } |
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 | 372k | size_t ROWSp, size_t COLSp) { | 53 | 372k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 372k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 1.86M | for (size_t n = 0; n < ROWS; ++n) { | 56 | 4.46M | for (size_t m = 0; m < COLS; ++m) { | 57 | 2.97M | to.Write(from.Read(n, m), m, n); | 58 | 2.97M | } | 59 | 1.48M | } | 60 | 372k | } |
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 | 187k | size_t ROWSp, size_t COLSp) { | 53 | 187k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 54 | 187k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 55 | 562k | for (size_t n = 0; n < ROWS; ++n) { | 56 | 1.87M | for (size_t m = 0; m < COLS; ++m) { | 57 | 1.50M | to.Write(from.Read(n, m), m, n); | 58 | 1.50M | } | 59 | 375k | } | 60 | 187k | } |
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 | 171M | size_t ROWSp, size_t COLSp) { |
72 | 171M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; |
73 | 171M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; |
74 | 171M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); |
75 | 171M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); |
76 | 171M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); |
77 | 457M | for (size_t n = 0; n < ROWS; n += 8) { |
78 | 887M | for (size_t m = 0; m < COLS; m += 8) { |
79 | 601M | const BlockDesc<8> d; |
80 | 601M | auto i0 = from.LoadPart(d, n + 0, m + 0); |
81 | 601M | auto i1 = from.LoadPart(d, n + 1, m + 0); |
82 | 601M | auto i2 = from.LoadPart(d, n + 2, m + 0); |
83 | 601M | auto i3 = from.LoadPart(d, n + 3, m + 0); |
84 | 601M | auto i4 = from.LoadPart(d, n + 4, m + 0); |
85 | 601M | auto i5 = from.LoadPart(d, n + 5, m + 0); |
86 | 601M | auto i6 = from.LoadPart(d, n + 6, m + 0); |
87 | 601M | 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 | 601M | const auto q0 = InterleaveLower(d, i0, i2); |
91 | 601M | const auto q1 = InterleaveLower(d, i1, i3); |
92 | 601M | const auto q2 = InterleaveUpper(d, i0, i2); |
93 | 601M | const auto q3 = InterleaveUpper(d, i1, i3); |
94 | 601M | const auto q4 = InterleaveLower(d, i4, i6); |
95 | 601M | const auto q5 = InterleaveLower(d, i5, i7); |
96 | 601M | const auto q6 = InterleaveUpper(d, i4, i6); |
97 | 601M | const auto q7 = InterleaveUpper(d, i5, i7); |
98 | | |
99 | 601M | const auto r0 = InterleaveLower(d, q0, q1); |
100 | 601M | const auto r1 = InterleaveUpper(d, q0, q1); |
101 | 601M | const auto r2 = InterleaveLower(d, q2, q3); |
102 | 601M | const auto r3 = InterleaveUpper(d, q2, q3); |
103 | 601M | const auto r4 = InterleaveLower(d, q4, q5); |
104 | 601M | const auto r5 = InterleaveUpper(d, q4, q5); |
105 | 601M | const auto r6 = InterleaveLower(d, q6, q7); |
106 | 601M | const auto r7 = InterleaveUpper(d, q6, q7); |
107 | | |
108 | 601M | i0 = ConcatLowerLower(d, r4, r0); |
109 | 601M | i1 = ConcatLowerLower(d, r5, r1); |
110 | 601M | i2 = ConcatLowerLower(d, r6, r2); |
111 | 601M | i3 = ConcatLowerLower(d, r7, r3); |
112 | 601M | i4 = ConcatUpperUpper(d, r4, r0); |
113 | 601M | i5 = ConcatUpperUpper(d, r5, r1); |
114 | 601M | i6 = ConcatUpperUpper(d, r6, r2); |
115 | 601M | i7 = ConcatUpperUpper(d, r7, r3); |
116 | 601M | to.StorePart(d, i0, m + 0, n + 0); |
117 | 601M | to.StorePart(d, i1, m + 1, n + 0); |
118 | 601M | to.StorePart(d, i2, m + 2, n + 0); |
119 | 601M | to.StorePart(d, i3, m + 3, n + 0); |
120 | 601M | to.StorePart(d, i4, m + 4, n + 0); |
121 | 601M | to.StorePart(d, i5, m + 5, n + 0); |
122 | 601M | to.StorePart(d, i6, m + 6, n + 0); |
123 | 601M | to.StorePart(d, i7, m + 7, n + 0); |
124 | 601M | } |
125 | 286M | } |
126 | 171M | } 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 | 187k | size_t ROWSp, size_t COLSp) { | 72 | 187k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 187k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 187k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 187k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 187k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 562k | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 1.12M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 749k | const BlockDesc<8> d; | 80 | 749k | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 749k | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 749k | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 749k | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 749k | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 749k | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 749k | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 749k | 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 | 749k | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 749k | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 749k | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 749k | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 749k | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 749k | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 749k | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 749k | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 749k | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 749k | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 749k | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 749k | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 749k | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 749k | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 749k | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 749k | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 749k | i0 = ConcatLowerLower(d, r4, r0); | 109 | 749k | i1 = ConcatLowerLower(d, r5, r1); | 110 | 749k | i2 = ConcatLowerLower(d, r6, r2); | 111 | 749k | i3 = ConcatLowerLower(d, r7, r3); | 112 | 749k | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 749k | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 749k | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 749k | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 749k | to.StorePart(d, i0, m + 0, n + 0); | 117 | 749k | to.StorePart(d, i1, m + 1, n + 0); | 118 | 749k | to.StorePart(d, i2, m + 2, n + 0); | 119 | 749k | to.StorePart(d, i3, m + 3, n + 0); | 120 | 749k | to.StorePart(d, i4, m + 4, n + 0); | 121 | 749k | to.StorePart(d, i5, m + 5, n + 0); | 122 | 749k | to.StorePart(d, i6, m + 6, n + 0); | 123 | 749k | to.StorePart(d, i7, m + 7, n + 0); | 124 | 749k | } | 125 | 374k | } | 126 | 187k | } |
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 | 518k | size_t ROWSp, size_t COLSp) { | 72 | 518k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 518k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 518k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 518k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 518k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 1.55M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 2.07M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 1.03M | const BlockDesc<8> d; | 80 | 1.03M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 1.03M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 1.03M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 1.03M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 1.03M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 1.03M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 1.03M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 1.03M | 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.03M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 1.03M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 1.03M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 1.03M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 1.03M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 1.03M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 1.03M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 1.03M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 1.03M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 1.03M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 1.03M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 1.03M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 1.03M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 1.03M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 1.03M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 1.03M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 1.03M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 1.03M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 1.03M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 1.03M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 1.03M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 1.03M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 1.03M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 1.03M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 1.03M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 1.03M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 1.03M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 1.03M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 1.03M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 1.03M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 1.03M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 1.03M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 1.03M | } | 125 | 1.03M | } | 126 | 518k | } |
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 | 266k | size_t ROWSp, size_t COLSp) { | 72 | 266k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 266k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 266k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 266k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 266k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 532k | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 798k | for (size_t m = 0; m < COLS; m += 8) { | 79 | 532k | const BlockDesc<8> d; | 80 | 532k | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 532k | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 532k | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 532k | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 532k | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 532k | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 532k | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 532k | 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 | 532k | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 532k | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 532k | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 532k | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 532k | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 532k | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 532k | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 532k | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 532k | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 532k | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 532k | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 532k | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 532k | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 532k | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 532k | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 532k | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 532k | i0 = ConcatLowerLower(d, r4, r0); | 109 | 532k | i1 = ConcatLowerLower(d, r5, r1); | 110 | 532k | i2 = ConcatLowerLower(d, r6, r2); | 111 | 532k | i3 = ConcatLowerLower(d, r7, r3); | 112 | 532k | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 532k | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 532k | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 532k | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 532k | to.StorePart(d, i0, m + 0, n + 0); | 117 | 532k | to.StorePart(d, i1, m + 1, n + 0); | 118 | 532k | to.StorePart(d, i2, m + 2, n + 0); | 119 | 532k | to.StorePart(d, i3, m + 3, n + 0); | 120 | 532k | to.StorePart(d, i4, m + 4, n + 0); | 121 | 532k | to.StorePart(d, i5, m + 5, n + 0); | 122 | 532k | to.StorePart(d, i6, m + 6, n + 0); | 123 | 532k | to.StorePart(d, i7, m + 7, n + 0); | 124 | 532k | } | 125 | 266k | } | 126 | 266k | } |
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 | 415k | size_t ROWSp, size_t COLSp) { | 72 | 415k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 415k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 415k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 415k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 415k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 2.33M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 11.1M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 9.21M | const BlockDesc<8> d; | 80 | 9.21M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 9.21M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 9.21M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 9.21M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 9.21M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 9.21M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 9.21M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 9.21M | 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 | 9.21M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 9.21M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 9.21M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 9.21M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 9.21M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 9.21M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 9.21M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 9.21M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 9.21M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 9.21M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 9.21M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 9.21M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 9.21M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 9.21M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 9.21M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 9.21M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 9.21M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 9.21M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 9.21M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 9.21M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 9.21M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 9.21M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 9.21M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 9.21M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 9.21M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 9.21M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 9.21M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 9.21M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 9.21M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 9.21M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 9.21M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 9.21M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 9.21M | } | 125 | 1.92M | } | 126 | 415k | } |
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 | 2.02M | size_t ROWSp, size_t COLSp) { | 72 | 2.02M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 2.02M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 2.02M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 2.02M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 2.02M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 4.04M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 4.04M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 2.02M | const BlockDesc<8> d; | 80 | 2.02M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 2.02M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 2.02M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 2.02M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 2.02M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 2.02M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 2.02M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 2.02M | 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.02M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 2.02M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 2.02M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 2.02M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 2.02M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 2.02M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 2.02M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 2.02M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 2.02M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 2.02M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 2.02M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 2.02M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 2.02M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 2.02M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 2.02M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 2.02M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 2.02M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 2.02M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 2.02M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 2.02M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 2.02M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 2.02M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 2.02M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 2.02M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 2.02M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 2.02M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 2.02M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 2.02M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 2.02M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 2.02M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 2.02M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 2.02M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 2.02M | } | 125 | 2.02M | } | 126 | 2.02M | } |
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 | 187k | size_t ROWSp, size_t COLSp) { | 72 | 187k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 187k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 187k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 187k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 187k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 562k | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 1.12M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 749k | const BlockDesc<8> d; | 80 | 749k | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 749k | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 749k | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 749k | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 749k | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 749k | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 749k | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 749k | 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 | 749k | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 749k | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 749k | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 749k | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 749k | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 749k | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 749k | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 749k | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 749k | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 749k | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 749k | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 749k | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 749k | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 749k | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 749k | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 749k | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 749k | i0 = ConcatLowerLower(d, r4, r0); | 109 | 749k | i1 = ConcatLowerLower(d, r5, r1); | 110 | 749k | i2 = ConcatLowerLower(d, r6, r2); | 111 | 749k | i3 = ConcatLowerLower(d, r7, r3); | 112 | 749k | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 749k | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 749k | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 749k | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 749k | to.StorePart(d, i0, m + 0, n + 0); | 117 | 749k | to.StorePart(d, i1, m + 1, n + 0); | 118 | 749k | to.StorePart(d, i2, m + 2, n + 0); | 119 | 749k | to.StorePart(d, i3, m + 3, n + 0); | 120 | 749k | to.StorePart(d, i4, m + 4, n + 0); | 121 | 749k | to.StorePart(d, i5, m + 5, n + 0); | 122 | 749k | to.StorePart(d, i6, m + 6, n + 0); | 123 | 749k | to.StorePart(d, i7, m + 7, n + 0); | 124 | 749k | } | 125 | 374k | } | 126 | 187k | } |
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 | 518k | size_t ROWSp, size_t COLSp) { | 72 | 518k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 518k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 518k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 518k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 518k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 1.55M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 2.07M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 1.03M | const BlockDesc<8> d; | 80 | 1.03M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 1.03M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 1.03M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 1.03M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 1.03M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 1.03M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 1.03M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 1.03M | 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.03M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 1.03M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 1.03M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 1.03M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 1.03M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 1.03M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 1.03M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 1.03M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 1.03M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 1.03M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 1.03M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 1.03M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 1.03M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 1.03M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 1.03M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 1.03M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 1.03M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 1.03M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 1.03M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 1.03M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 1.03M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 1.03M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 1.03M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 1.03M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 1.03M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 1.03M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 1.03M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 1.03M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 1.03M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 1.03M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 1.03M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 1.03M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 1.03M | } | 125 | 1.03M | } | 126 | 518k | } |
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 | 266k | size_t ROWSp, size_t COLSp) { | 72 | 266k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 266k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 266k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 266k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 266k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 532k | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 798k | for (size_t m = 0; m < COLS; m += 8) { | 79 | 532k | const BlockDesc<8> d; | 80 | 532k | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 532k | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 532k | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 532k | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 532k | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 532k | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 532k | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 532k | 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 | 532k | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 532k | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 532k | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 532k | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 532k | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 532k | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 532k | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 532k | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 532k | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 532k | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 532k | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 532k | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 532k | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 532k | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 532k | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 532k | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 532k | i0 = ConcatLowerLower(d, r4, r0); | 109 | 532k | i1 = ConcatLowerLower(d, r5, r1); | 110 | 532k | i2 = ConcatLowerLower(d, r6, r2); | 111 | 532k | i3 = ConcatLowerLower(d, r7, r3); | 112 | 532k | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 532k | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 532k | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 532k | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 532k | to.StorePart(d, i0, m + 0, n + 0); | 117 | 532k | to.StorePart(d, i1, m + 1, n + 0); | 118 | 532k | to.StorePart(d, i2, m + 2, n + 0); | 119 | 532k | to.StorePart(d, i3, m + 3, n + 0); | 120 | 532k | to.StorePart(d, i4, m + 4, n + 0); | 121 | 532k | to.StorePart(d, i5, m + 5, n + 0); | 122 | 532k | to.StorePart(d, i6, m + 6, n + 0); | 123 | 532k | to.StorePart(d, i7, m + 7, n + 0); | 124 | 532k | } | 125 | 266k | } | 126 | 266k | } |
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 | 415k | size_t ROWSp, size_t COLSp) { | 72 | 415k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 415k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 415k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 415k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 415k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 2.33M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 11.1M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 9.21M | const BlockDesc<8> d; | 80 | 9.21M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 9.21M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 9.21M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 9.21M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 9.21M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 9.21M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 9.21M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 9.21M | 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 | 9.21M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 9.21M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 9.21M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 9.21M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 9.21M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 9.21M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 9.21M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 9.21M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 9.21M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 9.21M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 9.21M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 9.21M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 9.21M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 9.21M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 9.21M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 9.21M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 9.21M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 9.21M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 9.21M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 9.21M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 9.21M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 9.21M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 9.21M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 9.21M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 9.21M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 9.21M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 9.21M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 9.21M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 9.21M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 9.21M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 9.21M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 9.21M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 9.21M | } | 125 | 1.92M | } | 126 | 415k | } |
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 | 17.8M | size_t ROWSp, size_t COLSp) { | 72 | 17.8M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 17.8M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 17.8M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 17.8M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 17.8M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 35.6M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 35.6M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 17.8M | const BlockDesc<8> d; | 80 | 17.8M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 17.8M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 17.8M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 17.8M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 17.8M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 17.8M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 17.8M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 17.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 | 17.8M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 17.8M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 17.8M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 17.8M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 17.8M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 17.8M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 17.8M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 17.8M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 17.8M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 17.8M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 17.8M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 17.8M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 17.8M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 17.8M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 17.8M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 17.8M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 17.8M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 17.8M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 17.8M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 17.8M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 17.8M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 17.8M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 17.8M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 17.8M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 17.8M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 17.8M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 17.8M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 17.8M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 17.8M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 17.8M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 17.8M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 17.8M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 17.8M | } | 125 | 17.8M | } | 126 | 17.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 | 12.3M | size_t ROWSp, size_t COLSp) { | 72 | 12.3M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 12.3M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 12.3M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 12.3M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 12.3M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 37.1M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 74.3M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 49.5M | const BlockDesc<8> d; | 80 | 49.5M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 49.5M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 49.5M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 49.5M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 49.5M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 49.5M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 49.5M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 49.5M | auto i7 = from.LoadPart(d, n + 7, m + 0); | 88 | | // Surprisingly, this straightforward implementation (24 cycles on port5) | 89 | | // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend. | 90 | 49.5M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 49.5M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 49.5M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 49.5M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 49.5M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 49.5M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 49.5M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 49.5M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 49.5M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 49.5M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 49.5M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 49.5M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 49.5M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 49.5M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 49.5M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 49.5M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 49.5M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 49.5M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 49.5M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 49.5M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 49.5M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 49.5M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 49.5M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 49.5M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 49.5M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 49.5M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 49.5M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 49.5M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 49.5M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 49.5M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 49.5M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 49.5M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 49.5M | } | 125 | 24.7M | } | 126 | 12.3M | } |
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::GenericTransposeBlock<16ul, 8ul, jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::TransposeSimdTag<true>, jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&, unsigned long, unsigned long) Line | Count | Source | 71 | 36.7M | size_t ROWSp, size_t COLSp) { | 72 | 36.7M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 36.7M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 36.7M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 36.7M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 36.7M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 110M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 146M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 73.4M | const BlockDesc<8> d; | 80 | 73.4M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 73.4M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 73.4M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 73.4M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 73.4M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 73.4M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 73.4M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 73.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 | 73.4M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 73.4M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 73.4M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 73.4M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 73.4M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 73.4M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 73.4M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 73.4M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 73.4M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 73.4M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 73.4M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 73.4M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 73.4M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 73.4M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 73.4M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 73.4M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 73.4M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 73.4M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 73.4M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 73.4M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 73.4M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 73.4M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 73.4M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 73.4M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 73.4M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 73.4M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 73.4M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 73.4M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 73.4M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 73.4M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 73.4M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 73.4M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 73.4M | } | 125 | 73.4M | } | 126 | 36.7M | } |
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 | 36.7M | size_t ROWSp, size_t COLSp) { | 72 | 36.7M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 36.7M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 36.7M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 36.7M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 36.7M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 73.4M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 110M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 73.4M | const BlockDesc<8> d; | 80 | 73.4M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 73.4M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 73.4M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 73.4M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 73.4M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 73.4M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 73.4M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 73.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 | 73.4M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 73.4M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 73.4M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 73.4M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 73.4M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 73.4M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 73.4M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 73.4M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 73.4M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 73.4M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 73.4M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 73.4M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 73.4M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 73.4M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 73.4M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 73.4M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 73.4M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 73.4M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 73.4M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 73.4M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 73.4M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 73.4M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 73.4M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 73.4M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 73.4M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 73.4M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 73.4M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 73.4M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 73.4M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 73.4M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 73.4M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 73.4M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 73.4M | } | 125 | 36.7M | } | 126 | 36.7M | } |
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 | 20.7M | size_t ROWSp, size_t COLSp) { | 72 | 20.7M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 20.7M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 20.7M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 20.7M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 20.7M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 97.7M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 366M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 289M | const BlockDesc<8> d; | 80 | 289M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 289M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 289M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 289M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 289M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 289M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 289M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 289M | 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 | 289M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 289M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 289M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 289M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 289M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 289M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 289M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 289M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 289M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 289M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 289M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 289M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 289M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 289M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 289M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 289M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 289M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 289M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 289M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 289M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 289M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 289M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 289M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 289M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 289M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 289M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 289M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 289M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 289M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 289M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 289M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 289M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 289M | } | 125 | 76.9M | } | 126 | 20.7M | } |
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 | 31.5M | size_t ROWSp, size_t COLSp) { | 72 | 31.5M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 31.5M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 31.5M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 31.5M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 31.5M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 63.1M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 63.1M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 31.5M | const BlockDesc<8> d; | 80 | 31.5M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 31.5M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 31.5M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 31.5M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 31.5M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 31.5M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 31.5M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 31.5M | auto i7 = from.LoadPart(d, n + 7, m + 0); | 88 | | // Surprisingly, this straightforward implementation (24 cycles on port5) | 89 | | // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend. | 90 | 31.5M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 31.5M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 31.5M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 31.5M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 31.5M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 31.5M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 31.5M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 31.5M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 31.5M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 31.5M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 31.5M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 31.5M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 31.5M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 31.5M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 31.5M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 31.5M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 31.5M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 31.5M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 31.5M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 31.5M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 31.5M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 31.5M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 31.5M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 31.5M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 31.5M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 31.5M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 31.5M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 31.5M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 31.5M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 31.5M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 31.5M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 31.5M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 31.5M | } | 125 | 31.5M | } | 126 | 31.5M | } |
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 | 562k | size_t ROWSp, size_t COLSp) { | 72 | 562k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 562k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 562k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 562k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 562k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 1.68M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 3.37M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 2.25M | const BlockDesc<8> d; | 80 | 2.25M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 2.25M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 2.25M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 2.25M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 2.25M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 2.25M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 2.25M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 2.25M | 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.25M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 2.25M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 2.25M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 2.25M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 2.25M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 2.25M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 2.25M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 2.25M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 2.25M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 2.25M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 2.25M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 2.25M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 2.25M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 2.25M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 2.25M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 2.25M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 2.25M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 2.25M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 2.25M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 2.25M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 2.25M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 2.25M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 2.25M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 2.25M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 2.25M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 2.25M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 2.25M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 2.25M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 2.25M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 2.25M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 2.25M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 2.25M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 2.25M | } | 125 | 1.12M | } | 126 | 562k | } |
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.55M | size_t ROWSp, size_t COLSp) { | 72 | 1.55M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 1.55M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 1.55M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 1.55M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 1.55M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 3.10M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 4.65M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 3.10M | const BlockDesc<8> d; | 80 | 3.10M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 3.10M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 3.10M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 3.10M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 3.10M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 3.10M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 3.10M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 3.10M | auto i7 = from.LoadPart(d, n + 7, m + 0); | 88 | | // Surprisingly, this straightforward implementation (24 cycles on port5) | 89 | | // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend. | 90 | 3.10M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 3.10M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 3.10M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 3.10M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 3.10M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 3.10M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 3.10M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 3.10M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 3.10M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 3.10M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 3.10M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 3.10M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 3.10M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 3.10M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 3.10M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 3.10M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 3.10M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 3.10M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 3.10M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 3.10M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 3.10M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 3.10M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 3.10M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 3.10M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 3.10M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 3.10M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 3.10M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 3.10M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 3.10M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 3.10M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 3.10M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 3.10M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 3.10M | } | 125 | 1.55M | } | 126 | 1.55M | } |
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 | 801k | size_t ROWSp, size_t COLSp) { | 72 | 801k | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 801k | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 801k | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 801k | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 801k | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 2.40M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 3.20M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 1.60M | const BlockDesc<8> d; | 80 | 1.60M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 1.60M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 1.60M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 1.60M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 1.60M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 1.60M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 1.60M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 1.60M | 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.60M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 1.60M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 1.60M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 1.60M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 1.60M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 1.60M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 1.60M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 1.60M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 1.60M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 1.60M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 1.60M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 1.60M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 1.60M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 1.60M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 1.60M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 1.60M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 1.60M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 1.60M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 1.60M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 1.60M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 1.60M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 1.60M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 1.60M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 1.60M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 1.60M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 1.60M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 1.60M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 1.60M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 1.60M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 1.60M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 1.60M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 1.60M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 1.60M | } | 125 | 1.60M | } | 126 | 801k | } |
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 | 429 | size_t ROWSp, size_t COLSp) { | 72 | 429 | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 429 | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 429 | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 429 | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 429 | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 858 | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 2.14k | for (size_t m = 0; m < COLS; m += 8) { | 79 | 1.71k | const BlockDesc<8> d; | 80 | 1.71k | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 1.71k | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 1.71k | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 1.71k | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 1.71k | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 1.71k | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 1.71k | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 1.71k | 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.71k | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 1.71k | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 1.71k | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 1.71k | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 1.71k | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 1.71k | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 1.71k | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 1.71k | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 1.71k | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 1.71k | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 1.71k | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 1.71k | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 1.71k | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 1.71k | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 1.71k | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 1.71k | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 1.71k | i0 = ConcatLowerLower(d, r4, r0); | 109 | 1.71k | i1 = ConcatLowerLower(d, r5, r1); | 110 | 1.71k | i2 = ConcatLowerLower(d, r6, r2); | 111 | 1.71k | i3 = ConcatLowerLower(d, r7, r3); | 112 | 1.71k | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 1.71k | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 1.71k | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 1.71k | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 1.71k | to.StorePart(d, i0, m + 0, n + 0); | 117 | 1.71k | to.StorePart(d, i1, m + 1, n + 0); | 118 | 1.71k | to.StorePart(d, i2, m + 2, n + 0); | 119 | 1.71k | to.StorePart(d, i3, m + 3, n + 0); | 120 | 1.71k | to.StorePart(d, i4, m + 4, n + 0); | 121 | 1.71k | to.StorePart(d, i5, m + 5, n + 0); | 122 | 1.71k | to.StorePart(d, i6, m + 6, n + 0); | 123 | 1.71k | to.StorePart(d, i7, m + 7, n + 0); | 124 | 1.71k | } | 125 | 429 | } | 126 | 429 | } |
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 | 150 | size_t ROWSp, size_t COLSp) { | 72 | 150 | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 150 | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 150 | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 150 | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 150 | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 750 | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 1.20k | for (size_t m = 0; m < COLS; m += 8) { | 79 | 600 | const BlockDesc<8> d; | 80 | 600 | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 600 | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 600 | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 600 | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 600 | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 600 | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 600 | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 600 | 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 | 600 | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 600 | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 600 | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 600 | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 600 | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 600 | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 600 | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 600 | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 600 | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 600 | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 600 | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 600 | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 600 | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 600 | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 600 | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 600 | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 600 | i0 = ConcatLowerLower(d, r4, r0); | 109 | 600 | i1 = ConcatLowerLower(d, r5, r1); | 110 | 600 | i2 = ConcatLowerLower(d, r6, r2); | 111 | 600 | i3 = ConcatLowerLower(d, r7, r3); | 112 | 600 | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 600 | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 600 | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 600 | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 600 | to.StorePart(d, i0, m + 0, n + 0); | 117 | 600 | to.StorePart(d, i1, m + 1, n + 0); | 118 | 600 | to.StorePart(d, i2, m + 2, n + 0); | 119 | 600 | to.StorePart(d, i3, m + 3, n + 0); | 120 | 600 | to.StorePart(d, i4, m + 4, n + 0); | 121 | 600 | to.StorePart(d, i5, m + 5, n + 0); | 122 | 600 | to.StorePart(d, i6, m + 6, n + 0); | 123 | 600 | to.StorePart(d, i7, m + 7, n + 0); | 124 | 600 | } | 125 | 600 | } | 126 | 150 | } |
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.22M | size_t ROWSp, size_t COLSp) { | 72 | 1.22M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 1.22M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 1.22M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 1.22M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 1.22M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 6.39M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 32.3M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 27.1M | const BlockDesc<8> d; | 80 | 27.1M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 27.1M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 27.1M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 27.1M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 27.1M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 27.1M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 27.1M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 27.1M | auto i7 = from.LoadPart(d, n + 7, m + 0); | 88 | | // Surprisingly, this straightforward implementation (24 cycles on port5) | 89 | | // is faster than load128+insert and LoadDup128+ConcatUpperLower+blend. | 90 | 27.1M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 27.1M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 27.1M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 27.1M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 27.1M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 27.1M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 27.1M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 27.1M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 27.1M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 27.1M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 27.1M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 27.1M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 27.1M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 27.1M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 27.1M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 27.1M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 27.1M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 27.1M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 27.1M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 27.1M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 27.1M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 27.1M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 27.1M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 27.1M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 27.1M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 27.1M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 27.1M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 27.1M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 27.1M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 27.1M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 27.1M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 27.1M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 27.1M | } | 125 | 5.16M | } | 126 | 1.22M | } |
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 | 6.55M | size_t ROWSp, size_t COLSp) { | 72 | 6.55M | size_t ROWS = ROWS_or_0 == 0 ? ROWSp : ROWS_or_0; | 73 | 6.55M | size_t COLS = COLS_or_0 == 0 ? COLSp : COLS_or_0; | 74 | 6.55M | JXL_DASSERT(Lanes(BlockDesc<8>()) == 8); | 75 | 6.55M | static_assert(ROWS_or_0 % 8 == 0, "Invalid number of rows"); | 76 | 6.55M | static_assert(COLS_or_0 % 8 == 0, "Invalid number of columns"); | 77 | 13.1M | for (size_t n = 0; n < ROWS; n += 8) { | 78 | 13.1M | for (size_t m = 0; m < COLS; m += 8) { | 79 | 6.55M | const BlockDesc<8> d; | 80 | 6.55M | auto i0 = from.LoadPart(d, n + 0, m + 0); | 81 | 6.55M | auto i1 = from.LoadPart(d, n + 1, m + 0); | 82 | 6.55M | auto i2 = from.LoadPart(d, n + 2, m + 0); | 83 | 6.55M | auto i3 = from.LoadPart(d, n + 3, m + 0); | 84 | 6.55M | auto i4 = from.LoadPart(d, n + 4, m + 0); | 85 | 6.55M | auto i5 = from.LoadPart(d, n + 5, m + 0); | 86 | 6.55M | auto i6 = from.LoadPart(d, n + 6, m + 0); | 87 | 6.55M | 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 | 6.55M | const auto q0 = InterleaveLower(d, i0, i2); | 91 | 6.55M | const auto q1 = InterleaveLower(d, i1, i3); | 92 | 6.55M | const auto q2 = InterleaveUpper(d, i0, i2); | 93 | 6.55M | const auto q3 = InterleaveUpper(d, i1, i3); | 94 | 6.55M | const auto q4 = InterleaveLower(d, i4, i6); | 95 | 6.55M | const auto q5 = InterleaveLower(d, i5, i7); | 96 | 6.55M | const auto q6 = InterleaveUpper(d, i4, i6); | 97 | 6.55M | const auto q7 = InterleaveUpper(d, i5, i7); | 98 | | | 99 | 6.55M | const auto r0 = InterleaveLower(d, q0, q1); | 100 | 6.55M | const auto r1 = InterleaveUpper(d, q0, q1); | 101 | 6.55M | const auto r2 = InterleaveLower(d, q2, q3); | 102 | 6.55M | const auto r3 = InterleaveUpper(d, q2, q3); | 103 | 6.55M | const auto r4 = InterleaveLower(d, q4, q5); | 104 | 6.55M | const auto r5 = InterleaveUpper(d, q4, q5); | 105 | 6.55M | const auto r6 = InterleaveLower(d, q6, q7); | 106 | 6.55M | const auto r7 = InterleaveUpper(d, q6, q7); | 107 | | | 108 | 6.55M | i0 = ConcatLowerLower(d, r4, r0); | 109 | 6.55M | i1 = ConcatLowerLower(d, r5, r1); | 110 | 6.55M | i2 = ConcatLowerLower(d, r6, r2); | 111 | 6.55M | i3 = ConcatLowerLower(d, r7, r3); | 112 | 6.55M | i4 = ConcatUpperUpper(d, r4, r0); | 113 | 6.55M | i5 = ConcatUpperUpper(d, r5, r1); | 114 | 6.55M | i6 = ConcatUpperUpper(d, r6, r2); | 115 | 6.55M | i7 = ConcatUpperUpper(d, r7, r3); | 116 | 6.55M | to.StorePart(d, i0, m + 0, n + 0); | 117 | 6.55M | to.StorePart(d, i1, m + 1, n + 0); | 118 | 6.55M | to.StorePart(d, i2, m + 2, n + 0); | 119 | 6.55M | to.StorePart(d, i3, m + 3, n + 0); | 120 | 6.55M | to.StorePart(d, i4, m + 4, n + 0); | 121 | 6.55M | to.StorePart(d, i5, m + 5, n + 0); | 122 | 6.55M | to.StorePart(d, i6, m + 6, n + 0); | 123 | 6.55M | to.StorePart(d, i7, m + 7, n + 0); | 124 | 6.55M | } | 125 | 6.55M | } | 126 | 6.55M | } |
|
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 | 858M | static void Run(const From& from, const To& to) { |
174 | | // This does not guarantee anything, just saves from the most stupid |
175 | | // mistakes. |
176 | 858M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); |
177 | 858M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; |
178 | 858M | GenericTransposeBlock<N, M>(tag, from, to, N, M); |
179 | 858M | } 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 | 831k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 831k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 831k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 831k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 831k | } |
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 | 511k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 511k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 511k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 511k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 511k | } |
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 | 459k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 459k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 459k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 459k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 459k | } |
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 | 187k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 187k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 187k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 187k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 187k | } |
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 | 518k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 518k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 518k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 518k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 518k | } |
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 | 266k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 266k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 266k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 266k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 266k | } |
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 | 2.02M | 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.02M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 2.02M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 2.02M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 2.02M | } |
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 | 518k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 518k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 518k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 518k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 518k | } |
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 | 266k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 266k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 266k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 266k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 266k | } |
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 | 187k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 187k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 187k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 187k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 187k | } |
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 | 125k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 125k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 125k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 125k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 125k | } |
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 | 62.8k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 62.8k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 62.8k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 62.8k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 62.8k | } |
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 | 831k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 831k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 831k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 831k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 831k | } |
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 | 511k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 511k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 511k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 511k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 511k | } |
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 | 459k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 459k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 459k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 459k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 459k | } |
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 | 187k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 187k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 187k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 187k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 187k | } |
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 | 518k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 518k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 518k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 518k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 518k | } |
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 | 266k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 266k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 266k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 266k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 266k | } |
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 | 17.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 | 17.8M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 17.8M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 17.8M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 17.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 | 518k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 518k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 518k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 518k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 518k | } |
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 | 266k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 266k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 266k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 266k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 266k | } |
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 | 187k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 187k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 187k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 187k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 187k | } |
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 | 125k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 125k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 125k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 125k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 125k | } |
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 | 62.8k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 62.8k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 62.8k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 62.8k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 62.8k | } |
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 | 221M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 221M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 221M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 221M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 221M | } |
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 | 221M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 221M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 221M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 221M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 221M | } |
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 | 252M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 252M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 252M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 252M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 252M | } |
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 | 12.3M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 12.3M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 12.3M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 12.3M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 12.3M | } |
enc_ac_strategy.cc:void jxl::N_AVX2::(anonymous namespace)::Transpose<16ul, 8ul, void>::Run<jxl::N_AVX2::(anonymous namespace)::DCTFrom, jxl::N_AVX2::(anonymous namespace)::DCTTo>(jxl::N_AVX2::(anonymous namespace)::DCTFrom const&, jxl::N_AVX2::(anonymous namespace)::DCTTo const&) Line | Count | Source | 173 | 36.7M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 36.7M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 36.7M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 36.7M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 36.7M | } |
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 | 36.7M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 36.7M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 36.7M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 36.7M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 36.7M | } |
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 | 31.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 | 31.5M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 31.5M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 31.5M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 31.5M | } |
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.48M | 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.48M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 2.48M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 2.48M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 2.48M | } |
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.51M | 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.51M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 1.51M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 1.51M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 1.51M | } |
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.37M | 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.37M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 1.37M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 1.37M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 1.37M | } |
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 | 562k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 562k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 562k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 562k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 562k | } |
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.55M | 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.55M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 1.55M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 1.55M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 1.55M | } |
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 | 801k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 801k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 801k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 801k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 801k | } |
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 | 429 | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 429 | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 429 | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 429 | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 429 | } |
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 | 150 | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 150 | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 150 | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 150 | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 150 | } |
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 | 6.55M | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 6.55M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 6.55M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 6.55M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 6.55M | } |
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.55M | 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.55M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 1.55M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 1.55M | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 1.55M | } |
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 | 801k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 801k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 801k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 801k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 801k | } |
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 | 562k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 562k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 562k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 562k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 562k | } |
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 | 429 | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 429 | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 429 | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 429 | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 429 | } |
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 | 150 | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 150 | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 150 | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 150 | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 150 | } |
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 | 372k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 372k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 372k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 372k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 372k | } |
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 | 187k | static void Run(const From& from, const To& to) { | 174 | | // This does not guarantee anything, just saves from the most stupid | 175 | | // mistakes. | 176 | 187k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 177 | 187k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 178 | 187k | GenericTransposeBlock<N, M>(tag, from, to, N, M); | 179 | 187k | } |
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 | 22.8M | static void Run(const From& from, const To& to) { |
188 | | // This does not guarantee anything, just saves from the most stupid |
189 | | // mistakes. |
190 | 22.8M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); |
191 | 22.8M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; |
192 | 22.8M | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, |
193 | 22.8M | const From&, const To&, size_t, size_t) = |
194 | 22.8M | GenericTransposeBlock<0, 0, From, To>; |
195 | 22.8M | NoInlineWrapper(transpose, tag, from, to, N, M); |
196 | 22.8M | } 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 | 125k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 125k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 125k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 125k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 125k | const From&, const To&, size_t, size_t) = | 194 | 125k | GenericTransposeBlock<0, 0, From, To>; | 195 | 125k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 125k | } |
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 | 62.8k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 62.8k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 62.8k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 62.8k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 62.8k | const From&, const To&, size_t, size_t) = | 194 | 62.8k | GenericTransposeBlock<0, 0, From, To>; | 195 | 62.8k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 62.8k | } |
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 | 123k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 123k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 123k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 123k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 123k | const From&, const To&, size_t, size_t) = | 194 | 123k | GenericTransposeBlock<0, 0, From, To>; | 195 | 123k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 123k | } |
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 | 74.9k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 74.9k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 74.9k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 74.9k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 74.9k | const From&, const To&, size_t, size_t) = | 194 | 74.9k | GenericTransposeBlock<0, 0, From, To>; | 195 | 74.9k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 74.9k | } |
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 | 21.1k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 21.1k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 21.1k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 21.1k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 21.1k | const From&, const To&, size_t, size_t) = | 194 | 21.1k | GenericTransposeBlock<0, 0, From, To>; | 195 | 21.1k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 21.1k | } |
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 | 8.13k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 8.13k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 8.13k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 8.13k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 8.13k | const From&, const To&, size_t, size_t) = | 194 | 8.13k | GenericTransposeBlock<0, 0, From, To>; | 195 | 8.13k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 8.13k | } |
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 | 125k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 125k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 125k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 125k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 125k | const From&, const To&, size_t, size_t) = | 194 | 125k | GenericTransposeBlock<0, 0, From, To>; | 195 | 125k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 125k | } |
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 | 62.8k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 62.8k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 62.8k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 62.8k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 62.8k | const From&, const To&, size_t, size_t) = | 194 | 62.8k | GenericTransposeBlock<0, 0, From, To>; | 195 | 62.8k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 62.8k | } |
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 | 123k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 123k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 123k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 123k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 123k | const From&, const To&, size_t, size_t) = | 194 | 123k | GenericTransposeBlock<0, 0, From, To>; | 195 | 123k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 123k | } |
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 | 74.9k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 74.9k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 74.9k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 74.9k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 74.9k | const From&, const To&, size_t, size_t) = | 194 | 74.9k | GenericTransposeBlock<0, 0, From, To>; | 195 | 74.9k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 74.9k | } |
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 | 21.1k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 21.1k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 21.1k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 21.1k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 21.1k | const From&, const To&, size_t, size_t) = | 194 | 21.1k | GenericTransposeBlock<0, 0, From, To>; | 195 | 21.1k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 21.1k | } |
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 | 8.13k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 8.13k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 8.13k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 8.13k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 8.13k | const From&, const To&, size_t, size_t) = | 194 | 8.13k | GenericTransposeBlock<0, 0, From, To>; | 195 | 8.13k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 8.13k | } |
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 | 7.30M | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 7.30M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 7.30M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 7.30M | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 7.30M | const From&, const To&, size_t, size_t) = | 194 | 7.30M | GenericTransposeBlock<0, 0, From, To>; | 195 | 7.30M | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 7.30M | } |
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 | 7.30M | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 7.30M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 7.30M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 7.30M | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 7.30M | const From&, const To&, size_t, size_t) = | 194 | 7.30M | GenericTransposeBlock<0, 0, From, To>; | 195 | 7.30M | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 7.30M | } |
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.47M | 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.47M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 2.47M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 2.47M | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 2.47M | const From&, const To&, size_t, size_t) = | 194 | 2.47M | GenericTransposeBlock<0, 0, From, To>; | 195 | 2.47M | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 2.47M | } |
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 | 441k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 441k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 441k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 441k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 441k | const From&, const To&, size_t, size_t) = | 194 | 441k | GenericTransposeBlock<0, 0, From, To>; | 195 | 441k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 441k | } |
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.63M | 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.63M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 1.63M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 1.63M | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 1.63M | const From&, const To&, size_t, size_t) = | 194 | 1.63M | GenericTransposeBlock<0, 0, From, To>; | 195 | 1.63M | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 1.63M | } |
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.63M | 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.63M | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 1.63M | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 1.63M | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 1.63M | const From&, const To&, size_t, size_t) = | 194 | 1.63M | GenericTransposeBlock<0, 0, From, To>; | 195 | 1.63M | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 1.63M | } |
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 | 372k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 372k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 372k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 372k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 372k | const From&, const To&, size_t, size_t) = | 194 | 372k | GenericTransposeBlock<0, 0, From, To>; | 195 | 372k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 372k | } |
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 | 187k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 187k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 187k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 187k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 187k | const From&, const To&, size_t, size_t) = | 194 | 187k | GenericTransposeBlock<0, 0, From, To>; | 195 | 187k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 187k | } |
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 | 370k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 370k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 370k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 370k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 370k | const From&, const To&, size_t, size_t) = | 194 | 370k | GenericTransposeBlock<0, 0, From, To>; | 195 | 370k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 370k | } |
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 | 49.1k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 49.1k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 49.1k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 49.1k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 49.1k | const From&, const To&, size_t, size_t) = | 194 | 49.1k | GenericTransposeBlock<0, 0, From, To>; | 195 | 49.1k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 49.1k | } |
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 | 23.8k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 23.8k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 23.8k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 23.8k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 23.8k | const From&, const To&, size_t, size_t) = | 194 | 23.8k | GenericTransposeBlock<0, 0, From, To>; | 195 | 23.8k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 23.8k | } |
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 | 224k | static void Run(const From& from, const To& to) { | 188 | | // This does not guarantee anything, just saves from the most stupid | 189 | | // mistakes. | 190 | 224k | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 224k | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 224k | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 224k | const From&, const To&, size_t, size_t) = | 194 | 224k | GenericTransposeBlock<0, 0, From, To>; | 195 | 224k | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 224k | } |
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 | 18 | 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 | JXL_DASSERT(from.Address(0, 0) != to.Address(0, 0)); | 191 | 18 | TransposeSimdTag<TransposeUseSimd(N, M)> tag; | 192 | 18 | constexpr void (*transpose)(TransposeSimdTag<TransposeUseSimd(N, M)>, | 193 | 18 | const From&, const To&, size_t, size_t) = | 194 | 18 | GenericTransposeBlock<0, 0, From, To>; | 195 | 18 | NoInlineWrapper(transpose, tag, from, to, N, M); | 196 | 18 | } |
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_ |