Coverage Report

Created: 2026-07-16 06:35

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/llama.cpp/src/llama-impl.h
Line
Count
Source
1
#pragma once
2
3
#include "ggml.h" // for ggml_log_level
4
5
#include <string>
6
#include <type_traits>
7
#include <vector>
8
9
#ifdef __GNUC__
10
#    if defined(__MINGW32__) && !defined(__clang__)
11
#        define LLAMA_ATTRIBUTE_FORMAT(...) __attribute__((format(gnu_printf, __VA_ARGS__)))
12
#    else
13
#        define LLAMA_ATTRIBUTE_FORMAT(...) __attribute__((format(printf, __VA_ARGS__)))
14
#    endif
15
#else
16
#    define LLAMA_ATTRIBUTE_FORMAT(...)
17
#endif
18
19
//
20
// logging
21
//
22
23
LLAMA_ATTRIBUTE_FORMAT(2, 3)
24
void llama_log_internal        (ggml_log_level level, const char * format, ...);
25
void llama_log_callback_default(ggml_log_level level, const char * text, void * user_data);
26
27
#define LLAMA_LOG(...)       llama_log_internal(GGML_LOG_LEVEL_NONE , __VA_ARGS__)
28
9.62k
#define LLAMA_LOG_INFO(...)  llama_log_internal(GGML_LOG_LEVEL_INFO , __VA_ARGS__)
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_0::operator()(unsigned int) const
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_1::operator()(unsigned int) const
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_2::operator()(unsigned int) const
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_3::operator()(unsigned int) const
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_4::operator()(unsigned int) const
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_5::operator()(unsigned int) const
Unexecuted instantiation: llama-model.cpp:llama_model::print_info() const::$_6::operator()(unsigned int) const
29
3
#define LLAMA_LOG_WARN(...)  llama_log_internal(GGML_LOG_LEVEL_WARN , __VA_ARGS__)
30
8.68k
#define LLAMA_LOG_ERROR(...) llama_log_internal(GGML_LOG_LEVEL_ERROR, __VA_ARGS__)
31
0
#define LLAMA_LOG_DEBUG(...) llama_log_internal(GGML_LOG_LEVEL_DEBUG, __VA_ARGS__)
32
0
#define LLAMA_LOG_CONT(...)  llama_log_internal(GGML_LOG_LEVEL_CONT , __VA_ARGS__)
33
34
//
35
// helpers
36
//
37
38
template <typename T>
39
struct no_init {
40
    T value;
41
    no_init() = default;
42
};
43
44
template <typename dst_t, typename src_t>
45
0
static inline dst_t llama_cast(src_t v) {
46
0
    if constexpr (std::is_same_v<src_t, dst_t>) {
47
0
        return v;
48
0
    } else if constexpr (std::is_same_v<src_t, ggml_fp16_t> && std::is_same_v<dst_t, float>) {
49
0
        return ggml_fp16_to_fp32(v);
50
0
    } else if constexpr (std::is_same_v<src_t, float> && std::is_same_v<dst_t, ggml_fp16_t>) {
51
0
        return ggml_fp32_to_fp16(v);
52
    } else {
53
        static_assert(std::is_same_v<dst_t, void>, "unsupported type combination");
54
    }
55
0
}
Unexecuted instantiation: llama-graph.cpp:unsigned short llama_cast<unsigned short, float>(float)
Unexecuted instantiation: llama-graph.cpp:float llama_cast<float, unsigned short>(unsigned short)
Unexecuted instantiation: llama-graph.cpp:float llama_cast<float, float>(float)
Unexecuted instantiation: llama-kv-cache.cpp:unsigned short llama_cast<unsigned short, float>(float)
Unexecuted instantiation: llama-kv-cache.cpp:float llama_cast<float, float>(float)
56
57
static inline ggml_tensor * llama_mul_mat_hadamard(
58
        ggml_context * ctx,
59
        ggml_tensor * cur,
60
0
        ggml_tensor * rot) {
61
0
    const auto n = rot->ne[0];
62
63
0
    ggml_tensor * res;
64
65
0
    if (!ggml_is_contiguous(cur)) {
66
0
        res = ggml_cont_2d(ctx, cur, n, ggml_nelements(cur)/n);
67
0
    } else {
68
0
        res = ggml_reshape_2d(ctx, cur, n, ggml_nelements(cur)/n);
69
0
    }
70
0
    res = ggml_mul_mat(ctx, rot, res);
71
0
    ggml_mul_mat_set_hint(res, GGML_HINT_SRC0_IS_HADAMARD);
72
0
    res = ggml_reshape_4d(ctx, res, cur->ne[0], cur->ne[1], cur->ne[2], cur->ne[3]);
73
74
0
    return res;
75
0
}
Unexecuted instantiation: llama.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-adapter.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-arch.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-batch.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-context.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-graph.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-impl.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-kv-cache.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-kv-cache-iswa.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-kv-cache-dsa.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-kv-cache-dsv4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-memory-hybrid.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-memory-hybrid-iswa.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-memory-recurrent.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-mmap.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-model-loader.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-model.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-sampler.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-vocab.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: afmoe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: apertus.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: arcee.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: arctic.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: arwkv7.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: baichuan.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: bailingmoe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: bailingmoe2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: bert.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: bitnet.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: bloom.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: chameleon.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: chatglm.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: codeshell.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: cogvlm.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: cohere2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: cohere2moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: command-r.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: dbrx.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: deci.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: deepseek.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: deepseek2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: deepseek2ocr.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: deepseek32.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: deepseek4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: dflash.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: dots1.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: dream.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: eagle3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: ernie4-5-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: ernie4-5.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: eurobert.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: exaone-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: exaone.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: exaone4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: falcon-h1.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: falcon.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma-embedding.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma3n.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma4-assistant.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gemma4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: glm-dsa.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: glm4-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: glm4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gpt2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: gptneox.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: granite-hybrid.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: granite-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: granite.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: grok.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: grovemoe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: hunyuan-dense.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: hunyuan-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: hunyuan-vl.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: hy-v3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: internlm2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: jais.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: jais2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: jamba.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: jina-bert-v2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: jina-bert-v3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: kimi-linear.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: lfm2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: lfm2moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llada-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llada.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-embed.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: maincoder.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mamba-base.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mamba.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mamba2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mellum.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mimo2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: minicpm.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: minicpm3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: minimax-m2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mistral3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mistral4.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: modern-bert.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: mpt.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: nemotron-h-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: nemotron-h.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: nemotron.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: neo-bert.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: nomic-bert-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: nomic-bert.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: olmo.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: olmo2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: olmoe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: openai-moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: openelm.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: orion.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: paddleocr.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: pangu-embed.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: phi2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: phi3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: phimoe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: plamo.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: plamo2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: plamo3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: plm.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen2moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen2vl.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen35.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen35moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen3moe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen3next.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen3vl.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: qwen3vlmoe.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: refact.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: rnd1.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: rwkv6.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: rwkv6qwen2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: rwkv7-base.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: rwkv7.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: seed-oss.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: smallthinker.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: smollm3.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: stablelm.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: starcoder.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: starcoder2.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: step35.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: t5.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: t5encoder.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: talkie.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: wavtokenizer-dec.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: xverse.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: llama-grammar.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: delta-net-base.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
Unexecuted instantiation: rwkv6-base.cpp:llama_mul_mat_hadamard(ggml_context*, ggml_tensor*, ggml_tensor*)
76
77
struct time_meas {
78
    time_meas(int64_t & t_acc, bool disable = false);
79
    ~time_meas();
80
81
    const int64_t t_start_us;
82
83
    int64_t & t_acc;
84
};
85
86
template <typename T>
87
struct buffer_view {
88
    T * data;
89
    size_t size = 0;
90
91
0
    bool has_data() const {
92
0
        return data && size > 0;
93
0
    }
Unexecuted instantiation: buffer_view<float>::has_data() const
Unexecuted instantiation: buffer_view<int>::has_data() const
94
};
95
96
void replace_all(std::string & s, const std::string & search, const std::string & replace);
97
98
// TODO: rename to llama_format ?
99
LLAMA_ATTRIBUTE_FORMAT(1, 2)
100
std::string format(const char * fmt, ...);
101
102
std::string llama_format_tensor_shape(const std::vector<int64_t> & ne);
103
std::string llama_format_tensor_shape(const struct ggml_tensor * t);
104
105
std::string gguf_kv_to_str(const struct gguf_context * ctx_gguf, int i);