Coverage Report

Created: 2026-07-24 07:44

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/ghostpdl/openjpeg/src/lib/openjp2/opj_intmath.h
Line
Count
Source
1
/*
2
 * The copyright in this software is being made available under the 2-clauses
3
 * BSD License, included below. This software may be subject to other third
4
 * party and contributor rights, including patent rights, and no such rights
5
 * are granted under this license.
6
 *
7
 * Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium
8
 * Copyright (c) 2002-2014, Professor Benoit Macq
9
 * Copyright (c) 2001-2003, David Janssens
10
 * Copyright (c) 2002-2003, Yannick Verschueren
11
 * Copyright (c) 2003-2007, Francois-Olivier Devaux
12
 * Copyright (c) 2003-2014, Antonin Descampe
13
 * Copyright (c) 2005, Herve Drolon, FreeImage Team
14
 * All rights reserved.
15
 *
16
 * Redistribution and use in source and binary forms, with or without
17
 * modification, are permitted provided that the following conditions
18
 * are met:
19
 * 1. Redistributions of source code must retain the above copyright
20
 *    notice, this list of conditions and the following disclaimer.
21
 * 2. Redistributions in binary form must reproduce the above copyright
22
 *    notice, this list of conditions and the following disclaimer in the
23
 *    documentation and/or other materials provided with the distribution.
24
 *
25
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'
26
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
29
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35
 * POSSIBILITY OF SUCH DAMAGE.
36
 */
37
#ifndef OPJ_INTMATH_H
38
#define OPJ_INTMATH_H
39
/**
40
@file opj_intmath.h
41
@brief Implementation of operations on integers (INT)
42
43
The functions in OPJ_INTMATH.H have for goal to realize operations on integers.
44
*/
45
46
/** @defgroup OPJ_INTMATH OPJ_INTMATH - Implementation of operations on integers */
47
/*@{*/
48
49
/** @name Exported functions (see also openjpeg.h) */
50
/*@{*/
51
/* ----------------------------------------------------------------------- */
52
/**
53
Get the minimum of two integers
54
@return Returns a if a < b else b
55
*/
56
static INLINE OPJ_INT32 opj_int_min(OPJ_INT32 a, OPJ_INT32 b)
57
19.5M
{
58
19.5M
    return a < b ? a : b;
59
19.5M
}
Unexecuted instantiation: cio.c:opj_int_min
Unexecuted instantiation: event.c:opj_int_min
Unexecuted instantiation: image.c:opj_int_min
Unexecuted instantiation: openjpeg.c:opj_int_min
Unexecuted instantiation: j2k.c:opj_int_min
Unexecuted instantiation: jp2.c:opj_int_min
Unexecuted instantiation: mct.c:opj_int_min
Unexecuted instantiation: pi.c:opj_int_min
tcd.c:opj_int_min
Line
Count
Source
57
4.92M
{
58
4.92M
    return a < b ? a : b;
59
4.92M
}
Unexecuted instantiation: tgt.c:opj_int_min
Unexecuted instantiation: thread.c:opj_int_min
Unexecuted instantiation: bio.c:opj_int_min
dwt.c:opj_int_min
Line
Count
Source
57
12.6M
{
58
12.6M
    return a < b ? a : b;
59
12.6M
}
Unexecuted instantiation: function_list.c:opj_int_min
Unexecuted instantiation: invert.c:opj_int_min
Unexecuted instantiation: t1.c:opj_int_min
t2.c:opj_int_min
Line
Count
Source
57
1.98M
{
58
1.98M
    return a < b ? a : b;
59
1.98M
}
Unexecuted instantiation: sparse_array.c:opj_int_min
Unexecuted instantiation: ht_dec.c:opj_int_min
Unexecuted instantiation: mqc.c:opj_int_min
60
61
/**
62
Get the minimum of two integers
63
@return Returns a if a < b else b
64
*/
65
static INLINE OPJ_UINT32 opj_uint_min(OPJ_UINT32 a, OPJ_UINT32 b)
66
20.7M
{
67
20.7M
    return a < b ? a : b;
68
20.7M
}
Unexecuted instantiation: cio.c:opj_uint_min
Unexecuted instantiation: event.c:opj_uint_min
image.c:opj_uint_min
Line
Count
Source
66
19.2k
{
67
19.2k
    return a < b ? a : b;
68
19.2k
}
Unexecuted instantiation: openjpeg.c:opj_uint_min
j2k.c:opj_uint_min
Line
Count
Source
66
10
{
67
10
    return a < b ? a : b;
68
10
}
Unexecuted instantiation: jp2.c:opj_uint_min
Unexecuted instantiation: mct.c:opj_uint_min
pi.c:opj_uint_min
Line
Count
Source
66
419k
{
67
419k
    return a < b ? a : b;
68
419k
}
tcd.c:opj_uint_min
Line
Count
Source
66
7.65M
{
67
7.65M
    return a < b ? a : b;
68
7.65M
}
Unexecuted instantiation: tgt.c:opj_uint_min
Unexecuted instantiation: thread.c:opj_uint_min
Unexecuted instantiation: bio.c:opj_uint_min
dwt.c:opj_uint_min
Line
Count
Source
66
12.6M
{
67
12.6M
    return a < b ? a : b;
68
12.6M
}
Unexecuted instantiation: function_list.c:opj_uint_min
Unexecuted instantiation: invert.c:opj_uint_min
Unexecuted instantiation: t1.c:opj_uint_min
Unexecuted instantiation: t2.c:opj_uint_min
Unexecuted instantiation: sparse_array.c:opj_uint_min
Unexecuted instantiation: ht_dec.c:opj_uint_min
Unexecuted instantiation: mqc.c:opj_uint_min
69
70
/**
71
Get the maximum of two integers
72
@return Returns a if a > b else b
73
*/
74
static INLINE OPJ_INT32 opj_int_max(OPJ_INT32 a, OPJ_INT32 b)
75
4.92M
{
76
4.92M
    return (a > b) ? a : b;
77
4.92M
}
Unexecuted instantiation: cio.c:opj_int_max
Unexecuted instantiation: event.c:opj_int_max
Unexecuted instantiation: image.c:opj_int_max
Unexecuted instantiation: openjpeg.c:opj_int_max
Unexecuted instantiation: j2k.c:opj_int_max
Unexecuted instantiation: jp2.c:opj_int_max
Unexecuted instantiation: mct.c:opj_int_max
Unexecuted instantiation: pi.c:opj_int_max
tcd.c:opj_int_max
Line
Count
Source
75
4.92M
{
76
4.92M
    return (a > b) ? a : b;
77
4.92M
}
Unexecuted instantiation: tgt.c:opj_int_max
Unexecuted instantiation: thread.c:opj_int_max
Unexecuted instantiation: bio.c:opj_int_max
Unexecuted instantiation: dwt.c:opj_int_max
Unexecuted instantiation: function_list.c:opj_int_max
Unexecuted instantiation: invert.c:opj_int_max
Unexecuted instantiation: t1.c:opj_int_max
Unexecuted instantiation: t2.c:opj_int_max
Unexecuted instantiation: sparse_array.c:opj_int_max
Unexecuted instantiation: ht_dec.c:opj_int_max
Unexecuted instantiation: mqc.c:opj_int_max
78
79
/**
80
Get the maximum of two integers
81
@return Returns a if a > b else b
82
*/
83
static INLINE OPJ_UINT32 opj_uint_max(OPJ_UINT32  a, OPJ_UINT32  b)
84
8.67M
{
85
8.67M
    return (a > b) ? a : b;
86
8.67M
}
Unexecuted instantiation: cio.c:opj_uint_max
Unexecuted instantiation: event.c:opj_uint_max
image.c:opj_uint_max
Line
Count
Source
84
19.2k
{
85
19.2k
    return (a > b) ? a : b;
86
19.2k
}
Unexecuted instantiation: openjpeg.c:opj_uint_max
Unexecuted instantiation: j2k.c:opj_uint_max
Unexecuted instantiation: jp2.c:opj_uint_max
Unexecuted instantiation: mct.c:opj_uint_max
pi.c:opj_uint_max
Line
Count
Source
84
33.7k
{
85
33.7k
    return (a > b) ? a : b;
86
33.7k
}
tcd.c:opj_uint_max
Line
Count
Source
84
7.26M
{
85
7.26M
    return (a > b) ? a : b;
86
7.26M
}
Unexecuted instantiation: tgt.c:opj_uint_max
Unexecuted instantiation: thread.c:opj_uint_max
Unexecuted instantiation: bio.c:opj_uint_max
Unexecuted instantiation: dwt.c:opj_uint_max
Unexecuted instantiation: function_list.c:opj_uint_max
Unexecuted instantiation: invert.c:opj_uint_max
Unexecuted instantiation: t1.c:opj_uint_max
t2.c:opj_uint_max
Line
Count
Source
84
1.35M
{
85
1.35M
    return (a > b) ? a : b;
86
1.35M
}
Unexecuted instantiation: sparse_array.c:opj_uint_max
Unexecuted instantiation: ht_dec.c:opj_uint_max
Unexecuted instantiation: mqc.c:opj_uint_max
87
88
/**
89
 Get the saturated sum of two unsigned integers
90
 @return Returns saturated sum of a+b
91
 */
