Coverage Report

Created: 2025-10-10 06:16

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/selinux/DESTDIR/usr/include/sepol/policydb/ebitmap.h
Line
Count
Source
1
/* Author : Stephen Smalley, <stephen.smalley.work@gmail.com> */
2
3
/* FLASK */
4
5
/*
6
 * An extensible bitmap is a bitmap that supports an 
7
 * arbitrary number of bits.  Extensible bitmaps are
8
 * used to represent sets of values, such as types,
9
 * roles, categories, and classes.
10
 *
11
 * Each extensible bitmap is implemented as a linked
12
 * list of bitmap nodes, where each bitmap node has
13
 * an explicitly specified starting bit position within
14
 * the total bitmap.
15
 */
16
17
#ifndef _SEPOL_POLICYDB_EBITMAP_H_
18
#define _SEPOL_POLICYDB_EBITMAP_H_
19
20
#include <stdint.h>
21
#include <string.h>
22
23
#ifdef __cplusplus
24
extern "C" {
25
#endif
26
27
390k
#define MAPTYPE uint64_t  /* portion of bitmap in each node */
28
3.38G
#define MAPSIZE (sizeof(MAPTYPE) * 8)  /* number of bits in node bitmap */
29
755M
#define MAPBIT  1ULL    /* a bit in the node bitmap */
30
31
typedef struct ebitmap_node {
32
  uint32_t startbit;  /* starting position in the total bitmap */
33
  MAPTYPE map;    /* this node's portion of the bitmap */
34
  struct ebitmap_node *next;
35
} ebitmap_node_t;
36
37
typedef struct ebitmap {
38
  ebitmap_node_t *node; /* first node in the bitmap */
39
  uint32_t highbit; /* highest position in the total bitmap */
40
} ebitmap_t;
41
42
5.82M
#define ebitmap_is_empty(e) (((e)->node) == NULL)
43
709M
#define ebitmap_length(e) ((e)->node ? (e)->highbit : 0)
44
13.4M
#define ebitmap_startbit(e) ((e)->node ? (e)->node->startbit : 0)
45
#define ebitmap_startnode(e) ((e)->node)
46
47
static inline unsigned int ebitmap_start(const ebitmap_t * e,
48
           ebitmap_node_t ** n)
49
13.4M
{
50
51
13.4M
  *n = e->node;
52
13.4M
  return ebitmap_startbit(e);
53
13.4M
}
Unexecuted instantiation: checkpolicy-fuzzer.c:ebitmap_start
Unexecuted instantiation: module_compiler.c:ebitmap_start
Unexecuted instantiation: parse_util.c:ebitmap_start
policy_define.c:ebitmap_start
Line
Count
Source
49
110k
{
50
51
110k
  *n = e->node;
52
110k
  return ebitmap_startbit(e);
53
110k
}
Unexecuted instantiation: y.tab.c:ebitmap_start
Unexecuted instantiation: assertion.c:ebitmap_start
Unexecuted instantiation: avrule_block.c:ebitmap_start
Unexecuted instantiation: avtab.c:ebitmap_start
Unexecuted instantiation: conditional.c:ebitmap_start
Unexecuted instantiation: constraint.c:ebitmap_start
Unexecuted instantiation: context.c:ebitmap_start
Unexecuted instantiation: context_record.c:ebitmap_start
Unexecuted instantiation: ebitmap.c:ebitmap_start
expand.c:ebitmap_start
Line
Count
Source
49
938k
{
50
51
938k
  *n = e->node;
52
938k
  return ebitmap_startbit(e);
53
938k
}
Unexecuted instantiation: hashtab.c:ebitmap_start
hierarchy.c:ebitmap_start
Line
Count
Source
49
2.22M
{
50
51
2.22M
  *n = e->node;
52
2.22M
  return ebitmap_startbit(e);
53
2.22M
}
kernel_to_cil.c:ebitmap_start
Line
Count
Source
49
12.6k
{
50
51
12.6k
  *n = e->node;
52
12.6k
  return ebitmap_startbit(e);
53
12.6k
}
kernel_to_common.c:ebitmap_start
Line
Count
Source
49
15.4k
{
50
51
15.4k
  *n = e->node;
52
15.4k
  return ebitmap_startbit(e);
53
15.4k
}
kernel_to_conf.c:ebitmap_start
Line
Count
Source
49
12.6k
{
50
51
12.6k
  *n = e->node;
52
12.6k
  return ebitmap_startbit(e);
53
12.6k
}
link.c:ebitmap_start
Line
Count
Source
49
75.0k
{
50
51
75.0k
  *n = e->node;
52
75.0k
  return ebitmap_startbit(e);
53
75.0k
}
mls.c:ebitmap_start
Line
Count
Source
49
5.28k
{
50
51
5.28k
  *n = e->node;
52
5.28k
  return ebitmap_startbit(e);
53
5.28k
}
Unexecuted instantiation: module_to_cil.c:ebitmap_start
optimize.c:ebitmap_start
Line
Count
Source
49
299k
{
50
51
299k
  *n = e->node;
52
299k
  return ebitmap_startbit(e);
53
299k
}
policydb.c:ebitmap_start
Line
Count
Source
49
2.25k
{
50
51
2.25k
  *n = e->node;
52
2.25k
  return ebitmap_startbit(e);
53
2.25k
}
Unexecuted instantiation: policydb_public.c:ebitmap_start
policydb_validate.c:ebitmap_start
Line
Count
Source
49
9.80k
{
50
51
9.80k
  *n = e->node;
52
9.80k
  return ebitmap_startbit(e);
53
9.80k
}
Unexecuted instantiation: services.c:ebitmap_start
Unexecuted instantiation: sidtab.c:ebitmap_start
Unexecuted instantiation: symtab.c:ebitmap_start
Unexecuted instantiation: util.c:ebitmap_start
write.c:ebitmap_start
Line
Count
Source
49
1.10k
{
50
51
1.10k
  *n = e->node;
52
1.10k
  return ebitmap_startbit(e);
53
1.10k
}
Unexecuted instantiation: module.c:ebitmap_start
Unexecuted instantiation: policydb_convert.c:ebitmap_start
Unexecuted instantiation: binpolicy-fuzzer.c:ebitmap_start
Unexecuted instantiation: secilc-fuzzer.c:ebitmap_start
Unexecuted instantiation: cil.c:ebitmap_start
cil_binary.c:ebitmap_start
Line
Count
Source
49
6.96M
{
50
51
6.96M
  *n = e->node;
52
6.96M
  return ebitmap_startbit(e);
53
6.96M
}
Unexecuted instantiation: cil_build_ast.c:ebitmap_start
Unexecuted instantiation: cil_copy_ast.c:ebitmap_start
cil_find.c:ebitmap_start
Line
Count
Source
49
2.72M
{
50
51
2.72M
  *n = e->node;
52
2.72M
  return ebitmap_startbit(e);
53
2.72M
}
Unexecuted instantiation: cil_fqn.c:ebitmap_start
Unexecuted instantiation: cil_list.c:ebitmap_start
Unexecuted instantiation: cil_log.c:ebitmap_start
Unexecuted instantiation: cil_mem.c:ebitmap_start
Unexecuted instantiation: cil_parser.c:ebitmap_start
Unexecuted instantiation: cil_policy.c:ebitmap_start
cil_post.c:ebitmap_start
Line
Count
Source
49
13.6k
{
50
51
13.6k
  *n = e->node;
52
13.6k
  return ebitmap_startbit(e);
53
13.6k
}
Unexecuted instantiation: cil_resolve_ast.c:ebitmap_start
Unexecuted instantiation: cil_stack.c:ebitmap_start
Unexecuted instantiation: cil_strpool.c:ebitmap_start
Unexecuted instantiation: cil_symtab.c:ebitmap_start
Unexecuted instantiation: cil_tree.c:ebitmap_start
Unexecuted instantiation: cil_verify.c:ebitmap_start
Unexecuted instantiation: cil_write_ast.c:ebitmap_start
Unexecuted instantiation: cil_deny.c:ebitmap_start
Unexecuted instantiation: cil_lexer.c:ebitmap_start
Unexecuted instantiation: cil_reset_ast.c:ebitmap_start
54
55
static inline void ebitmap_init(ebitmap_t * e)
56
44.7M
{
57
44.7M
  memset(e, 0, sizeof(*e));
58
44.7M
}
Unexecuted instantiation: checkpolicy-fuzzer.c:ebitmap_init
module_compiler.c:ebitmap_init
Line
Count
Source
56
28.9k
{
57
28.9k
  memset(e, 0, sizeof(*e));
58
28.9k
}
Unexecuted instantiation: parse_util.c:ebitmap_init
policy_define.c:ebitmap_init
Line
Count
Source
56
109k
{
57
109k
  memset(e, 0, sizeof(*e));
58
109k
}
Unexecuted instantiation: y.tab.c:ebitmap_init
assertion.c:ebitmap_init
Line
Count
Source
56
431k
{
57
431k
  memset(e, 0, sizeof(*e));
58
431k
}
avrule_block.c:ebitmap_init
Line
Count
Source
56
2.77M
{
57
2.77M
  memset(e, 0, sizeof(*e));
58
2.77M
}
Unexecuted instantiation: avtab.c:ebitmap_init
Unexecuted instantiation: conditional.c:ebitmap_init
constraint.c:ebitmap_init
Line
Count
Source
56
5.91M
{
57
5.91M
  memset(e, 0, sizeof(*e));
58
5.91M
}
context.c:ebitmap_init
Line
Count
Source
56
12.0k
{
57
12.0k
  memset(e, 0, sizeof(*e));
58
12.0k
}
Unexecuted instantiation: context_record.c:ebitmap_init
ebitmap.c:ebitmap_init
Line
Count
Source
56
6.95M
{
57
6.95M
  memset(e, 0, sizeof(*e));
58
6.95M
}
expand.c:ebitmap_init
Line
Count
Source
56
1.01M
{
57
1.01M
  memset(e, 0, sizeof(*e));
58
1.01M
}
Unexecuted instantiation: hashtab.c:ebitmap_init
Unexecuted instantiation: hierarchy.c:ebitmap_init
Unexecuted instantiation: kernel_to_cil.c:ebitmap_init
Unexecuted instantiation: kernel_to_common.c:ebitmap_init
Unexecuted instantiation: kernel_to_conf.c:ebitmap_init
Unexecuted instantiation: link.c:ebitmap_init
Unexecuted instantiation: mls.c:ebitmap_init
Unexecuted instantiation: module_to_cil.c:ebitmap_init
Unexecuted instantiation: optimize.c:ebitmap_init
policydb.c:ebitmap_init
Line
Count
Source
56
14.5M
{
57
14.5M
  memset(e, 0, sizeof(*e));
58
14.5M
}
Unexecuted instantiation: policydb_public.c:ebitmap_init
policydb_validate.c:ebitmap_init
Line
Count
Source
56
34.0k
{
57
34.0k
  memset(e, 0, sizeof(*e));
58
34.0k
}
Unexecuted instantiation: services.c:ebitmap_init
Unexecuted instantiation: sidtab.c:ebitmap_init
Unexecuted instantiation: symtab.c:ebitmap_init
Unexecuted instantiation: util.c:ebitmap_init
write.c:ebitmap_init
Line
Count
Source
56
4.42k
{
57
4.42k
  memset(e, 0, sizeof(*e));
58
4.42k
}
Unexecuted instantiation: module.c:ebitmap_init
Unexecuted instantiation: policydb_convert.c:ebitmap_init
Unexecuted instantiation: binpolicy-fuzzer.c:ebitmap_init
Unexecuted instantiation: secilc-fuzzer.c:ebitmap_init
Unexecuted instantiation: cil.c:ebitmap_init
cil_binary.c:ebitmap_init
Line
Count
Source
56
9.34M
{
57
9.34M
  memset(e, 0, sizeof(*e));
58
9.34M
}
Unexecuted instantiation: cil_build_ast.c:ebitmap_init
Unexecuted instantiation: cil_copy_ast.c:ebitmap_init
cil_find.c:ebitmap_init
Line
Count
Source
56
2.05M
{
57
2.05M
  memset(e, 0, sizeof(*e));
58
2.05M
}
Unexecuted instantiation: cil_fqn.c:ebitmap_init
Unexecuted instantiation: cil_list.c:ebitmap_init
Unexecuted instantiation: cil_log.c:ebitmap_init
Unexecuted instantiation: cil_mem.c:ebitmap_init
Unexecuted instantiation: cil_parser.c:ebitmap_init
Unexecuted instantiation: cil_policy.c:ebitmap_init
cil_post.c:ebitmap_init
Line
Count
Source
56
1.28M
{
57
1.28M
  memset(e, 0, sizeof(*e));
58
1.28M
}
Unexecuted instantiation: cil_resolve_ast.c:ebitmap_init
Unexecuted instantiation: cil_stack.c:ebitmap_init
Unexecuted instantiation: cil_strpool.c:ebitmap_init
Unexecuted instantiation: cil_symtab.c:ebitmap_init
Unexecuted instantiation: cil_tree.c:ebitmap_init
Unexecuted instantiation: cil_verify.c:ebitmap_init
Unexecuted instantiation: cil_write_ast.c:ebitmap_init
cil_deny.c:ebitmap_init
Line
Count
Source
56
315k
{
57
315k
  memset(e, 0, sizeof(*e));
58
315k
}
Unexecuted instantiation: cil_lexer.c:ebitmap_init
Unexecuted instantiation: cil_reset_ast.c:ebitmap_init
59
60
static inline unsigned int ebitmap_next(ebitmap_node_t ** n, unsigned int bit)
61
696M
{
62
696M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
743k
    *n = (*n)->next;
64
743k
    return (*n)->startbit;
65
743k
  }
66
67
695M
  return (bit + 1);
68
696M
}
Unexecuted instantiation: checkpolicy-fuzzer.c:ebitmap_next
Unexecuted instantiation: module_compiler.c:ebitmap_next
Unexecuted instantiation: parse_util.c:ebitmap_next
policy_define.c:ebitmap_next
Line
Count
Source
61
6.78M
{
62
6.78M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
157
    *n = (*n)->next;
64
157
    return (*n)->startbit;
65
157
  }
