Coverage Report

Created: 2026-04-12 07:27

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/vlc/contrib/x86_64-unknown-linux-gnu/include/libavutil/intfloat.h
Line
Count
Source
1
/*
2
 * Copyright (c) 2011 Mans Rullgard
3
 *
4
 * This file is part of FFmpeg.
5
 *
6
 * FFmpeg is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU Lesser General Public
8
 * License as published by the Free Software Foundation; either
9
 * version 2.1 of the License, or (at your option) any later version.
10
 *
11
 * FFmpeg is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
 * Lesser General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU Lesser General Public
17
 * License along with FFmpeg; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
 */
20
21
#ifndef AVUTIL_INTFLOAT_H
22
#define AVUTIL_INTFLOAT_H
23
24
#include <stdint.h>
25
#include "attributes.h"
26
27
union av_intfloat32 {
28
    uint32_t i;
29
    float    f;
30
};
31
32
union av_intfloat64 {
33
    uint64_t i;
34
    double   f;
35
};
36
37
/**
38
 * Reinterpret a 32-bit integer as a float.
39
 */
40
static av_always_inline float av_int2float(uint32_t i)
41
0
{
42
0
    union av_intfloat32 v;
43
0
    v.i = i;
44
0
    return v.f;
45
0
}
Unexecuted instantiation: avcodec.c:av_int2float
Unexecuted instantiation: encoder.c:av_int2float
Unexecuted instantiation: chroma.c:av_int2float
Unexecuted instantiation: fourcc.c:av_int2float
Unexecuted instantiation: video.c:av_int2float
Unexecuted instantiation: subtitle.c:av_int2float
Unexecuted instantiation: audio.c:av_int2float
Unexecuted instantiation: va.c:av_int2float
46
47
/**
48
 * Reinterpret a float as a 32-bit integer.
49
 */
50
static av_always_inline uint32_t av_float2int(float f)
51
0
{
52
0
    union av_intfloat32 v;
53
0
    v.f = f;
54
0
    return v.i;
55
0
}
Unexecuted instantiation: avcodec.c:av_float2int
Unexecuted instantiation: encoder.c:av_float2int
Unexecuted instantiation: chroma.c:av_float2int
Unexecuted instantiation: fourcc.c:av_float2int
Unexecuted instantiation: video.c:av_float2int
Unexecuted instantiation: subtitle.c:av_float2int
Unexecuted instantiation: audio.c:av_float2int
Unexecuted instantiation: va.c:av_float2int
56
57
/**
58
 * Reinterpret a 64-bit integer as a double.
59
 */
60
static av_always_inline double av_int2double(uint64_t i)
61
0
{
62
0
    union av_intfloat64 v;
63
0
    v.i = i;
64
0
    return v.f;
65
0
}
Unexecuted instantiation: avcodec.c:av_int2double
Unexecuted instantiation: encoder.c:av_int2double
Unexecuted instantiation: chroma.c:av_int2double
Unexecuted instantiation: fourcc.c:av_int2double
Unexecuted instantiation: video.c:av_int2double
Unexecuted instantiation: subtitle.c:av_int2double
Unexecuted instantiation: audio.c:av_int2double
Unexecuted instantiation: va.c:av_int2double
66
67
/**
68
 * Reinterpret a double as a 64-bit integer.
69
 */
70
static av_always_inline uint64_t av_double2int(double f)
71
0
{
72
0
    union av_intfloat64 v;
73
0
    v.f = f;
74
0
    return v.i;
75
0
}
Unexecuted instantiation: avcodec.c:av_double2int
Unexecuted instantiation: encoder.c:av_double2int
Unexecuted instantiation: chroma.c:av_double2int
Unexecuted instantiation: fourcc.c:av_double2int
Unexecuted instantiation: video.c:av_double2int
Unexecuted instantiation: subtitle.c:av_double2int
Unexecuted instantiation: audio.c:av_double2int
Unexecuted instantiation: va.c:av_double2int
76
77
#endif /* AVUTIL_INTFLOAT_H */