92
static INLINE OPJ_UINT32 opj_uint_adds(OPJ_UINT32 a, OPJ_UINT32 b)
93
7.27M
{
94
7.27M
    OPJ_UINT64 sum = (OPJ_UINT64)a + (OPJ_UINT64)b;
95
7.27M
    return (OPJ_UINT32)(-(OPJ_INT32)(sum >> 32)) | (OPJ_UINT32)sum;
96
7.27M
}
Unexecuted instantiation: cio.c:opj_uint_adds
Unexecuted instantiation: event.c:opj_uint_adds
image.c:opj_uint_adds
Line
Count
Source
93
19.2k
{
94
19.2k
    OPJ_UINT64 sum = (OPJ_UINT64)a + (OPJ_UINT64)b;
95
19.2k
    return (OPJ_UINT32)(-(OPJ_INT32)(sum >> 32)) | (OPJ_UINT32)sum;
96
19.2k
}
Unexecuted instantiation: openjpeg.c:opj_uint_adds
j2k.c:opj_uint_adds
Line
Count
Source
93
19.3k
{
94
19.3k
    OPJ_UINT64 sum = (OPJ_UINT64)a + (OPJ_UINT64)b;
95
19.3k
    return (OPJ_UINT32)(-(OPJ_INT32)(sum >> 32)) | (OPJ_UINT32)sum;
96
19.3k
}
Unexecuted instantiation: jp2.c:opj_uint_adds
Unexecuted instantiation: mct.c:opj_uint_adds
pi.c:opj_uint_adds
Line
Count
Source
93
33.7k
{
94
33.7k
    OPJ_UINT64 sum = (OPJ_UINT64)a + (OPJ_UINT64)b;
95
33.7k
    return (OPJ_UINT32)(-(OPJ_INT32)(sum >> 32)) | (OPJ_UINT32)sum;
96
33.7k
}
tcd.c:opj_uint_adds
Line
Count
Source
93
7.19M
{
94
7.19M
    OPJ_UINT64 sum = (OPJ_UINT64)a + (OPJ_UINT64)b;
95
7.19M
    return (OPJ_UINT32)(-(OPJ_INT32)(sum >> 32)) | (OPJ_UINT32)sum;
96
7.19M
}
Unexecuted instantiation: tgt.c:opj_uint_adds
Unexecuted instantiation: thread.c:opj_uint_adds
Unexecuted instantiation: bio.c:opj_uint_adds
Unexecuted instantiation: dwt.c:opj_uint_adds
Unexecuted instantiation: function_list.c:opj_uint_adds
Unexecuted instantiation: invert.c:opj_uint_adds
Unexecuted instantiation: t1.c:opj_uint_adds
Unexecuted instantiation: t2.c:opj_uint_adds
Unexecuted instantiation: sparse_array.c:opj_uint_adds
Unexecuted instantiation: ht_dec.c:opj_uint_adds
Unexecuted instantiation: mqc.c:opj_uint_adds
97
98
/**
99
 Get the saturated difference of two unsigned integers
100
 @return Returns saturated sum of a-b
101
 */
