Coverage Report

Created: 2026-02-26 07:05

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/llama.cpp/ggml/src/ggml-backend-dl.cpp
Line
Count
Source
1
#include "ggml-backend-dl.h"
2
3
#ifdef _WIN32
4
5
dl_handle * dl_load_library(const fs::path & path) {
6
    // suppress error dialogs for missing DLLs
7
    DWORD old_mode = SetErrorMode(SEM_FAILCRITICALERRORS);
8
    SetErrorMode(old_mode | SEM_FAILCRITICALERRORS);
9
10
    HMODULE handle = LoadLibraryW(path.wstring().c_str());
11
12
    SetErrorMode(old_mode);
13
14
    return handle;
15
}
16
17
void * dl_get_sym(dl_handle * handle, const char * name) {
18
    DWORD old_mode = SetErrorMode(SEM_FAILCRITICALERRORS);
19
    SetErrorMode(old_mode | SEM_FAILCRITICALERRORS);
20
21
    void * p = (void *) GetProcAddress(handle, name);
22
23
    SetErrorMode(old_mode);
24
25
    return p;
26
}
27
28
const char * dl_error() {
29
    return "";
30
}
31
32
#else
33
34
0
dl_handle * dl_load_library(const fs::path & path) {
35
0
    dl_handle * handle = dlopen(path.string().c_str(), RTLD_NOW | RTLD_LOCAL);
36
0
    return handle;
37
0
}
38
39
0
void * dl_get_sym(dl_handle * handle, const char * name) {
40
0
    return dlsym(handle, name);
41
0
}
42
43
0
const char * dl_error() {
44
0
    const char *rslt = dlerror();
45
0
    return rslt != nullptr ? rslt : "";
46
0
}
47
48
#endif