66
67
6.78M
  return (bit + 1);
68
6.78M
}
Unexecuted instantiation: y.tab.c:ebitmap_next
Unexecuted instantiation: assertion.c:ebitmap_next
Unexecuted instantiation: avrule_block.c:ebitmap_next
Unexecuted instantiation: avtab.c:ebitmap_next
Unexecuted instantiation: conditional.c:ebitmap_next
Unexecuted instantiation: constraint.c:ebitmap_next
Unexecuted instantiation: context.c:ebitmap_next
Unexecuted instantiation: context_record.c:ebitmap_next
Unexecuted instantiation: ebitmap.c:ebitmap_next
expand.c:ebitmap_next
Line
Count
Source
61
10.9M
{
62
10.9M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
13.8k
    *n = (*n)->next;
64
13.8k
    return (*n)->startbit;
65
13.8k
  }
66
67
10.9M
  return (bit + 1);
68
10.9M
}
Unexecuted instantiation: hashtab.c:ebitmap_next
hierarchy.c:ebitmap_next
Line
Count
Source
61
147M
{
62
147M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
80.6k
    *n = (*n)->next;
64
80.6k
    return (*n)->startbit;
65
80.6k
  }
66
67
147M
  return (bit + 1);
68
147M
}
kernel_to_cil.c:ebitmap_next
Line
Count
Source
61
418k
{
62
418k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
0
    *n = (*n)->next;
64
0
    return (*n)->startbit;
65
0
  }
