/src/binutils-gdb/libctf/ctf-inlines.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* Inline functions. |
2 | | Copyright (C) 2020-2025 Free Software Foundation, Inc. |
3 | | |
4 | | This file is part of libctf. |
5 | | |
6 | | libctf is free software; you can redistribute it and/or modify it under |
7 | | the terms of the GNU General Public License as published by the Free |
8 | | Software Foundation; either version 3, or (at your option) any later |
9 | | version. |
10 | | |
11 | | This program is distributed in the hope that it will be useful, but |
12 | | WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
14 | | See the GNU General Public License for more details. |
15 | | |
16 | | You should have received a copy of the GNU General Public License |
17 | | along with this program; see the file COPYING. If not see |
18 | | <http://www.gnu.org/licenses/>. */ |
19 | | |
20 | | #ifndef _CTF_INLINES_H |
21 | | #define _CTF_INLINES_H |
22 | | |
23 | | #ifdef __cplusplus |
24 | | extern "C" |
25 | | { |
26 | | #endif |
27 | | |
28 | | #include "config.h" |
29 | | |
30 | | #ifndef _libctf_malloc_ |
31 | | #error "ctf-inlines.h" should not be included directly: include "ctf-impl.h". |
32 | | #endif |
33 | | |
34 | | static inline ssize_t |
35 | | ctf_get_ctt_size (const ctf_dict_t *fp, |
36 | | const ctf_type_t *tp, |
37 | | ssize_t *sizep, |
38 | | ssize_t *incrementp) |
39 | 0 | { |
40 | 0 | return (fp->ctf_dictops->ctfo_get_ctt_size (fp, tp, sizep, incrementp)); |
41 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_get_ctt_size Unexecuted instantiation: ctf-dump.c:ctf_get_ctt_size Unexecuted instantiation: ctf-error.c:ctf_get_ctt_size Unexecuted instantiation: ctf-hash.c:ctf_get_ctt_size Unexecuted instantiation: ctf-labels.c:ctf_get_ctt_size Unexecuted instantiation: ctf-lookup.c:ctf_get_ctt_size Unexecuted instantiation: ctf-open.c:ctf_get_ctt_size Unexecuted instantiation: ctf-serialize.c:ctf_get_ctt_size Unexecuted instantiation: ctf-string.c:ctf_get_ctt_size Unexecuted instantiation: ctf-subr.c:ctf_get_ctt_size Unexecuted instantiation: ctf-types.c:ctf_get_ctt_size Unexecuted instantiation: ctf-util.c:ctf_get_ctt_size Unexecuted instantiation: ctf-open-bfd.c:ctf_get_ctt_size Unexecuted instantiation: ctf-create.c:ctf_get_ctt_size Unexecuted instantiation: ctf-decl.c:ctf_get_ctt_size Unexecuted instantiation: ctf-dedup.c:ctf_get_ctt_size Unexecuted instantiation: ctf-link.c:ctf_get_ctt_size Unexecuted instantiation: ctf-sha1.c:ctf_get_ctt_size |
42 | | |
43 | | static inline int |
44 | | ctf_forwardable_kind (int kind) |
45 | 0 | { |
46 | 0 | return (kind == CTF_K_STRUCT || kind == CTF_K_UNION || kind == CTF_K_ENUM); |
47 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_forwardable_kind Unexecuted instantiation: ctf-dump.c:ctf_forwardable_kind Unexecuted instantiation: ctf-error.c:ctf_forwardable_kind Unexecuted instantiation: ctf-hash.c:ctf_forwardable_kind Unexecuted instantiation: ctf-labels.c:ctf_forwardable_kind Unexecuted instantiation: ctf-lookup.c:ctf_forwardable_kind Unexecuted instantiation: ctf-open.c:ctf_forwardable_kind Unexecuted instantiation: ctf-serialize.c:ctf_forwardable_kind Unexecuted instantiation: ctf-string.c:ctf_forwardable_kind Unexecuted instantiation: ctf-subr.c:ctf_forwardable_kind Unexecuted instantiation: ctf-types.c:ctf_forwardable_kind Unexecuted instantiation: ctf-util.c:ctf_forwardable_kind Unexecuted instantiation: ctf-open-bfd.c:ctf_forwardable_kind Unexecuted instantiation: ctf-create.c:ctf_forwardable_kind Unexecuted instantiation: ctf-decl.c:ctf_forwardable_kind Unexecuted instantiation: ctf-dedup.c:ctf_forwardable_kind Unexecuted instantiation: ctf-link.c:ctf_forwardable_kind Unexecuted instantiation: ctf-sha1.c:ctf_forwardable_kind |
48 | | |
49 | | static inline int |
50 | | ctf_dynhash_cnext_sorted (ctf_dynhash_t *h, ctf_next_t **i, const void **key, |
51 | | const void **value, ctf_hash_sort_f sort_fun, |
52 | | void *sort_arg) |
53 | 0 | { |
54 | 0 | return ctf_dynhash_next_sorted (h, i, (void **) key, (void **) value, |
55 | 0 | sort_fun, sort_arg); |
56 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-dump.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-error.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-hash.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-labels.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-lookup.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-open.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-serialize.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-string.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-subr.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-types.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-util.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-open-bfd.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-create.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-decl.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-dedup.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-link.c:ctf_dynhash_cnext_sorted Unexecuted instantiation: ctf-sha1.c:ctf_dynhash_cnext_sorted |
57 | | |
58 | | static inline int |
59 | | ctf_dynhash_cnext (ctf_dynhash_t *h, ctf_next_t **it, |
60 | | const void **key, const void **value) |
61 | 0 | { |
62 | 0 | return ctf_dynhash_next (h, it, (void **) key, (void **) value); |
63 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-dump.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-error.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-hash.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-labels.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-lookup.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-open.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-serialize.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-string.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-subr.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-types.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-util.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-open-bfd.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-create.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-decl.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-dedup.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-link.c:ctf_dynhash_cnext Unexecuted instantiation: ctf-sha1.c:ctf_dynhash_cnext |
64 | | |
65 | | static inline int |
66 | | ctf_dynhash_cinsert (ctf_dynhash_t *h, const void *k, const void *v) |
67 | 0 | { |
68 | 0 | return ctf_dynhash_insert (h, (void *) k, (void *) v); |
69 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-dump.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-error.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-hash.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-labels.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-lookup.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-open.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-serialize.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-string.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-subr.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-types.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-util.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-open-bfd.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-create.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-decl.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-dedup.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-link.c:ctf_dynhash_cinsert Unexecuted instantiation: ctf-sha1.c:ctf_dynhash_cinsert |
70 | | |
71 | | static inline int |
72 | | ctf_dynset_cnext (ctf_dynset_t *h, ctf_next_t **it, const void **key) |
73 | 0 | { |
74 | 0 | return ctf_dynset_next (h, it, (void **) key); |
75 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_dynset_cnext Unexecuted instantiation: ctf-dump.c:ctf_dynset_cnext Unexecuted instantiation: ctf-error.c:ctf_dynset_cnext Unexecuted instantiation: ctf-hash.c:ctf_dynset_cnext Unexecuted instantiation: ctf-labels.c:ctf_dynset_cnext Unexecuted instantiation: ctf-lookup.c:ctf_dynset_cnext Unexecuted instantiation: ctf-open.c:ctf_dynset_cnext Unexecuted instantiation: ctf-serialize.c:ctf_dynset_cnext Unexecuted instantiation: ctf-string.c:ctf_dynset_cnext Unexecuted instantiation: ctf-subr.c:ctf_dynset_cnext Unexecuted instantiation: ctf-types.c:ctf_dynset_cnext Unexecuted instantiation: ctf-util.c:ctf_dynset_cnext Unexecuted instantiation: ctf-open-bfd.c:ctf_dynset_cnext Unexecuted instantiation: ctf-create.c:ctf_dynset_cnext Unexecuted instantiation: ctf-decl.c:ctf_dynset_cnext Unexecuted instantiation: ctf-dedup.c:ctf_dynset_cnext Unexecuted instantiation: ctf-link.c:ctf_dynset_cnext Unexecuted instantiation: ctf-sha1.c:ctf_dynset_cnext |
76 | | |
77 | | static inline int |
78 | | ctf_dynset_cinsert (ctf_dynset_t *h, const void *k) |
79 | 0 | { |
80 | 0 | return ctf_dynset_insert (h, (void *) k); |
81 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-dump.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-error.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-hash.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-labels.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-lookup.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-open.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-serialize.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-string.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-subr.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-types.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-util.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-open-bfd.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-create.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-decl.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-dedup.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-link.c:ctf_dynset_cinsert Unexecuted instantiation: ctf-sha1.c:ctf_dynset_cinsert |
82 | | |
83 | | static inline int |
84 | | ctf_assert_internal (ctf_dict_t *fp, const char *file, size_t line, |
85 | | const char *exprstr, int expr) |
86 | 0 | { |
87 | 0 | if (_libctf_unlikely_ (!expr)) |
88 | 0 | ctf_assert_fail_internal (fp, file, line, exprstr); |
89 | |
|
90 | 0 | return expr; |
91 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_assert_internal Unexecuted instantiation: ctf-dump.c:ctf_assert_internal Unexecuted instantiation: ctf-error.c:ctf_assert_internal Unexecuted instantiation: ctf-hash.c:ctf_assert_internal Unexecuted instantiation: ctf-labels.c:ctf_assert_internal Unexecuted instantiation: ctf-lookup.c:ctf_assert_internal Unexecuted instantiation: ctf-open.c:ctf_assert_internal Unexecuted instantiation: ctf-serialize.c:ctf_assert_internal Unexecuted instantiation: ctf-string.c:ctf_assert_internal Unexecuted instantiation: ctf-subr.c:ctf_assert_internal Unexecuted instantiation: ctf-types.c:ctf_assert_internal Unexecuted instantiation: ctf-util.c:ctf_assert_internal Unexecuted instantiation: ctf-open-bfd.c:ctf_assert_internal Unexecuted instantiation: ctf-create.c:ctf_assert_internal Unexecuted instantiation: ctf-decl.c:ctf_assert_internal Unexecuted instantiation: ctf-dedup.c:ctf_assert_internal Unexecuted instantiation: ctf-link.c:ctf_assert_internal Unexecuted instantiation: ctf-sha1.c:ctf_assert_internal |
92 | | |
93 | | static inline int |
94 | | ctf_set_errno (ctf_dict_t *fp, int err) |
95 | 0 | { |
96 | 0 | fp->ctf_errno = err; |
97 | | /* Don't rely on CTF_ERR here as it will not properly sign extend on 64-bit |
98 | | Windows ABI. */ |
99 | 0 | return -1; |
100 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_set_errno Unexecuted instantiation: ctf-dump.c:ctf_set_errno Unexecuted instantiation: ctf-error.c:ctf_set_errno Unexecuted instantiation: ctf-hash.c:ctf_set_errno Unexecuted instantiation: ctf-labels.c:ctf_set_errno Unexecuted instantiation: ctf-lookup.c:ctf_set_errno Unexecuted instantiation: ctf-open.c:ctf_set_errno Unexecuted instantiation: ctf-serialize.c:ctf_set_errno Unexecuted instantiation: ctf-string.c:ctf_set_errno Unexecuted instantiation: ctf-subr.c:ctf_set_errno Unexecuted instantiation: ctf-types.c:ctf_set_errno Unexecuted instantiation: ctf-util.c:ctf_set_errno Unexecuted instantiation: ctf-open-bfd.c:ctf_set_errno Unexecuted instantiation: ctf-create.c:ctf_set_errno Unexecuted instantiation: ctf-decl.c:ctf_set_errno Unexecuted instantiation: ctf-dedup.c:ctf_set_errno Unexecuted instantiation: ctf-link.c:ctf_set_errno Unexecuted instantiation: ctf-sha1.c:ctf_set_errno |
101 | | |
102 | | static inline ctf_id_t |
103 | | ctf_set_typed_errno (ctf_dict_t *fp, int err) |
104 | 0 | { |
105 | 0 | fp->ctf_errno = err; |
106 | 0 | return CTF_ERR; |
107 | 0 | } Unexecuted instantiation: ctf-archive.c:ctf_set_typed_errno Unexecuted instantiation: ctf-dump.c:ctf_set_typed_errno Unexecuted instantiation: ctf-error.c:ctf_set_typed_errno Unexecuted instantiation: ctf-hash.c:ctf_set_typed_errno Unexecuted instantiation: ctf-labels.c:ctf_set_typed_errno Unexecuted instantiation: ctf-lookup.c:ctf_set_typed_errno Unexecuted instantiation: ctf-open.c:ctf_set_typed_errno Unexecuted instantiation: ctf-serialize.c:ctf_set_typed_errno Unexecuted instantiation: ctf-string.c:ctf_set_typed_errno Unexecuted instantiation: ctf-subr.c:ctf_set_typed_errno Unexecuted instantiation: ctf-types.c:ctf_set_typed_errno Unexecuted instantiation: ctf-util.c:ctf_set_typed_errno Unexecuted instantiation: ctf-open-bfd.c:ctf_set_typed_errno Unexecuted instantiation: ctf-create.c:ctf_set_typed_errno Unexecuted instantiation: ctf-decl.c:ctf_set_typed_errno Unexecuted instantiation: ctf-dedup.c:ctf_set_typed_errno Unexecuted instantiation: ctf-link.c:ctf_set_typed_errno Unexecuted instantiation: ctf-sha1.c:ctf_set_typed_errno |
108 | | |
109 | | |
110 | | #ifdef __cplusplus |
111 | | } |
112 | | #endif |
113 | | |
114 | | #endif /* _CTF_INLINES_H */ |