102
static INLINE OPJ_UINT32 opj_uint_subs(OPJ_UINT32 a, OPJ_UINT32 b)
103
0
{
104
0
    return (a >= b) ? a - b : 0;
105
0
}
Unexecuted instantiation: cio.c:opj_uint_subs
Unexecuted instantiation: event.c:opj_uint_subs
Unexecuted instantiation: image.c:opj_uint_subs
Unexecuted instantiation: openjpeg.c:opj_uint_subs
Unexecuted instantiation: j2k.c:opj_uint_subs
Unexecuted instantiation: jp2.c:opj_uint_subs
Unexecuted instantiation: mct.c:opj_uint_subs
Unexecuted instantiation: pi.c:opj_uint_subs
Unexecuted instantiation: tcd.c:opj_uint_subs
Unexecuted instantiation: tgt.c:opj_uint_subs
Unexecuted instantiation: thread.c:opj_uint_subs
Unexecuted instantiation: bio.c:opj_uint_subs
Unexecuted instantiation: dwt.c:opj_uint_subs
Unexecuted instantiation: function_list.c:opj_uint_subs
Unexecuted instantiation: invert.c:opj_uint_subs
Unexecuted instantiation: t1.c:opj_uint_subs
Unexecuted instantiation: t2.c:opj_uint_subs
Unexecuted instantiation: sparse_array.c:opj_uint_subs
Unexecuted instantiation: ht_dec.c:opj_uint_subs
Unexecuted instantiation: mqc.c:opj_uint_subs
106
107
/**
108
Clamp an integer inside an interval
109
@return
110
<ul>
111
<li>Returns a if (min < a < max)
112
<li>Returns max if (a > max)
113
<li>Returns min if (a < min)
114
</ul>
115
*/
116
static INLINE OPJ_INT32 opj_int_clamp(OPJ_INT32 a, OPJ_INT32 min,
117
                                      OPJ_INT32 max)
118
114M
{
119
114M
    if (a < min) {
120
3.02M
        return min;
121
3.02M
    }
122
111M
    if (a > max) {
123
15.1M
        return max;
124
15.1M
    }
125
95.8M
    return a;
126
111M
}
Unexecuted instantiation: cio.c:opj_int_clamp
Unexecuted instantiation: event.c:opj_int_clamp
Unexecuted instantiation: image.c:opj_int_clamp
Unexecuted instantiation: openjpeg.c:opj_int_clamp
Unexecuted instantiation: j2k.c:opj_int_clamp
Unexecuted instantiation: jp2.c:opj_int_clamp
Unexecuted instantiation: mct.c:opj_int_clamp
Unexecuted instantiation: pi.c:opj_int_clamp
tcd.c:opj_int_clamp
Line
Count
Source
118
114M
{
119
114M
    if (a < min) {
120
3.02M
        return min;
121
3.02M
    }
122
111M
    if (a > max) {
123
15.1M
        return max;
124
15.1M
    }
125
95.8M
    return a;
126
111M
}
Unexecuted instantiation: tgt.c:opj_int_clamp
Unexecuted instantiation: thread.c:opj_int_clamp
Unexecuted instantiation: bio.c:opj_int_clamp
Unexecuted instantiation: dwt.c:opj_int_clamp
Unexecuted instantiation: function_list.c:opj_int_clamp
Unexecuted instantiation: invert.c:opj_int_clamp
Unexecuted instantiation: t1.c:opj_int_clamp
Unexecuted instantiation: t2.c:opj_int_clamp
Unexecuted instantiation: sparse_array.c:opj_int_clamp
Unexecuted instantiation: ht_dec.c:opj_int_clamp
Unexecuted instantiation: mqc.c:opj_int_clamp
127
128
/**
129
Clamp an integer inside an interval
130
@return
131
<ul>
132
<li>Returns a if (min < a < max)
133
<li>Returns max if (a > max)
134
<li>Returns min if (a < min)
135
</ul>
136
*/
137
static INLINE OPJ_INT64 opj_int64_clamp(OPJ_INT64 a, OPJ_INT64 min,
138
                                        OPJ_INT64 max)