66
67
418k
  return (bit + 1);
68
418k
}
kernel_to_common.c:ebitmap_next
Line
Count
Source
61
966k
{
62
966k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
6
    *n = (*n)->next;
64
6
    return (*n)->startbit;
65
6
  }
66
67
966k
  return (bit + 1);
68
966k
}
kernel_to_conf.c:ebitmap_next
Line
Count
Source
61
418k
{
62
418k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
0
    *n = (*n)->next;
64
0
    return (*n)->startbit;
65
0
  }
66
67
418k
  return (bit + 1);
68
418k
}
link.c:ebitmap_next
Line
Count
Source
61
594k
{
62
594k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
500
    *n = (*n)->next;
64
500
    return (*n)->startbit;
65
500
  }
66
67
594k
  return (bit + 1);
68
594k
}
mls.c:ebitmap_next
Line
Count
Source
61
39.8k
{
62
39.8k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
0
    *n = (*n)->next;
64
0
    return (*n)->startbit;
65
0
  }
66
67
39.8k
  return (bit + 1);
68
39.8k
}
Unexecuted instantiation: module_to_cil.c:ebitmap_next
optimize.c:ebitmap_next
Line
Count
Source
61
25.0M
{
62
25.0M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
92.8k
    *n = (*n)->next;
64
92.8k
    return (*n)->startbit;
65
92.8k
  }