139
2.18G
{
140
2.18G
    if (a < min) {
141
227M
        return min;
142
227M
    }
143
1.96G
    if (a > max) {
144
79.1M
        return max;
145
79.1M
    }
146
1.88G
    return a;
147
1.96G
}
Unexecuted instantiation: cio.c:opj_int64_clamp
Unexecuted instantiation: event.c:opj_int64_clamp
Unexecuted instantiation: image.c:opj_int64_clamp
Unexecuted instantiation: openjpeg.c:opj_int64_clamp
Unexecuted instantiation: j2k.c:opj_int64_clamp
Unexecuted instantiation: jp2.c:opj_int64_clamp
Unexecuted instantiation: mct.c:opj_int64_clamp
Unexecuted instantiation: pi.c:opj_int64_clamp
tcd.c:opj_int64_clamp
Line
Count
Source
139
2.18G
{
140
2.18G
    if (a < min) {
141
227M
        return min;
142
227M
    }
143
1.96G
    if (a > max) {
144
79.1M
        return max;
145
79.1M
    }
146
1.88G
    return a;
147
1.96G
}
Unexecuted instantiation: tgt.c:opj_int64_clamp
Unexecuted instantiation: thread.c:opj_int64_clamp
Unexecuted instantiation: bio.c:opj_int64_clamp
Unexecuted instantiation: dwt.c:opj_int64_clamp
Unexecuted instantiation: function_list.c:opj_int64_clamp
Unexecuted instantiation: invert.c:opj_int64_clamp
Unexecuted instantiation: t1.c:opj_int64_clamp
Unexecuted instantiation: t2.c:opj_int64_clamp
Unexecuted instantiation: sparse_array.c:opj_int64_clamp
Unexecuted instantiation: ht_dec.c:opj_int64_clamp
Unexecuted instantiation: mqc.c:opj_int64_clamp
148
149
/**
150
@return Get absolute value of integer
151
*/
152
static INLINE OPJ_INT32 opj_int_abs(OPJ_INT32 a)
153
0
{
154
0
    return a < 0 ? -a : a;
155
0
}
Unexecuted instantiation: cio.c:opj_int_abs
Unexecuted instantiation: event.c:opj_int_abs
Unexecuted instantiation: image.c:opj_int_abs
Unexecuted instantiation: openjpeg.c:opj_int_abs
Unexecuted instantiation: j2k.c:opj_int_abs
Unexecuted instantiation: jp2.c:opj_int_abs
Unexecuted instantiation: mct.c:opj_int_abs
Unexecuted instantiation: pi.c:opj_int_abs
Unexecuted instantiation: tcd.c:opj_int_abs
Unexecuted instantiation: tgt.c:opj_int_abs
Unexecuted instantiation: thread.c:opj_int_abs
Unexecuted instantiation: bio.c:opj_int_abs
Unexecuted instantiation: dwt.c:opj_int_abs
Unexecuted instantiation: function_list.c:opj_int_abs
Unexecuted instantiation: invert.c:opj_int_abs
Unexecuted instantiation: t1.c:opj_int_abs
Unexecuted instantiation: t2.c:opj_int_abs
Unexecuted instantiation: sparse_array.c:opj_int_abs
Unexecuted instantiation: ht_dec.c:opj_int_abs
Unexecuted instantiation: mqc.c:opj_int_abs
156
/**
157
Divide an integer and round upwards
158
@return Returns a divided by b
159
*/
160
static INLINE OPJ_INT32 opj_int_ceildiv(OPJ_INT32 a, OPJ_INT32 b)
161
139k
{
162
139k
    assert(b);
163
139k
    return (OPJ_INT32)(((OPJ_INT64)a + b - 1) / b);
164
139k
}
Unexecuted instantiation: cio.c:opj_int_ceildiv
Unexecuted instantiation: event.c:opj_int_ceildiv
Unexecuted instantiation: image.c:opj_int_ceildiv
Unexecuted instantiation: openjpeg.c:opj_int_ceildiv
Unexecuted instantiation: j2k.c:opj_int_ceildiv
Unexecuted instantiation: jp2.c:opj_int_ceildiv
Unexecuted instantiation: mct.c:opj_int_ceildiv
Unexecuted instantiation: pi.c:opj_int_ceildiv
tcd.c:opj_int_ceildiv
Line
Count
Source
161
139k
{
162
    assert(b);
163
139k
    return (OPJ_INT32)(((OPJ_INT64)a + b - 1) / b);
164
139k
}
Unexecuted instantiation: tgt.c:opj_int_ceildiv
Unexecuted instantiation: thread.c:opj_int_ceildiv
Unexecuted instantiation: bio.c:opj_int_ceildiv
Unexecuted instantiation: dwt.c:opj_int_ceildiv
Unexecuted instantiation: function_list.c:opj_int_ceildiv
Unexecuted instantiation: invert.c:opj_int_ceildiv
Unexecuted instantiation: t1.c:opj_int_ceildiv
Unexecuted instantiation: t2.c:opj_int_ceildiv
Unexecuted instantiation: sparse_array.c:opj_int_ceildiv
Unexecuted instantiation: ht_dec.c:opj_int_ceildiv
Unexecuted instantiation: mqc.c:opj_int_ceildiv
165
166
/**
167
Divide an integer and round upwards
168
@return Returns a divided by b
169
*/
170
static INLINE OPJ_UINT32  opj_uint_ceildiv(OPJ_UINT32  a, OPJ_UINT32  b)
171
14.6M
{
172
14.6M
    assert(b);
173
14.6M
    return (OPJ_UINT32)(((OPJ_UINT64)a + b - 1) / b);
174
14.6M
}
Unexecuted instantiation: cio.c:opj_uint_ceildiv
Unexecuted instantiation: event.c:opj_uint_ceildiv
image.c:opj_uint_ceildiv
Line
Count
Source
171
70.2k
{
172
    assert(b);
173
70.2k
    return (OPJ_UINT32)(((OPJ_UINT64)a + b - 1) / b);
174
70.2k
}
Unexecuted instantiation: openjpeg.c:opj_uint_ceildiv
j2k.c:opj_uint_ceildiv
Line
Count
Source
171
19.2k
{
172
    assert(b);
173
19.2k
    return (OPJ_UINT32)(((OPJ_UINT64)a + b - 1) / b);
174
19.2k
}
Unexecuted instantiation: jp2.c:opj_uint_ceildiv
Unexecuted instantiation: mct.c:opj_uint_ceildiv
pi.c:opj_uint_ceildiv
Line
Count
Source
171
139k
{
172
    assert(b);
173
139k
    return (OPJ_UINT32)(((OPJ_UINT64)a + b - 1) / b);
174
139k
}
tcd.c:opj_uint_ceildiv
Line
Count
Source
171
14.4M
{
172
    assert(b);
173
14.4M
    return (OPJ_UINT32)(((OPJ_UINT64)a + b - 1) / b);
174
14.4M
}
Unexecuted instantiation: tgt.c:opj_uint_ceildiv
Unexecuted instantiation: thread.c:opj_uint_ceildiv
Unexecuted instantiation: bio.c:opj_uint_ceildiv
Unexecuted instantiation: dwt.c:opj_uint_ceildiv
Unexecuted instantiation: function_list.c:opj_uint_ceildiv
Unexecuted instantiation: invert.c:opj_uint_ceildiv
Unexecuted instantiation: t1.c:opj_uint_ceildiv
Unexecuted instantiation: t2.c:opj_uint_ceildiv
Unexecuted instantiation: sparse_array.c:opj_uint_ceildiv
Unexecuted instantiation: ht_dec.c:opj_uint_ceildiv
Unexecuted instantiation: mqc.c:opj_uint_ceildiv
175
176
/**
177
Divide an integer and round upwards
178
@return Returns a divided by b
179
*/
180
static INLINE OPJ_UINT32  opj_uint64_ceildiv_res_uint32(OPJ_UINT64 a,
181
        OPJ_UINT64 b)
182
1.75k
{
183
1.75k
    assert(b);
184
1.75k
    return (OPJ_UINT32)((a + b - 1) / b);
185
1.75k
}
Unexecuted instantiation: cio.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: event.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: image.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: openjpeg.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: j2k.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: jp2.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: mct.c:opj_uint64_ceildiv_res_uint32
pi.c:opj_uint64_ceildiv_res_uint32
Line
Count
Source
182
1.75k
{
183
    assert(b);
184
1.75k
    return (OPJ_UINT32)((a + b - 1) / b);
185
1.75k
}
Unexecuted instantiation: tcd.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: tgt.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: thread.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: bio.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: dwt.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: function_list.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: invert.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: t1.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: t2.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: sparse_array.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: ht_dec.c:opj_uint64_ceildiv_res_uint32
Unexecuted instantiation: mqc.c:opj_uint64_ceildiv_res_uint32
186
187
/**
188
Divide an integer by a power of 2 and round upwards
189
@return Returns a divided by 2^b
190
*/
191
static INLINE OPJ_INT32 opj_int_ceildivpow2(OPJ_INT32 a, OPJ_INT32 b)
192
2.96M
{
193
2.96M
    return (OPJ_INT32)((a + ((OPJ_INT64)1 << b) - 1) >> b);
194
2.96M
}
Unexecuted instantiation: cio.c:opj_int_ceildivpow2
Unexecuted instantiation: event.c:opj_int_ceildivpow2
Unexecuted instantiation: image.c:opj_int_ceildivpow2
Unexecuted instantiation: openjpeg.c:opj_int_ceildivpow2
Unexecuted instantiation: j2k.c:opj_int_ceildivpow2
Unexecuted instantiation: jp2.c:opj_int_ceildivpow2
Unexecuted instantiation: mct.c:opj_int_ceildivpow2
Unexecuted instantiation: pi.c:opj_int_ceildivpow2
tcd.c:opj_int_ceildivpow2
Line
Count
Source
192
2.96M
{
193
2.96M
    return (OPJ_INT32)((a + ((OPJ_INT64)1 << b) - 1) >> b);
194
2.96M
}
Unexecuted instantiation: tgt.c:opj_int_ceildivpow2
Unexecuted instantiation: thread.c:opj_int_ceildivpow2
Unexecuted instantiation: bio.c:opj_int_ceildivpow2
Unexecuted instantiation: dwt.c:opj_int_ceildivpow2
Unexecuted instantiation: function_list.c:opj_int_ceildivpow2
Unexecuted instantiation: invert.c:opj_int_ceildivpow2
Unexecuted instantiation: t1.c:opj_int_ceildivpow2
Unexecuted instantiation: t2.c:opj_int_ceildivpow2
Unexecuted instantiation: sparse_array.c:opj_int_ceildivpow2
Unexecuted instantiation: ht_dec.c:opj_int_ceildivpow2
Unexecuted instantiation: mqc.c:opj_int_ceildivpow2
195
196
/**
197
 Divide a 64bits integer by a power of 2 and round upwards
198
 @return Returns a divided by 2^b
199
 */
200
static INLINE OPJ_INT32 opj_int64_ceildivpow2(OPJ_INT64 a, OPJ_INT32 b)
201
1.88M
{
202
1.88M
    return (OPJ_INT32)((a + ((OPJ_INT64)1 << b) - 1) >> b);
203
1.88M
}
Unexecuted instantiation: cio.c:opj_int64_ceildivpow2
Unexecuted instantiation: event.c:opj_int64_ceildivpow2
Unexecuted instantiation: image.c:opj_int64_ceildivpow2
Unexecuted instantiation: openjpeg.c:opj_int64_ceildivpow2
Unexecuted instantiation: j2k.c:opj_int64_ceildivpow2
Unexecuted instantiation: jp2.c:opj_int64_ceildivpow2
Unexecuted instantiation: mct.c:opj_int64_ceildivpow2
Unexecuted instantiation: pi.c:opj_int64_ceildivpow2
tcd.c:opj_int64_ceildivpow2
Line
Count
Source
201
1.88M
{
202
1.88M
    return (OPJ_INT32)((a + ((OPJ_INT64)1 << b) - 1) >> b);
203
1.88M
}
Unexecuted instantiation: tgt.c:opj_int64_ceildivpow2
Unexecuted instantiation: thread.c:opj_int64_ceildivpow2
Unexecuted instantiation: bio.c:opj_int64_ceildivpow2
Unexecuted instantiation: dwt.c:opj_int64_ceildivpow2
Unexecuted instantiation: function_list.c:opj_int64_ceildivpow2
Unexecuted instantiation: invert.c:opj_int64_ceildivpow2
Unexecuted instantiation: t1.c:opj_int64_ceildivpow2
Unexecuted instantiation: t2.c:opj_int64_ceildivpow2
Unexecuted instantiation: sparse_array.c:opj_int64_ceildivpow2
Unexecuted instantiation: ht_dec.c:opj_int64_ceildivpow2
Unexecuted instantiation: mqc.c:opj_int64_ceildivpow2
204
205
/**
206
 Divide an integer by a power of 2 and round upwards
207
 @return Returns a divided by 2^b
208
 */