66
67
24.9M
  return (bit + 1);
68
25.0M
}
policydb.c:ebitmap_next
Line
Count
Source
61
36.1k
{
62
36.1k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
240
    *n = (*n)->next;
64
240
    return (*n)->startbit;
65
240
  }
66
67
35.9k
  return (bit + 1);
68
36.1k
}
Unexecuted instantiation: policydb_public.c:ebitmap_next
policydb_validate.c:ebitmap_next
Line
Count
Source
61
2.25k
{
62
2.25k
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
1
    *n = (*n)->next;
64
1
    return (*n)->startbit;
65
1
  }
66
67
2.25k
  return (bit + 1);
68
2.25k
}
Unexecuted instantiation: services.c:ebitmap_next
Unexecuted instantiation: sidtab.c:ebitmap_next
Unexecuted instantiation: symtab.c:ebitmap_next
Unexecuted instantiation: util.c:ebitmap_next
write.c:ebitmap_next
Line
Count
Source
61
64
{
62
64
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
0
    *n = (*n)->next;
64
0
    return (*n)->startbit;
65
0
  }
66
67
64
  return (bit + 1);
68
64
}
Unexecuted instantiation: module.c:ebitmap_next
Unexecuted instantiation: policydb_convert.c:ebitmap_next
Unexecuted instantiation: binpolicy-fuzzer.c:ebitmap_next
Unexecuted instantiation: secilc-fuzzer.c:ebitmap_next
Unexecuted instantiation: cil.c:ebitmap_next
cil_binary.c:ebitmap_next
Line
Count
Source
61
473M
{
62
473M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
536k
    *n = (*n)->next;
64
536k
    return (*n)->startbit;
65
536k
  }
66
67
472M
  return (bit + 1);
68
473M
}
Unexecuted instantiation: cil_build_ast.c:ebitmap_next
Unexecuted instantiation: cil_copy_ast.c:ebitmap_next
cil_find.c:ebitmap_next
Line
Count
Source
61
28.7M
{
62
28.7M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
6.94k
    *n = (*n)->next;
64
6.94k
    return (*n)->startbit;
65
6.94k
  }
66
67
28.7M
  return (bit + 1);
68
28.7M
}
Unexecuted instantiation: cil_fqn.c:ebitmap_next
Unexecuted instantiation: cil_list.c:ebitmap_next
Unexecuted instantiation: cil_log.c:ebitmap_next
Unexecuted instantiation: cil_mem.c:ebitmap_next
Unexecuted instantiation: cil_parser.c:ebitmap_next
Unexecuted instantiation: cil_policy.c:ebitmap_next
cil_post.c:ebitmap_next
Line
Count
Source
61
1.51M
{
62
1.51M
  if ((bit == ((*n)->startbit + MAPSIZE - 1)) && (*n)->next) {
63
11.6k
    *n = (*n)->next;
64
11.6k
    return (*n)->startbit;
65
11.6k
  }
66
67
1.50M
  return (bit + 1);
68
1.51M
}
Unexecuted instantiation: cil_resolve_ast.c:ebitmap_next
Unexecuted instantiation: cil_stack.c:ebitmap_next
Unexecuted instantiation: cil_strpool.c:ebitmap_next
Unexecuted instantiation: cil_symtab.c:ebitmap_next
Unexecuted instantiation: cil_tree.c:ebitmap_next
Unexecuted instantiation: cil_verify.c:ebitmap_next
Unexecuted instantiation: cil_write_ast.c:ebitmap_next
Unexecuted instantiation: cil_deny.c:ebitmap_next
Unexecuted instantiation: cil_lexer.c:ebitmap_next
Unexecuted instantiation: cil_reset_ast.c:ebitmap_next
69
70
static inline int ebitmap_node_get_bit(const ebitmap_node_t * n, unsigned int bit)
71
699M
{
72
699M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
45.1M
    return 1;
74
653M
  return 0;
75
699M
}
Unexecuted instantiation: checkpolicy-fuzzer.c:ebitmap_node_get_bit
Unexecuted instantiation: module_compiler.c:ebitmap_node_get_bit
Unexecuted instantiation: parse_util.c:ebitmap_node_get_bit
policy_define.c:ebitmap_node_get_bit
Line
Count
Source
71
6.78M
{
72
6.78M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
106k
    return 1;
74
6.67M
  return 0;
75
6.78M
}
Unexecuted instantiation: y.tab.c:ebitmap_node_get_bit
Unexecuted instantiation: assertion.c:ebitmap_node_get_bit
Unexecuted instantiation: avrule_block.c:ebitmap_node_get_bit
Unexecuted instantiation: avtab.c:ebitmap_node_get_bit
Unexecuted instantiation: conditional.c:ebitmap_node_get_bit
Unexecuted instantiation: constraint.c:ebitmap_node_get_bit
Unexecuted instantiation: context.c:ebitmap_node_get_bit
Unexecuted instantiation: context_record.c:ebitmap_node_get_bit
Unexecuted instantiation: ebitmap.c:ebitmap_node_get_bit
expand.c:ebitmap_node_get_bit
Line
Count
Source
71
10.9M
{
72
10.9M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
303k
    return 1;
74
10.6M
  return 0;
75
10.9M
}
Unexecuted instantiation: hashtab.c:ebitmap_node_get_bit
hierarchy.c:ebitmap_node_get_bit
Line
Count
Source
71
147M
{
72
147M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
5.16M
    return 1;
74
142M
  return 0;
75
147M
}
kernel_to_cil.c:ebitmap_node_get_bit
Line
Count
Source
71
418k
{
72
418k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
6.57k
    return 1;
74
412k
  return 0;
75
418k
}
kernel_to_common.c:ebitmap_node_get_bit
Line
Count
Source
71
966k
{
72
966k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
15.2k
    return 1;
74
951k
  return 0;
75
966k
}
kernel_to_conf.c:ebitmap_node_get_bit
Line
Count
Source
71
418k
{
72
418k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
6.57k
    return 1;
74
412k
  return 0;
75
418k
}
link.c:ebitmap_node_get_bit
Line
Count
Source
71
595k
{
72
595k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
23.7k
    return 1;
74
571k
  return 0;
75
595k
}
mls.c:ebitmap_node_get_bit
Line
Count
Source
71
39.9k
{
72
39.9k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
3.56k
    return 1;
74
36.3k
  return 0;
75
39.9k
}
Unexecuted instantiation: module_to_cil.c:ebitmap_node_get_bit
optimize.c:ebitmap_node_get_bit
Line
Count
Source
71
25.0M
{
72
25.0M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
646k
    return 1;
74
24.4M
  return 0;
75
25.0M
}
policydb.c:ebitmap_node_get_bit
Line
Count
Source
71
36.1k
{
72
36.1k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
10.6k
    return 1;
74
25.5k
  return 0;
75
36.1k
}
Unexecuted instantiation: policydb_public.c:ebitmap_node_get_bit
policydb_validate.c:ebitmap_node_get_bit
Line
Count
Source
71
2.29k
{
72
2.29k
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
159
    return 1;
74
2.13k
  return 0;
75
2.29k
}
Unexecuted instantiation: services.c:ebitmap_node_get_bit
Unexecuted instantiation: sidtab.c:ebitmap_node_get_bit
Unexecuted instantiation: symtab.c:ebitmap_node_get_bit
Unexecuted instantiation: util.c:ebitmap_node_get_bit
write.c:ebitmap_node_get_bit
Line
Count
Source
71
64
{
72
64
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
1
    return 1;
74
63
  return 0;
75
64
}
Unexecuted instantiation: module.c:ebitmap_node_get_bit
Unexecuted instantiation: policydb_convert.c:ebitmap_node_get_bit
Unexecuted instantiation: binpolicy-fuzzer.c:ebitmap_node_get_bit
Unexecuted instantiation: secilc-fuzzer.c:ebitmap_node_get_bit
Unexecuted instantiation: cil.c:ebitmap_node_get_bit
cil_binary.c:ebitmap_node_get_bit
Line
Count
Source
71
473M
{
72
473M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
35.4M
    return 1;
74
437M
  return 0;
75
473M
}
Unexecuted instantiation: cil_build_ast.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_copy_ast.c:ebitmap_node_get_bit
cil_find.c:ebitmap_node_get_bit
Line
Count
Source
71
31.4M
{
72
31.4M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
2.78M
    return 1;
74
28.6M
  return 0;
75
31.4M
}
Unexecuted instantiation: cil_fqn.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_list.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_log.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_mem.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_parser.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_policy.c:ebitmap_node_get_bit
cil_post.c:ebitmap_node_get_bit
Line
Count
Source
71
1.51M
{
72
1.51M
  if (n->map & (MAPBIT << (bit - n->startbit)))
73
599k
    return 1;
74
912k
  return 0;
75
1.51M
}
Unexecuted instantiation: cil_resolve_ast.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_stack.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_strpool.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_symtab.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_tree.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_verify.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_write_ast.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_deny.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_lexer.c:ebitmap_node_get_bit
Unexecuted instantiation: cil_reset_ast.c:ebitmap_node_get_bit
76
77
#define ebitmap_for_each_bit(e, n, bit) \
78
709M
  for (bit = ebitmap_start(e, &n); bit < ebitmap_length(e); bit = ebitmap_next(&n, bit)) \