209
static INLINE OPJ_UINT32 opj_uint_ceildivpow2(OPJ_UINT32 a, OPJ_UINT32 b)
210
11.4M
{
211
11.4M
    return (OPJ_UINT32)((a + ((OPJ_UINT64)1U << b) - 1U) >> b);
212
11.4M
}
Unexecuted instantiation: cio.c:opj_uint_ceildivpow2
Unexecuted instantiation: event.c:opj_uint_ceildivpow2
image.c:opj_uint_ceildivpow2
Line
Count
Source
210
35.1k
{
211
35.1k
    return (OPJ_UINT32)((a + ((OPJ_UINT64)1U << b) - 1U) >> b);
212
35.1k
}
Unexecuted instantiation: openjpeg.c:opj_uint_ceildivpow2
j2k.c:opj_uint_ceildivpow2
Line
Count
Source
210
53.7k
{
211
53.7k
    return (OPJ_UINT32)((a + ((OPJ_UINT64)1U << b) - 1U) >> b);
212
53.7k
}
Unexecuted instantiation: jp2.c:opj_uint_ceildivpow2
Unexecuted instantiation: mct.c:opj_uint_ceildivpow2
pi.c:opj_uint_ceildivpow2
Line
Count
Source
210
1.15M
{
211
1.15M
    return (OPJ_UINT32)((a + ((OPJ_UINT64)1U << b) - 1U) >> b);
212
1.15M
}
tcd.c:opj_uint_ceildivpow2
Line
Count
Source
210
10.1M
{
211
10.1M
    return (OPJ_UINT32)((a + ((OPJ_UINT64)1U << b) - 1U) >> b);
212
10.1M
}
Unexecuted instantiation: tgt.c:opj_uint_ceildivpow2
Unexecuted instantiation: thread.c:opj_uint_ceildivpow2
Unexecuted instantiation: bio.c:opj_uint_ceildivpow2
Unexecuted instantiation: dwt.c:opj_uint_ceildivpow2
Unexecuted instantiation: function_list.c:opj_uint_ceildivpow2
Unexecuted instantiation: invert.c:opj_uint_ceildivpow2
Unexecuted instantiation: t1.c:opj_uint_ceildivpow2
Unexecuted instantiation: t2.c:opj_uint_ceildivpow2
Unexecuted instantiation: sparse_array.c:opj_uint_ceildivpow2
Unexecuted instantiation: ht_dec.c:opj_uint_ceildivpow2
Unexecuted instantiation: mqc.c:opj_uint_ceildivpow2
213
214
/**
215
Divide an integer by a power of 2 and round downwards
216
@return Returns a divided by 2^b
217
*/
218
static INLINE OPJ_INT32 opj_int_floordivpow2(OPJ_INT32 a, OPJ_INT32 b)
219
1.74M
{
220
1.74M
    return a >> b;
221
1.74M
}
Unexecuted instantiation: cio.c:opj_int_floordivpow2
Unexecuted instantiation: event.c:opj_int_floordivpow2
Unexecuted instantiation: image.c:opj_int_floordivpow2
Unexecuted instantiation: openjpeg.c:opj_int_floordivpow2
Unexecuted instantiation: j2k.c:opj_int_floordivpow2
Unexecuted instantiation: jp2.c:opj_int_floordivpow2
Unexecuted instantiation: mct.c:opj_int_floordivpow2
Unexecuted instantiation: pi.c:opj_int_floordivpow2
tcd.c:opj_int_floordivpow2
Line
Count
Source
219
1.74M
{
220
1.74M
    return a >> b;
221
1.74M
}
Unexecuted instantiation: tgt.c:opj_int_floordivpow2
Unexecuted instantiation: thread.c:opj_int_floordivpow2
Unexecuted instantiation: bio.c:opj_int_floordivpow2
Unexecuted instantiation: dwt.c:opj_int_floordivpow2
Unexecuted instantiation: function_list.c:opj_int_floordivpow2
Unexecuted instantiation: invert.c:opj_int_floordivpow2
Unexecuted instantiation: t1.c:opj_int_floordivpow2
Unexecuted instantiation: t2.c:opj_int_floordivpow2
Unexecuted instantiation: sparse_array.c:opj_int_floordivpow2
Unexecuted instantiation: ht_dec.c:opj_int_floordivpow2
Unexecuted instantiation: mqc.c:opj_int_floordivpow2
222
223
/**
224
Divide an integer by a power of 2 and round downwards
225
@return Returns a divided by 2^b
226
*/
227
static INLINE OPJ_UINT32 opj_uint_floordivpow2(OPJ_UINT32 a, OPJ_UINT32 b)
228
385k
{
229
385k
    return a >> b;
230
385k
}
Unexecuted instantiation: cio.c:opj_uint_floordivpow2
Unexecuted instantiation: event.c:opj_uint_floordivpow2
Unexecuted instantiation: image.c:opj_uint_floordivpow2
Unexecuted instantiation: openjpeg.c:opj_uint_floordivpow2
Unexecuted instantiation: j2k.c:opj_uint_floordivpow2
Unexecuted instantiation: jp2.c:opj_uint_floordivpow2
Unexecuted instantiation: mct.c:opj_uint_floordivpow2
pi.c:opj_uint_floordivpow2
Line
Count
Source
228
385k
{
229
385k
    return a >> b;
230
385k
}
Unexecuted instantiation: tcd.c:opj_uint_floordivpow2
Unexecuted instantiation: tgt.c:opj_uint_floordivpow2
Unexecuted instantiation: thread.c:opj_uint_floordivpow2
Unexecuted instantiation: bio.c:opj_uint_floordivpow2
Unexecuted instantiation: dwt.c:opj_uint_floordivpow2
Unexecuted instantiation: function_list.c:opj_uint_floordivpow2
Unexecuted instantiation: invert.c:opj_uint_floordivpow2
Unexecuted instantiation: t1.c:opj_uint_floordivpow2
Unexecuted instantiation: t2.c:opj_uint_floordivpow2
Unexecuted instantiation: sparse_array.c:opj_uint_floordivpow2
Unexecuted instantiation: ht_dec.c:opj_uint_floordivpow2
Unexecuted instantiation: mqc.c:opj_uint_floordivpow2
231
232
/**
233
Get logarithm of an integer and round downwards
234
@return Returns log2(a)
235
*/
236
static INLINE OPJ_INT32 opj_int_floorlog2(OPJ_INT32 a)
237
0
{
238
0
    OPJ_INT32 l;
239
0
    for (l = 0; a > 1; l++) {
240
0
        a >>= 1;
241
0
    }
242
0
    return l;
243
0
}
Unexecuted instantiation: cio.c:opj_int_floorlog2
Unexecuted instantiation: event.c:opj_int_floorlog2
Unexecuted instantiation: image.c:opj_int_floorlog2
Unexecuted instantiation: openjpeg.c:opj_int_floorlog2
Unexecuted instantiation: j2k.c:opj_int_floorlog2
Unexecuted instantiation: jp2.c:opj_int_floorlog2
Unexecuted instantiation: mct.c:opj_int_floorlog2
Unexecuted instantiation: pi.c:opj_int_floorlog2
Unexecuted instantiation: tcd.c:opj_int_floorlog2
Unexecuted instantiation: tgt.c:opj_int_floorlog2
Unexecuted instantiation: thread.c:opj_int_floorlog2
Unexecuted instantiation: bio.c:opj_int_floorlog2
Unexecuted instantiation: dwt.c:opj_int_floorlog2
Unexecuted instantiation: function_list.c:opj_int_floorlog2
Unexecuted instantiation: invert.c:opj_int_floorlog2
Unexecuted instantiation: t1.c:opj_int_floorlog2
Unexecuted instantiation: t2.c:opj_int_floorlog2
Unexecuted instantiation: sparse_array.c:opj_int_floorlog2
Unexecuted instantiation: ht_dec.c:opj_int_floorlog2
Unexecuted instantiation: mqc.c:opj_int_floorlog2
244
/**
245
Get logarithm of an integer and round downwards
246
@return Returns log2(a)
247
*/
248
static INLINE OPJ_UINT32  opj_uint_floorlog2(OPJ_UINT32  a)
249
1.98M
{
250
1.98M
    OPJ_UINT32  l;
251
4.36M
    for (l = 0; a > 1; ++l) {
252
2.38M
        a >>= 1;
253
2.38M
    }
254
1.98M
    return l;
255
1.98M
}
Unexecuted instantiation: cio.c:opj_uint_floorlog2
Unexecuted instantiation: event.c:opj_uint_floorlog2
Unexecuted instantiation: image.c:opj_uint_floorlog2
Unexecuted instantiation: openjpeg.c:opj_uint_floorlog2
Unexecuted instantiation: j2k.c:opj_uint_floorlog2
Unexecuted instantiation: jp2.c:opj_uint_floorlog2
Unexecuted instantiation: mct.c:opj_uint_floorlog2
Unexecuted instantiation: pi.c:opj_uint_floorlog2
Unexecuted instantiation: tcd.c:opj_uint_floorlog2
Unexecuted instantiation: tgt.c:opj_uint_floorlog2
Unexecuted instantiation: thread.c:opj_uint_floorlog2
Unexecuted instantiation: bio.c:opj_uint_floorlog2
Unexecuted instantiation: dwt.c:opj_uint_floorlog2
Unexecuted instantiation: function_list.c:opj_uint_floorlog2
Unexecuted instantiation: invert.c:opj_uint_floorlog2
Unexecuted instantiation: t1.c:opj_uint_floorlog2
t2.c:opj_uint_floorlog2
Line
Count
Source
249
1.98M
{
250
1.98M
    OPJ_UINT32  l;
251
4.36M
    for (l = 0; a > 1; ++l) {
252
2.38M
        a >>= 1;
253
2.38M
    }
254
1.98M
    return l;
255
1.98M
}
Unexecuted instantiation: sparse_array.c:opj_uint_floorlog2
Unexecuted instantiation: ht_dec.c:opj_uint_floorlog2
Unexecuted instantiation: mqc.c:opj_uint_floorlog2
256
257
/**
258
Multiply two fixed-precision rational numbers.
259
@param a
260
@param b
261
@return Returns a * b
262
*/
263
static INLINE OPJ_INT32 opj_int_fix_mul(OPJ_INT32 a, OPJ_INT32 b)
264
0
{
265
#if defined(_MSC_VER) && (_MSC_VER >= 1400) && !defined(__INTEL_COMPILER) && defined(_M_IX86)
266
    OPJ_INT64 temp = __emul(a, b);
267
#else
268
0
    OPJ_INT64 temp = (OPJ_INT64) a * (OPJ_INT64) b ;
269
0
#endif
270
0
    temp += 4096;
271
0
    assert((temp >> 13) <= (OPJ_INT64)0x7FFFFFFF);
272
0
    assert((temp >> 13) >= (-(OPJ_INT64)0x7FFFFFFF - (OPJ_INT64)1));
273
0
    return (OPJ_INT32)(temp >> 13);
274
0
}
Unexecuted instantiation: cio.c:opj_int_fix_mul
Unexecuted instantiation: event.c:opj_int_fix_mul
Unexecuted instantiation: image.c:opj_int_fix_mul
Unexecuted instantiation: openjpeg.c:opj_int_fix_mul
Unexecuted instantiation: j2k.c:opj_int_fix_mul
Unexecuted instantiation: jp2.c:opj_int_fix_mul
Unexecuted instantiation: mct.c:opj_int_fix_mul
Unexecuted instantiation: pi.c:opj_int_fix_mul
Unexecuted instantiation: tcd.c:opj_int_fix_mul
Unexecuted instantiation: tgt.c:opj_int_fix_mul
Unexecuted instantiation: thread.c:opj_int_fix_mul
Unexecuted instantiation: bio.c:opj_int_fix_mul
Unexecuted instantiation: dwt.c:opj_int_fix_mul
Unexecuted instantiation: function_list.c:opj_int_fix_mul
Unexecuted instantiation: invert.c:opj_int_fix_mul
Unexecuted instantiation: t1.c:opj_int_fix_mul
Unexecuted instantiation: t2.c:opj_int_fix_mul
Unexecuted instantiation: sparse_array.c:opj_int_fix_mul
Unexecuted instantiation: ht_dec.c:opj_int_fix_mul
Unexecuted instantiation: mqc.c:opj_int_fix_mul
275
276
static INLINE OPJ_INT32 opj_int_fix_mul_t1(OPJ_INT32 a, OPJ_INT32 b)
277
0
{
278
0
#if defined(_MSC_VER) && (_MSC_VER >= 1400) && !defined(__INTEL_COMPILER) && defined(_M_IX86)
279
0
    OPJ_INT64 temp = __emul(a, b);
280
0
#else
281
0
    OPJ_INT64 temp = (OPJ_INT64) a * (OPJ_INT64) b ;
282
0
#endif
283
0
    temp += 4096;
284
0
    assert((temp >> (13 + 11 - T1_NMSEDEC_FRACBITS)) <= (OPJ_INT64)0x7FFFFFFF);
285
0
    assert((temp >> (13 + 11 - T1_NMSEDEC_FRACBITS)) >= (-(OPJ_INT64)0x7FFFFFFF -
286
0
            (OPJ_INT64)1));
287
0
    return (OPJ_INT32)(temp >> (13 + 11 - T1_NMSEDEC_FRACBITS)) ;
288
0
}
Unexecuted instantiation: cio.c:opj_int_fix_mul_t1
Unexecuted instantiation: event.c:opj_int_fix_mul_t1
Unexecuted instantiation: image.c:opj_int_fix_mul_t1
Unexecuted instantiation: openjpeg.c:opj_int_fix_mul_t1
Unexecuted instantiation: j2k.c:opj_int_fix_mul_t1
Unexecuted instantiation: jp2.c:opj_int_fix_mul_t1
Unexecuted instantiation: mct.c:opj_int_fix_mul_t1
Unexecuted instantiation: pi.c:opj_int_fix_mul_t1
Unexecuted instantiation: tcd.c:opj_int_fix_mul_t1
Unexecuted instantiation: tgt.c:opj_int_fix_mul_t1
Unexecuted instantiation: thread.c:opj_int_fix_mul_t1
Unexecuted instantiation: bio.c:opj_int_fix_mul_t1
Unexecuted instantiation: dwt.c:opj_int_fix_mul_t1
Unexecuted instantiation: function_list.c:opj_int_fix_mul_t1
Unexecuted instantiation: invert.c:opj_int_fix_mul_t1
Unexecuted instantiation: t1.c:opj_int_fix_mul_t1
Unexecuted instantiation: t2.c:opj_int_fix_mul_t1
Unexecuted instantiation: sparse_array.c:opj_int_fix_mul_t1
Unexecuted instantiation: ht_dec.c:opj_int_fix_mul_t1
Unexecuted instantiation: mqc.c:opj_int_fix_mul_t1
289
290
/**
291
Addition two signed integers with a wrap-around behaviour.
292
Assumes complement-to-two signed integers.
293
@param a
294
@param b
295
@return Returns a + b
296
*/
297
static INLINE OPJ_INT32 opj_int_add_no_overflow(OPJ_INT32 a, OPJ_INT32 b)
298
0
{
299
0
    void* pa = &a;
300
0
    void* pb = &b;
301
0
    OPJ_UINT32* upa = (OPJ_UINT32*)pa;
302
0
    OPJ_UINT32* upb = (OPJ_UINT32*)pb;
303
0
    OPJ_UINT32 ures = *upa + *upb;
304
0
    void* pures = &ures;
305
0
    OPJ_INT32* ipres = (OPJ_INT32*)pures;
306
0
    return *ipres;
307
0
}
Unexecuted instantiation: cio.c:opj_int_add_no_overflow
Unexecuted instantiation: event.c:opj_int_add_no_overflow
Unexecuted instantiation: image.c:opj_int_add_no_overflow
Unexecuted instantiation: openjpeg.c:opj_int_add_no_overflow
Unexecuted instantiation: j2k.c:opj_int_add_no_overflow
Unexecuted instantiation: jp2.c:opj_int_add_no_overflow
Unexecuted instantiation: mct.c:opj_int_add_no_overflow
Unexecuted instantiation: pi.c:opj_int_add_no_overflow
Unexecuted instantiation: tcd.c:opj_int_add_no_overflow
Unexecuted instantiation: tgt.c:opj_int_add_no_overflow
Unexecuted instantiation: thread.c:opj_int_add_no_overflow
Unexecuted instantiation: bio.c:opj_int_add_no_overflow
Unexecuted instantiation: dwt.c:opj_int_add_no_overflow
Unexecuted instantiation: function_list.c:opj_int_add_no_overflow
Unexecuted instantiation: invert.c:opj_int_add_no_overflow
Unexecuted instantiation: t1.c:opj_int_add_no_overflow
Unexecuted instantiation: t2.c:opj_int_add_no_overflow
Unexecuted instantiation: sparse_array.c:opj_int_add_no_overflow
Unexecuted instantiation: ht_dec.c:opj_int_add_no_overflow
Unexecuted instantiation: mqc.c:opj_int_add_no_overflow
308
309
/**
310
Subtract two signed integers with a wrap-around behaviour.
311
Assumes complement-to-two signed integers.
312
@param a
313
@param b
314
@return Returns a - b
315
*/
316
static INLINE OPJ_INT32 opj_int_sub_no_overflow(OPJ_INT32 a, OPJ_INT32 b)
317
0
{
318
0
    void* pa = &a;
319
0
    void* pb = &b;
320
0
    OPJ_UINT32* upa = (OPJ_UINT32*)pa;
321
0
    OPJ_UINT32* upb = (OPJ_UINT32*)pb;
322
0
    OPJ_UINT32 ures = *upa - *upb;
323
0
    void* pures = &ures;
324
0
    OPJ_INT32* ipres = (OPJ_INT32*)pures;
325
0
    return *ipres;
326
0
}
Unexecuted instantiation: cio.c:opj_int_sub_no_overflow
Unexecuted instantiation: event.c:opj_int_sub_no_overflow
Unexecuted instantiation: image.c:opj_int_sub_no_overflow
Unexecuted instantiation: openjpeg.c:opj_int_sub_no_overflow
Unexecuted instantiation: j2k.c:opj_int_sub_no_overflow
Unexecuted instantiation: jp2.c:opj_int_sub_no_overflow
Unexecuted instantiation: mct.c:opj_int_sub_no_overflow
Unexecuted instantiation: pi.c:opj_int_sub_no_overflow
Unexecuted instantiation: tcd.c:opj_int_sub_no_overflow
Unexecuted instantiation: tgt.c:opj_int_sub_no_overflow
Unexecuted instantiation: thread.c:opj_int_sub_no_overflow
Unexecuted instantiation: bio.c:opj_int_sub_no_overflow
Unexecuted instantiation: dwt.c:opj_int_sub_no_overflow
Unexecuted instantiation: function_list.c:opj_int_sub_no_overflow
Unexecuted instantiation: invert.c:opj_int_sub_no_overflow
Unexecuted instantiation: t1.c:opj_int_sub_no_overflow
Unexecuted instantiation: t2.c:opj_int_sub_no_overflow
Unexecuted instantiation: sparse_array.c:opj_int_sub_no_overflow
Unexecuted instantiation: ht_dec.c:opj_int_sub_no_overflow
Unexecuted instantiation: mqc.c:opj_int_sub_no_overflow
327
328
/* ----------------------------------------------------------------------- */
329
/*@}*/
330
331
/*@}*/
332
333
#endif /* OPJ_INTMATH_H */