79
80
#define ebitmap_for_each_positive_bit(e, n, bit) \
81
698M
  ebitmap_for_each_bit(e, n, bit) if (ebitmap_node_get_bit(n, bit)) \
82
83
extern int ebitmap_cmp(const ebitmap_t * e1, const ebitmap_t * e2);
84
extern int ebitmap_or(ebitmap_t * dst, const ebitmap_t * e1, const ebitmap_t * e2);
85
extern int ebitmap_union(ebitmap_t * dst, const ebitmap_t * e1);
86
extern int ebitmap_and(ebitmap_t *dst, const ebitmap_t *e1, const ebitmap_t *e2);
87
extern int ebitmap_xor(ebitmap_t *dst, const ebitmap_t *e1, const ebitmap_t *e2);
88
extern int ebitmap_not(ebitmap_t *dst, const ebitmap_t *e1, unsigned int maxbit);
89
extern int ebitmap_andnot(ebitmap_t *dst, const ebitmap_t *e1, const ebitmap_t *e2, unsigned int maxbit);
90
extern unsigned int ebitmap_cardinality(const ebitmap_t *e1);
91
extern int ebitmap_hamming_distance(const ebitmap_t * e1, const ebitmap_t * e2);
92
extern int ebitmap_cpy(ebitmap_t * dst, const ebitmap_t * src);
93
extern int ebitmap_contains(const ebitmap_t * e1, const ebitmap_t * e2);
94
extern int ebitmap_match_any(const ebitmap_t *e1, const ebitmap_t *e2);
95
extern int ebitmap_get_bit(const ebitmap_t * e, unsigned int bit);
96
extern int ebitmap_set_bit(ebitmap_t * e, unsigned int bit, int value);
97
extern int ebitmap_init_range(ebitmap_t * e, unsigned int minbit, unsigned int maxbit);
98
extern unsigned int ebitmap_highest_set_bit(const ebitmap_t * e);
99
extern void ebitmap_destroy(ebitmap_t * e);
100
extern int ebitmap_read(ebitmap_t * e, void *fp);
101
102
#ifdef __cplusplus
103
}
104
#endif
105
106
#endif        /* _EBITMAP_H_ */
107
108
/* FLASK */