ChangeLog revision 1.1.1.5 1 1.1.1.5 christos 2025-07-13 Nick Clifton <nickc (a] redhat.com>
2 1.1.1.5 christos
3 1.1.1.5 christos * 2.45 Branch point.
4 1.1.1.5 christos
5 1.1.1.5 christos 2025-01-19 Nick Clifton <nickc (a] redhat.com>
6 1.1.1.5 christos
7 1.1.1.5 christos * 2.44 Branch point.
8 1.1.1.5 christos
9 1.1.1.4 christos 2024-07-20 Nick Clifton <nickc (a] redhat.com>
10 1.1.1.4 christos
11 1.1.1.4 christos * 2.43 branch point.
12 1.1.1.4 christos
13 1.1.1.3 christos 2024-01-15 Nick Clifton <nickc (a] redhat.com>
14 1.1.1.3 christos
15 1.1.1.3 christos * 2.42 branch point.
16 1.1.1.3 christos
17 1.1.1.3 christos 2023-11-15 Arsen Arsenovi <arsen (a] aarsen.me>
18 1.1.1.3 christos
19 1.1.1.3 christos * Makefile.am (SUBDIRS): Define to empty to suppress a check in
20 1.1.1.3 christos Automake.
21 1.1.1.3 christos * Makefile.in: Regenerate.
22 1.1.1.3 christos * configure.ac (CTF_LIBADD): Use LTLIBINTL rather than LIBINTL.
23 1.1.1.3 christos * aclocal.m4: Regenerate.
24 1.1.1.3 christos * configure: Regenerate.
25 1.1.1.3 christos
26 1.1.1.3 christos 2023-07-03 Nick Clifton <nickc (a] redhat.com>
27 1.1.1.3 christos
28 1.1.1.3 christos 2.41 Branch Point.
29 1.1.1.3 christos
30 1.1.1.3 christos 2022-12-31 Nick Clifton <nickc (a] redhat.com>
31 1.1.1.3 christos
32 1.1.1.3 christos * 2.40 branch created.
33 1.1.1.3 christos
34 1.1.1.2 christos 2022-07-08 Nick Clifton <nickc (a] redhat.com>
35 1.1 christos
36 1.1.1.2 christos * 2.39 branch created.
37 1.1 christos
38 1.1.1.2 christos 2022-01-22 Nick Clifton <nickc (a] redhat.com>
39 1.1 christos
40 1.1.1.2 christos * 2.38 release branch created.
41 1.1 christos
42 1.1.1.2 christos 2021-11-08 Nick Alcock <nick.alcock (a] oracle.com>
43 1.1 christos
44 1.1.1.2 christos * doc/ctf-spec.texi: New file.
45 1.1.1.2 christos * configure.ac (MAKEINFO): Add.
46 1.1.1.2 christos (BUILD_INFO): Likewise.
47 1.1.1.2 christos (AC_CONFIG_FILES) [doc/Makefile]: Add.
48 1.1.1.2 christos * Makefile.am [BUILD_INFO] (SUBDIRS): Add doc/.
49 1.1.1.2 christos * doc/Makefile.am: New file.
50 1.1.1.2 christos * doc/Makefile.in: Likewise.
51 1.1.1.2 christos * configure: Regenerated.
52 1.1.1.2 christos * Makefile.in: Likewise.
53 1.1 christos
54 1.1.1.2 christos 2021-10-25 Nick Alcock <nick.alcock (a] oracle.com>
55 1.1 christos
56 1.1.1.2 christos * ctf-types.c (ctf_type_rvisit): Handle nonrepresentable types.
57 1.1 christos
58 1.1.1.2 christos 2021-10-25 Nick Alcock <nick.alcock (a] oracle.com>
59 1.1 christos
60 1.1.1.2 christos * ctf-dump.c (ctf_dump_type): Do not abort on error.
61 1.1 christos
62 1.1.1.2 christos 2021-09-27 Nick Alcock <nick.alcock (a] oracle.com>
63 1.1.1.2 christos
64 1.1.1.2 christos * ctf-lookup.c (ctf_lookup_by_name_internal): Fix pptrtab bounds.
65 1.1.1.2 christos * testsuite/libctf-writable/pptrtab-writable-page-deep-lookup.*:
66 1.1.1.2 christos New test.
67 1.1.1.2 christos
68 1.1.1.2 christos 2021-09-27 Nick Alcock <nick.alcock (a] oracle.com>
69 1.1.1.2 christos
70 1.1.1.2 christos * testsuite/libctf-lookup/enum-symbol.c: Remove unused label.
71 1.1.1.2 christos * testsuite/libctf-lookup/conflicting-type-syms.c: Remove unused
72 1.1.1.2 christos variables.
73 1.1.1.2 christos * testsuite/libctf-regression/pptrtab.c: Likewise.
74 1.1.1.2 christos * testsuite/libctf-regression/type-add-unnamed-struct.c: Likewise.
75 1.1.1.2 christos * testsuite/libctf-writable/pptrtab.c: Likewise.
76 1.1.1.2 christos * testsuite/libctf-writable/reserialize-strtab-corruption.c:
77 1.1.1.2 christos Likewise.
78 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld-r.c: Fix
79 1.1.1.2 christos format string.
80 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld.c:
81 1.1.1.2 christos Likewise.
82 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld.lk: Adjust.
83 1.1.1.2 christos * testsuite/libctf-writable/symtypetab-nonlinker-writeout.c: Fix
84 1.1.1.2 christos initializer.
85 1.1.1.2 christos
86 1.1.1.2 christos 2021-09-27 Nick Alcock <nick.alcock (a] oracle.com>
87 1.1.1.2 christos
88 1.1.1.2 christos * ctf-open.c (ctf_bufopen_internal): Don't complain about corrupt
89 1.1.1.2 christos function index symtypetab sections if this is an old-format
90 1.1.1.2 christos function symtypetab section (which should be ignored in any case).
91 1.1.1.2 christos Fix bad grammar.
92 1.1 christos
93 1.1.1.2 christos 2021-09-27 Nick Alcock <nick.alcock (a] oracle.com>
94 1.1 christos
95 1.1.1.2 christos * configure: Regenerate.
96 1.1 christos * Makefile.in: Regenerate.
97 1.1 christos
98 1.1.1.2 christos 2021-09-27 Nick Alcock <nick.alcock (a] oracle.com>
99 1.1 christos
100 1.1.1.2 christos PR libctf/27967
101 1.1.1.2 christos * configure.ac (VERSION_FLAGS): Replace with...
102 1.1.1.2 christos (ac_cv_libctf_version_script): ... this multiple test.
103 1.1.1.2 christos (VERSION_FLAGS_NOBFD): Substitute this too.
104 1.1.1.2 christos * Makefile.am (libctf_nobfd_la_LDFLAGS): Use it. Split out...
105 1.1.1.2 christos (libctf_ldflags_nover): ... non-versioning flags here.
106 1.1.1.2 christos (libctf_la_LDFLAGS): Use it.
107 1.1.1.2 christos * libctf.ver: Give every symbol not in libctf-nobfd a comment on
108 1.1.1.2 christos the same line noting as much.
109 1.1.1.2 christos
110 1.1.1.2 christos 2021-09-27 Nick Alcock <nick.alcock (a] oracle.com>
111 1.1.1.2 christos
112 1.1.1.2 christos PR libctf/27360
113 1.1.1.2 christos * Makefile.am (libctf_la_LIBADD): Link against libiberty
114 1.1.1.2 christos before pulling in libbfd.la or pulling in libctf-nobfd.la.
115 1.1.1.2 christos * Makefile.in: Regenerate.
116 1.1 christos
117 1.1.1.2 christos 2021-07-03 Nick Clifton <nickc (a] redhat.com>
118 1.1 christos
119 1.1.1.2 christos * 2.37 release branch created.
120 1.1 christos
121 1.1.1.2 christos 2021-05-09 Alan Modra <amodra (a] gmail.com>
122 1.1 christos
123 1.1.1.2 christos * ctf-impl.h (ctf_dynset_eq_string): Don't declare.
124 1.1.1.2 christos * ctf-hash.c (ctf_dynset_eq_string): Delete function.
125 1.1.1.2 christos * ctf-dedup.c (make_set_element): Use htab_eq_string.
126 1.1.1.2 christos (ctf_dedup_atoms_init, ADD_CITER, ctf_dedup_init): Likewise.
127 1.1.1.2 christos (ctf_dedup_conflictify_unshared): Likewise.
128 1.1.1.2 christos (ctf_dedup_walk_output_mapping): Likewise.
129 1.1 christos
130 1.1.1.2 christos 2021-05-06 Nick Alcock <nick.alcock (a] oracle.com>
131 1.1 christos
132 1.1.1.2 christos * testsuite/lib/ctf-lib.exp: Use -gctf, not -gt.
133 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld-r.lk:
134 1.1.1.2 christos Hidden symbols now get into the symtypetab anyway.
135 1.1.1.2 christos
136 1.1.1.2 christos 2021-05-06 Nick Alcock <nick.alcock (a] oracle.com>
137 1.1.1.2 christos
138 1.1.1.2 christos * ctf-open.c (init_types): Unknown types may have names.
139 1.1.1.2 christos * ctf-types.c (ctf_type_resolve): CTF_K_UNKNOWN is as
140 1.1.1.2 christos non-representable as type ID 0.
141 1.1.1.2 christos (ctf_type_aname): Print unknown types.
142 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_hash_type): Do not early-exit for
143 1.1.1.2 christos CTF_K_UNKNOWN types: they have real hash values now.
144 1.1.1.2 christos (ctf_dedup_rwalk_one_output_mapping): Treat CTF_K_UNKNOWN types
145 1.1.1.2 christos like other types with no referents: call the callback and do not
146 1.1.1.2 christos skip them.
147 1.1.1.2 christos (ctf_dedup_emit_type): Emit via...
148 1.1.1.2 christos * ctf-create.c (ctf_add_unknown): ... this new function.
149 1.1.1.2 christos * libctf.ver (LIBCTF_1.2): Add it.
150 1.1 christos
151 1.1.1.2 christos 2021-03-25 Nick Alcock <nick.alcock (a] oracle.com>
152 1.1 christos
153 1.1.1.2 christos * configure.ac: Check for dlsym, not dlopen.
154 1.1.1.2 christos * configure: Regenerate.
155 1.1 christos
156 1.1.1.2 christos 2021-03-25 Nick Alcock <nick.alcock (a] oracle.com>
157 1.1 christos
158 1.1.1.2 christos * testsuite/libctf-writable/symtypetab-nonlinker-writeout.c: Don't
159 1.1.1.2 christos leak buf.
160 1.1 christos
161 1.1.1.2 christos 2021-03-25 Nick Alcock <nick.alcock (a] oracle.com>
162 1.1 christos
163 1.1.1.2 christos PR libctf/27628
164 1.1.1.2 christos * ctf-lookup.c (isqualifier): Don't dereference out-of-bounds
165 1.1.1.2 christos qhash values.
166 1.1 christos
167 1.1.1.2 christos 2021-03-25 Nick Alcock <nick.alcock (a] oracle.com>
168 1.1 christos
169 1.1.1.2 christos * ctf-open-bfd.c (ctf_bfdopen_ctfsect): Initialize debugging.
170 1.1 christos
171 1.1.1.2 christos 2021-03-25 Nick Alcock <nick.alcock (a] oracle.com>
172 1.1 christos
173 1.1.1.2 christos PR libctf/27628
174 1.1.1.2 christos * ctf-serialize.c (ctf_emit_type_sect): Allow for a NULL vlen in
175 1.1.1.2 christos CTF_K_FUNCTION types.
176 1.1 christos
177 1.1.1.2 christos 2021-03-25 Nick Alcock <nick.alcock (a] oracle.com>
178 1.1 christos
179 1.1.1.2 christos * ctf-dump.c (ctf_dump_format_type): Don't emit size or alignment
180 1.1.1.2 christos on error.
181 1.1 christos
182 1.1.1.2 christos 2021-03-21 Alan Modra <amodra (a] gmail.com>
183 1.1 christos
184 1.1.1.2 christos * ctf-impl.h: Include string.h.
185 1.1 christos
186 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
187 1.1 christos
188 1.1.1.2 christos * ctf-types.c (ctf_type_encoding): Support, after a fashion, for enums.
189 1.1.1.2 christos * ctf-dump.c (ctf_dump_format_type): Do not report enums' degenerate
190 1.1.1.2 christos encoding.
191 1.1 christos
192 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
193 1.1 christos
194 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_rhash_type): Report errors on the input
195 1.1.1.2 christos dict properly.
196 1.1.1.2 christos * ctf-open.c (ctf_bufopen_internal): Report errors initializing
197 1.1.1.2 christos the atoms table.
198 1.1 christos
199 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
200 1.1 christos
201 1.1.1.2 christos * ctf-impl.h (ctf_next_t) <ctn_tp>: New.
202 1.1.1.2 christos <u.ctn_mp>: Remove.
203 1.1.1.2 christos <u.ctn_lmp>: Remove.
204 1.1.1.2 christos <u.ctn_vlen>: New.
205 1.1.1.2 christos * ctf-types.c (ctf_struct_member): New.
206 1.1.1.2 christos (ctf_member_next): Use it, dropping separate large/small code paths.
207 1.1.1.2 christos (ctf_type_align): Likewise.
208 1.1.1.2 christos (ctf_member_info): Likewise.
209 1.1.1.2 christos (ctf_type_rvisit): Likewise.
210 1.1 christos
211 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
212 1.1 christos
213 1.1.1.2 christos * ctf-impl.h (ctf_dtdef_t) <dtu_members>: Remove.
214 1.1.1.2 christos <dtd_u>: Likewise.
215 1.1.1.2 christos (ctf_dmdef_t): Remove.
216 1.1.1.2 christos (struct ctf_next) <u.ctn_dmd>: Remove.
217 1.1.1.2 christos * ctf-create.c (INITIAL_VLEN): New, more-or-less arbitrary initial
218 1.1.1.2 christos vlen size.
219 1.1.1.2 christos (ctf_add_enum): Use it.
220 1.1.1.2 christos (ctf_dtd_delete): Do not free the (removed) dmd; remove string
221 1.1.1.2 christos refs from the vlen on struct deletion.
222 1.1.1.2 christos (ctf_add_struct_sized): Populate the vlen: do it by hand if
223 1.1.1.2 christos promoting forwards. Always populate the full-size
224 1.1.1.2 christos lsizehi/lsizelo members.
225 1.1 christos (ctf_add_union_sized): Likewise.
226 1.1.1.2 christos (ctf_add_member_offset): Set up the vlen rather than the dmd.
227 1.1.1.2 christos Expand it as needed, repointing string refs via
228 1.1.1.2 christos ctf_str_move_pending. Add the member names as pending strings.
229 1.1.1.2 christos Always populate the full-size lsizehi/lsizelo members.
230 1.1.1.2 christos (membadd): Remove, folding back into...
231 1.1.1.2 christos (ctf_add_type_internal): ... here, adding via an ordinary
232 1.1.1.2 christos ctf_add_struct_sized and _next iteration rather than doing
233 1.1.1.2 christos everything by hand.
234 1.1.1.2 christos * ctf-serialize.c (ctf_copy_smembers): Remove this...
235 1.1.1.2 christos (ctf_copy_lmembers): ... and this...
236 1.1.1.2 christos (ctf_emit_type_sect): ... folding into here. Figure out if a
237 1.1.1.2 christos ctf_stype_t is needed here, not in ctf_add_*_sized.
238 1.1.1.2 christos (ctf_type_sect_size): Figure out the ctf_stype_t stuff the same
239 1.1.1.2 christos way here.
240 1.1.1.2 christos * ctf-types.c (ctf_member_next): Remove the dmd path and always
241 1.1.1.2 christos use the vlen. Force large-structure usage for dynamic types.
242 1.1.1.2 christos (ctf_type_align): Likewise.
243 1.1.1.2 christos (ctf_member_info): Likewise.
244 1.1 christos (ctf_type_rvisit): Likewise.
245 1.1.1.2 christos * testsuite/libctf-regression/type-add-unnamed-struct-ctf.c: Add a
246 1.1.1.2 christos self-referential type to this test.
247 1.1.1.2 christos * testsuite/libctf-regression/type-add-unnamed-struct.c: Adjusted
248 1.1.1.2 christos accordingly.
249 1.1.1.2 christos * testsuite/libctf-regression/type-add-unnamed-struct.lk: Likewise.
250 1.1.1.2 christos
251 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
252 1.1.1.2 christos
253 1.1.1.2 christos * ctf-impl.h (ctf_dtdef_t) <dtd_vlen_alloc>: New.
254 1.1.1.2 christos (ctf_str_move_pending): Declare.
255 1.1.1.2 christos * ctf-string.c (ctf_str_add_ref_internal): Fix error return.
256 1.1.1.2 christos (ctf_str_move_pending): New.
257 1.1.1.2 christos * ctf-create.c (ctf_grow_vlen): New.
258 1.1.1.2 christos (ctf_dtd_delete): Zero out the vlen_alloc after free. Free the
259 1.1.1.2 christos vlen later: iterate over it and free enum name refs first.
260 1.1.1.2 christos (ctf_add_generic): Populate dtd_vlen_alloc from vlen.
261 1.1.1.2 christos (ctf_add_enum): populate the vlen; do it by hand if promoting
262 1.1.1.2 christos forwards.
263 1.1.1.2 christos (ctf_add_enumerator): Set up the vlen rather than the dmd. Expand
264 1.1.1.2 christos it as needed, repointing string refs via ctf_str_move_pending. Add
265 1.1.1.2 christos the enumerand names as pending strings.
266 1.1.1.2 christos * ctf-serialize.c (ctf_copy_emembers): Remove.
267 1.1.1.2 christos (ctf_emit_type_sect): Copy the vlen into place and ref the
268 1.1.1.2 christos strings.
269 1.1.1.2 christos * ctf-types.c (ctf_enum_next): The dynamic portion now uses
270 1.1.1.2 christos the same code as the non-dynamic.
271 1.1 christos (ctf_enum_name): Likewise.
272 1.1 christos (ctf_enum_value): Likewise.
273 1.1.1.2 christos * testsuite/libctf-lookup/enum-many-ctf.c: New test.
274 1.1.1.2 christos * testsuite/libctf-lookup/enum-many.lk: New test.
275 1.1 christos
276 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
277 1.1 christos
278 1.1.1.2 christos * ctf-hash.c (ctf_dynset_elements): New.
279 1.1.1.2 christos * ctf-impl.h (ctf_dynset_elements): Declare it.
280 1.1.1.2 christos (ctf_str_add_pending): Likewise.
281 1.1.1.2 christos (ctf_dict_t) <ctf_str_pending_ref>: New, set of refs that must be
282 1.1.1.2 christos added during serialization.
283 1.1.1.2 christos * ctf-string.c (ctf_str_create_atoms): Initialize it.
284 1.1.1.2 christos (CTF_STR_ADD_REF): New flag.
285 1.1.1.2 christos (CTF_STR_MAKE_PROVISIONAL): Likewise.
286 1.1.1.2 christos (CTF_STR_PENDING_REF): Likewise.
287 1.1.1.2 christos (ctf_str_add_ref_internal): Take a flags word rather than int
288 1.1.1.2 christos params. Populate, and clear out, ctf_str_pending_ref.
289 1.1 christos (ctf_str_add): Adjust accordingly.
290 1.1.1.2 christos (ctf_str_add_external): Likewise.
291 1.1.1.2 christos (ctf_str_add_pending): New.
292 1.1.1.2 christos (ctf_str_remove_ref): Also remove the potential ref if it is a
293 1.1.1.2 christos pending ref.
294 1.1.1.2 christos * ctf-serialize.c (ctf_serialize): Prohibit addition of strings
295 1.1.1.2 christos with ctf_str_add_ref before serialization. Ensure that the
296 1.1.1.2 christos ctf_str_pending_ref set is empty before strtab finalization.
297 1.1.1.2 christos (ctf_emit_type_sect): Add a ref to the ctt_name.
298 1.1.1.2 christos * ctf-create.c (ctf_add_generic): Add the ctt_name as a pending
299 1.1.1.2 christos ref.
300 1.1.1.2 christos * testsuite/libctf-writable/reserialize-strtab-corruption.*: New test.
301 1.1.1.2 christos
302 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
303 1.1.1.2 christos
304 1.1.1.2 christos * ctf-serialize.c (ctf_serialize): Preserve ctf_typemax across
305 1.1.1.2 christos serialization.
306 1.1.1.2 christos
307 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
308 1.1.1.2 christos
309 1.1.1.2 christos * ctf-impl.h (ctf_dtdef_t) <dtd_u.dtu_argv>: Remove.
310 1.1.1.2 christos * ctf-create.c (ctf_dtd_delete): No longer free it.
311 1.1.1.2 christos (ctf_add_function): Use the dtd_vlen, not dtu_argv. Properly align.
312 1.1.1.2 christos * ctf-serialize.c (ctf_emit_type_sect): Just copy the dtd_vlen.
313 1.1.1.2 christos * ctf-types.c (ctf_func_type_info): Just use the vlen.
314 1.1 christos (ctf_func_type_args): Likewise.
315 1.1 christos
316 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
317 1.1 christos
318 1.1.1.2 christos * ctf-impl.h (ctf_dtdef_t) <dtd_u.dtu_arr>: Remove.
319 1.1.1.2 christos * ctf-create.c (ctf_add_array): Use the dtd_vlen, not dtu_arr.
320 1.1.1.2 christos (ctf_set_array): Likewise.
321 1.1.1.2 christos * ctf-serialize.c (ctf_emit_type_sect): Just copy the dtd_vlen.
322 1.1.1.2 christos * ctf-types.c (ctf_array_info): Just use the vlen.
323 1.1.1.2 christos
324 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
325 1.1.1.2 christos
326 1.1.1.2 christos * ctf-impl.h (ctf_dtdef_t) <dtd_u.dtu_enc>: Remove.
327 1.1.1.2 christos <dtd_u.dtu_slice>: Likewise.
328 1.1.1.2 christos <dtd_vlen>: New.
329 1.1.1.2 christos * ctf-create.c (ctf_add_generic): Perhaps allocate it. All
330 1.1.1.2 christos callers adjusted.
331 1.1.1.2 christos (ctf_dtd_delete): Free it.
332 1.1.1.2 christos (ctf_add_slice): Use the dtd_vlen, not dtu_enc.
333 1.1.1.2 christos (ctf_add_encoded): Likewise. Assert that this must be an int or
334 1.1.1.2 christos float.
335 1.1.1.2 christos * ctf-serialize.c (ctf_emit_type_sect): Just copy the dtd_vlen.
336 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_rhash_type): Use the dtd_vlen, not
337 1.1.1.2 christos dtu_slice.
338 1.1.1.2 christos * ctf-types.c (ctf_type_reference): Likewise.
339 1.1.1.2 christos (ctf_type_encoding): Remove most dynamic-type-specific code: just
340 1.1.1.2 christos get the vlen from the right place. Report failure to look up the
341 1.1.1.2 christos underlying type's encoding.
342 1.1 christos
343 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
344 1.1 christos
345 1.1.1.2 christos * ctf-archive.c (ctf_archive_next): GNU style fix for do {} while.
346 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_rhash_type): Likewise.
347 1.1.1.2 christos (ctf_dedup_rwalk_one_output_mapping): Likewise.
348 1.1.1.2 christos * ctf-dump.c (ctf_dump_format_type): Likewise.
349 1.1.1.2 christos * ctf-lookup.c (ctf_symbol_next): Likewise.
350 1.1.1.2 christos * swap.h (swap_thing): Likewise.
351 1.1.1.2 christos
352 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
353 1.1.1.2 christos
354 1.1.1.2 christos * ctf-serialize.c: General reshuffling, and...
355 1.1.1.2 christos (emit_symtypetab_state_t): New, migrated from
356 1.1.1.2 christos local variables in ctf_serialize.
357 1.1.1.2 christos (ctf_serialize): Split out most section sizing and
358 1.1.1.2 christos emission.
359 1.1.1.2 christos (ctf_symtypetab_sect_sizes): New (split out).
360 1.1.1.2 christos (ctf_emit_symtypetab_sects): Likewise.
361 1.1.1.2 christos (ctf_type_sect_size): Likewise.
362 1.1.1.2 christos (ctf_emit_type_sect): Likewise.
363 1.1.1.2 christos
364 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
365 1.1.1.2 christos
366 1.1.1.2 christos * ctf-impl.h (ctf_dict_t): Fix comment.
367 1.1.1.2 christos
368 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
369 1.1.1.2 christos
370 1.1.1.2 christos * ctf-create.c (symtypetab_delete_nonstatic_vars): Move
371 1.1.1.2 christos into ctf-serialize.c.
372 1.1.1.2 christos (ctf_symtab_skippable): Likewise.
373 1.1.1.2 christos (CTF_SYMTYPETAB_EMIT_FUNCTION): Likewise.
374 1.1.1.2 christos (CTF_SYMTYPETAB_EMIT_PAD): Likewise.
375 1.1.1.2 christos (CTF_SYMTYPETAB_FORCE_INDEXED): Likewise.
376 1.1.1.2 christos (symtypetab_density): Likewise.
377 1.1.1.2 christos (emit_symtypetab): Likewise.
378 1.1.1.2 christos (emit_symtypetab_index): Likewise.
379 1.1.1.2 christos (ctf_copy_smembers): Likewise.
380 1.1 christos (ctf_copy_lmembers): Likewise.
381 1.1 christos (ctf_copy_emembers): Likewise.
382 1.1.1.2 christos (ctf_sort_var): Likewise.
383 1.1.1.2 christos (ctf_serialize): Likewise.
384 1.1.1.2 christos (ctf_gzwrite): Likewise.
385 1.1.1.2 christos (ctf_compress_write): Likewise.
386 1.1.1.2 christos (ctf_write_mem): Likewise.
387 1.1.1.2 christos (ctf_write): Likewise.
388 1.1.1.2 christos * ctf-serialize.c: New file.
389 1.1.1.2 christos * Makefile.am (libctf_nobfd_la_SOURCES): Add it.
390 1.1 christos * Makefile.in: Regenerate.
391 1.1 christos
392 1.1.1.2 christos 2021-03-18 Nick Alcock <nick.alcock (a] oracle.com>
393 1.1 christos
394 1.1.1.2 christos * ctf-link.c (ctf_link_lazy_open): Move up in the file, to near
395 1.1.1.2 christos ctf_link_add_ctf.
396 1.1.1.2 christos * ctf-lookup.c (ctf_lookup_symbol_idx): Repair tabdamage.
397 1.1.1.2 christos (ctf_lookup_by_sym_or_name): Likewise.
398 1.1.1.2 christos * testsuite/libctf-lookup/struct-iteration.c: Likewise.
399 1.1.1.2 christos * testsuite/libctf-regression/type-add-unnamed-struct.c: Likewise.
400 1.1 christos
401 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
402 1.1 christos
403 1.1.1.2 christos * ctf-create.c (symtypetab_density): Report the symbol name as
404 1.1.1.2 christos well as index in the name != object error; note the likely
405 1.1.1.2 christos consequences.
406 1.1.1.2 christos * ctf-link.c (ctf_link_shuffle_syms): Report the symbol index
407 1.1.1.2 christos as well as name.
408 1.1 christos
409 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
410 1.1 christos
411 1.1.1.2 christos * ctf-link.c (ctf_link_shuffle_syms): Free ctf_dynsyms properly.
412 1.1 christos
413 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
414 1.1 christos
415 1.1.1.2 christos * ctf-dump.c (ctf_dump_format_type): Fix signed/unsigned confusion.
416 1.1 christos
417 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
418 1.1 christos
419 1.1.1.2 christos * ctf-dedup.c (ctf_dedup): Pass on errors from ctf_dedup_hash_type.
420 1.1.1.2 christos Call ctf_dedup_fini properly on other errors.
421 1.1.1.2 christos (ctf_dedup_emit_type): Set the errno on dynhash insertion failure.
422 1.1.1.2 christos * ctf-link.c (ctf_link_deduplicating_per_cu): Close outputs beyond
423 1.1.1.2 christos output 0 when asserting because >1 output is found.
424 1.1.1.2 christos (ctf_link_deduplicating): Likewise, when asserting because the
425 1.1.1.2 christos shared output is not the same as the passed-in fp.
426 1.1 christos
427 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
428 1.1 christos
429 1.1.1.2 christos * ctf-impl.h (ctf_dict_t) <ctf_link_type_mapping>: No longer used
430 1.1.1.2 christos by the nondeduplicating linker.
431 1.1.1.2 christos (ctf_add_type_mapping): Removed, now static.
432 1.1.1.2 christos (ctf_type_mapping): Likewise.
433 1.1.1.2 christos (ctf_dedup_type_mapping): New.
434 1.1.1.2 christos (ctf_dedup_t) <cd_input_nums>: New.
435 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_init): Populate it.
436 1.1.1.2 christos (ctf_dedup_fini): Free it again. Emphasise that this has to be
437 1.1.1.2 christos the last thing called.
438 1.1.1.2 christos (ctf_dedup): Populate it.
439 1.1.1.2 christos (ctf_dedup_populate_type_mapping): Removed.
440 1.1.1.2 christos (ctf_dedup_populate_type_mappings): Likewise.
441 1.1.1.2 christos (ctf_dedup_emit): No longer call it. No longer call
442 1.1.1.2 christos ctf_dedup_fini either.
443 1.1.1.2 christos (ctf_dedup_type_mapping): New.
444 1.1.1.2 christos * ctf-link.c (ctf_unnamed_cuname): New.
445 1.1.1.2 christos (ctf_create_per_cu): Arguments must be non-null now.
446 1.1.1.2 christos (ctf_in_member_cb_arg): Removed.
447 1.1.1.2 christos (ctf_link): No longer populate it. No longer discard the
448 1.1.1.2 christos mapping table.
449 1.1.1.2 christos (ctf_link_deduplicating_one_symtypetab): Use
450 1.1.1.2 christos ctf_dedup_type_mapping, not ctf_type_mapping. Use
451 1.1.1.2 christos ctf_unnamed_cuname.
452 1.1.1.2 christos (ctf_link_one_variable): Likewise. Pass in args individually: no
453 1.1.1.2 christos longer a ctf_variable_iter callback.
454 1.1.1.2 christos (empty_link_type_mapping): Removed.
455 1.1.1.2 christos (ctf_link_deduplicating_variables): Use ctf_variable_next, not
456 1.1.1.2 christos ctf_variable_iter. No longer pack arguments to
457 1.1.1.2 christos ctf_link_one_variable into a struct.
458 1.1.1.2 christos (ctf_link_deduplicating_per_cu): Call ctf_dedup_fini once
459 1.1.1.2 christos all link phases are done.
460 1.1.1.2 christos (ctf_link_deduplicating): Likewise.
461 1.1.1.2 christos (ctf_link_intern_extern_string): Improve comment.
462 1.1.1.2 christos (ctf_add_type_mapping): Migrate...
463 1.1.1.2 christos (ctf_type_mapping): ... these functions...
464 1.1.1.2 christos * ctf-create.c (ctf_add_type_mapping): ... here...
465 1.1.1.2 christos (ctf_type_mapping): ... and make static, for the sole use of
466 1.1.1.2 christos ctf_add_type.
467 1.1.1.2 christos
468 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
469 1.1.1.2 christos
470 1.1.1.2 christos * ctf-link.c (ctf_link_one_variable): Remove reference to
471 1.1.1.2 christos "unconflicted link mode".
472 1.1.1.2 christos
473 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
474 1.1.1.2 christos
475 1.1.1.2 christos * ctf-link.c (ctf_create_per_cu): Drop FILENAME now that it is
476 1.1.1.2 christos always identical to CUNAME.
477 1.1.1.2 christos (ctf_link_deduplicating_one_symtypetab): Adjust.
478 1.1.1.2 christos (ctf_link_one_type): Remove.
479 1.1.1.2 christos (ctf_link_one_input_archive_member): Likewise.
480 1.1.1.2 christos (ctf_link_close_one_input_archive): Likewise.
481 1.1.1.2 christos (ctf_link_one_input_archive): Likewise.
482 1.1.1.2 christos (ctf_link): No longer call it. Drop CTF_LINK_NONDEDUP path.
483 1.1.1.2 christos Improve header comment a bit (dicts, not files). Adjust
484 1.1.1.2 christos ctf_create_per_cu call.
485 1.1.1.2 christos (ctf_link_deduplicating_variables): Simplify.
486 1.1.1.2 christos (ctf_link_in_member_cb_arg_t) <cu_name>: Remove.
487 1.1.1.2 christos <in_input_cu_file>: Likewise.
488 1.1.1.2 christos <in_fp_parent>: Likewise.
489 1.1.1.2 christos <done_parent>: Likewise.
490 1.1.1.2 christos (ctf_link_one_variable): Turn uses of in_file_name to in_cuname.
491 1.1.1.2 christos
492 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
493 1.1.1.2 christos
494 1.1.1.2 christos * ctf-types.c (ctf_member_iter): Move 'rc' to an inner scope.
495 1.1.1.2 christos (ctf_enum_iter): Reimplement in terms of ctf_enum_next.
496 1.1.1.2 christos (ctf_type_iter): Reimplement in terms of ctf_type_next.
497 1.1.1.2 christos (ctf_type_iter_all): Likewise.
498 1.1.1.2 christos (ctf_variable_iter): Reimplement in terms of ctf_variable_next.
499 1.1.1.2 christos * ctf-archive.c (ctf_archive_iter_internal): Remove.
500 1.1.1.2 christos (ctf_archive_iter): Reimplement in terms of ctf_archive_next.
501 1.1 christos
502 1.1.1.2 christos 2021-03-02 Nick Alcock <nick.alcock (a] oracle.com>
503 1.1 christos
504 1.1.1.2 christos * ctf-archive.c (ctf_archive_next): Set the name of parents in
505 1.1.1.2 christos single-member archives.
506 1.1 christos
507 1.1.1.2 christos 2021-02-26 Alan Modra <amodra (a] gmail.com>
508 1.1 christos
509 1.1.1.2 christos * Makefile.in: Regenerate.
510 1.1 christos
511 1.1.1.2 christos 2021-02-21 Alan Modra <amodra (a] gmail.com>
512 1.1 christos
513 1.1.1.2 christos * configure.ac: Invoke AC_CANONICAL_TARGET, AC_CANONICAL_HOST
514 1.1.1.2 christos and AC_CANONICAL_BUILD.
515 1.1.1.2 christos * configure: Regenerate.
516 1.1 christos * Makefile.in: Regenerate.
517 1.1 christos
518 1.1.1.2 christos 2021-02-20 Nick Alcock <nick.alcock (a] oracle.com>
519 1.1 christos
520 1.1.1.2 christos * ctf-impl.h (ctf_dict_t) <ctf_symhash>: New.
521 1.1.1.2 christos <ctf_symhash_latest>: Likewise.
522 1.1.1.2 christos (struct ctf_archive_internal) <ctfi_crossdict_cache>: New.
523 1.1.1.2 christos <ctfi_symnamedicts>: New.
524 1.1.1.2 christos <ctfi_syms>: Remove.
525 1.1.1.2 christos (ctf_lookup_symbol_name): Remove.
526 1.1.1.2 christos * ctf-lookup.c (ctf_lookup_symbol_name): Propagate errors from
527 1.1.1.2 christos parent properly. Make static.
528 1.1.1.2 christos (ctf_lookup_symbol_idx): New, linear search for the symbol name,
529 1.1.1.2 christos cached in the crossdict cache's ctf_symhash (if available), or
530 1.1.1.2 christos this dict's (otherwise).
531 1.1.1.2 christos (ctf_try_lookup_indexed): Allow the symname to be passed in.
532 1.1.1.2 christos (ctf_lookup_by_symbol): Turn into a wrapper around...
533 1.1.1.2 christos (ctf_lookup_by_sym_or_name): ... this, supporting name lookup too,
534 1.1.1.2 christos using ctf_lookup_symbol_idx in non-writable dicts. Special-case
535 1.1.1.2 christos name lookup in dynamic dicts without reported symbols, which have
536 1.1.1.2 christos no symtab or dynsymidx but where name lookup should still work.
537 1.1.1.2 christos (ctf_lookup_by_symbol_name): New, another wrapper.
538 1.1.1.2 christos * ctf-archive.c (enosym): Note that this is present in
539 1.1.1.2 christos ctfi_symnamedicts too.
540 1.1.1.2 christos (ctf_arc_close): Adjust for removal of ctfi_syms. Free the
541 1.1.1.2 christos ctfi_symnamedicts.
542 1.1.1.2 christos (ctf_arc_flush_caches): Likewise.
543 1.1.1.2 christos (ctf_dict_open_cached): Memoize the first cached dict in the
544 1.1.1.2 christos crossdict cache.
545 1.1.1.2 christos (ctf_arc_lookup_symbol): Turn into a wrapper around...
546 1.1.1.2 christos (ctf_arc_lookup_sym_or_name): ... this. No longer cache
547 1.1.1.2 christos ctf_id_t lookups: just call ctf_lookup_by_symbol as needed (but
548 1.1.1.2 christos still cache the dicts those lookups succeed in). Add
549 1.1.1.2 christos lookup-by-name support, with dicts of successful lookups cached in
550 1.1.1.2 christos ctfi_symnamedicts. Refactor the caching code a bit.
551 1.1.1.2 christos (ctf_arc_lookup_symbol_name): New, another wrapper.
552 1.1.1.2 christos * ctf-open.c (ctf_dict_close): Free the ctf_symhash.
553 1.1.1.2 christos * libctf.ver (LIBCTF_1.2): New version. Add
554 1.1.1.2 christos ctf_lookup_by_symbol_name, ctf_arc_lookup_symbol_name.
555 1.1.1.2 christos * testsuite/libctf-lookup/enum-symbol.c (main): Use
556 1.1.1.2 christos ctf_arc_lookup_symbol rather than looking up the name ourselves.
557 1.1.1.2 christos Fish it out repeatedly, to make sure that symbol caching isn't
558 1.1.1.2 christos broken.
559 1.1.1.2 christos (symidx_64): Remove.
560 1.1.1.2 christos (symidx_32): Remove.
561 1.1.1.2 christos * testsuite/libctf-lookup/enum-symbol-obj.lk: Test symbol lookup
562 1.1.1.2 christos in an unlinked object file (indexed symtypetab sections only).
563 1.1.1.2 christos * testsuite/libctf-writable/symtypetab-nonlinker-writeout.c
564 1.1.1.2 christos (try_maybe_reporting): Check symbol types via
565 1.1.1.2 christos ctf_lookup_by_symbol_name as well as ctf_symbol_next.
566 1.1.1.2 christos * testsuite/libctf-lookup/conflicting-type-syms.*: New test of
567 1.1.1.2 christos lookups in a multi-dict archive.
568 1.1.1.2 christos
569 1.1.1.2 christos 2021-02-20 Alan Modra <amodra (a] gmail.com>
570 1.1.1.2 christos
571 1.1.1.2 christos * testsuite/config/default.exp (ld_L_opt): Define.
572 1.1.1.2 christos * testsuite/lib/ctf-lib.exp (load_common_lib): Delete. Instead load
573 1.1.1.2 christos ld-lib.exp.
574 1.1.1.2 christos (run_host_cmd, run_host_cmd_yesno, check_compiler_available): Delete.
575 1.1.1.2 christos (compile_one_cc, check_ctf_available): Delete.
576 1.1 christos
577 1.1.1.2 christos 2021-02-03 Nick Alcock <nick.alcock (a] oracle.com>
578 1.1 christos
579 1.1.1.2 christos * configure.ac (ac_cv_libctf_bfd_elf): Include string.h.
580 1.1.1.2 christos * configure: Regenerated.
581 1.1 christos
582 1.1.1.2 christos 2021-02-03 Nick Alcock <nick.alcock (a] oracle.com>
583 1.1 christos
584 1.1.1.2 christos * configure.ac (EXPECT): Check for, in order to define...
585 1.1.1.2 christos (TCL_TRY): ... this, if Tcl supports try/catch.
586 1.1.1.2 christos * Makefile.am (TCL_TRY): Run the testsuite only if set.
587 1.1.1.2 christos * configure: Regenerated.
588 1.1.1.2 christos * Makefile.in: Likewise.
589 1.1 christos
590 1.1.1.2 christos 2021-02-02 Nick Alcock <nick.alcock (a] oracle.com>
591 1.1 christos
592 1.1.1.2 christos * configure.ac (CTF_LIBADD): Remove explicit -lintl population in
593 1.1.1.2 christos favour of LIBINTL.
594 1.1.1.2 christos * Makefile.am (libctf_nobfd_la_LIBADD): No longer explicitly
595 1.1.1.2 christos include $(LIBINTL).
596 1.1.1.2 christos (check-DEJAGNU): Pass down to tests as well.
597 1.1.1.2 christos * configure: Regenerated.
598 1.1.1.2 christos * Makefile.in: Likewise.
599 1.1 christos
600 1.1.1.2 christos 2021-01-27 Nick Alcock <nick.alcock (a] oracle.com>
601 1.1 christos
602 1.1.1.2 christos * ctf-string.c (ctf_str_add): Treat adding a NULL as adding "".
603 1.1.1.2 christos (ctf_str_add_ref): Likewise.
604 1.1.1.2 christos (ctf_str_add_external): Likewise.
605 1.1.1.2 christos * ctf-types.c (ctf_type_name_raw): Always return "" for offset 0.
606 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_multiple_input_dicts): Don't armour
607 1.1.1.2 christos against NULL name.
608 1.1.1.2 christos (ctf_dedup_maybe_synthesize_forward): Likewise.
609 1.1 christos
610 1.1.1.2 christos 2021-01-27 Nick Alcock <nick.alcock (a] oracle.com>
611 1.1 christos
612 1.1.1.2 christos * ctf-create.c (ctf_serialize): Fix shadowing.
613 1.1 christos
614 1.1.1.2 christos 2021-01-27 Nick Alcock <nick.alcock (a] oracle.com>
615 1.1 christos
616 1.1.1.2 christos * ctf-create.c (ctf_add_encoded): Add check for non-empty name.
617 1.1.1.2 christos (ctf_add_forward): Likewise.
618 1.1.1.2 christos (ctf_add_typedef): Likewise.
619 1.1 christos
620 1.1.1.2 christos 2021-01-27 Nick Alcock <nick.alcock (a] oracle.com>
621 1.1 christos
622 1.1.1.2 christos * ctf-open.c (init_types): Rip out code to check anonymous typedef
623 1.1.1.2 christos nodes.
624 1.1.1.2 christos * ctf-create.c (ctf_add_reftype): Likewise.
625 1.1.1.2 christos * ctf-lookup.c (refresh_pptrtab): Likewise.
626 1.1.1.2 christos
627 1.1.1.2 christos 2021-01-27 Nick Alcock <nick.alcock (a] oracle.com>
628 1.1.1.2 christos
629 1.1.1.2 christos * ctf-impl.c (_libctf_nonnull_): Add parameters.
630 1.1.1.2 christos (LCTF_LINKING): New flag.
631 1.1.1.2 christos (ctf_dict_t) <ctf_link_flags>: Mention it.
632 1.1.1.2 christos * ctf-link.c (ctf_link): Keep LCTF_LINKING set across call.
633 1.1.1.2 christos (ctf_write): Likewise, including in child dictionaries.
634 1.1.1.2 christos (ctf_link_shuffle_syms): Make sure ctf_dynsyms is NULL if there
635 1.1.1.2 christos are no reported symbols.
636 1.1.1.2 christos * ctf-create.c (symtypetab_delete_nonstatic_vars): Make sure
637 1.1.1.2 christos the variable has been reported as a symbol by the linker.
638 1.1.1.2 christos (symtypetab_skippable): Mention relationship between SYMFP and the
639 1.1.1.2 christos flags.
640 1.1.1.2 christos (symtypetab_density): Adjust nonnullity. Exit early if no symbols
641 1.1.1.2 christos were reported and force-indexing is off (i.e., we are doing a
642 1.1.1.2 christos final link).
643 1.1.1.2 christos (ctf_serialize): Handle the !LCTF_LINKING case by writing out an
644 1.1.1.2 christos indexed, sorted symtypetab (and allow SYMFP to be NULL in this
645 1.1.1.2 christos case). Turn sorting off if this is a non-final link. Only delete
646 1.1.1.2 christos nonstatic vars if we are filtering symbols and the linker has
647 1.1.1.2 christos reported some.
648 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld-r*:
649 1.1.1.2 christos New test of variable and symtypetab section population when
650 1.1.1.2 christos ld -r is used.
651 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld-executable.lk:
652 1.1.1.2 christos Likewise, when ld of an executable is used.
653 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld.lk:
654 1.1.1.2 christos Likewise, when ld -shared alone is used.
655 1.1.1.2 christos * testsuite/libctf-regression/nonstatic-var-section-ld*.c:
656 1.1.1.2 christos Lookup programs for the above.
657 1.1.1.2 christos * testsuite/libctf-writable/symtypetab-nonlinker-writeout.*: New
658 1.1.1.2 christos test, testing survival of symbols across ctf_write paths.
659 1.1.1.2 christos * testsuite/lib/ctf-lib.exp (run_lookup_test): New option,
660 1.1.1.2 christos nonshared, suppressing linking of the SOURCE with -shared.
661 1.1.1.2 christos
662 1.1.1.2 christos 2021-01-19 Nick Alcock <nick.alcock (a] oracle.com>
663 1.1.1.2 christos
664 1.1.1.2 christos * ctf-create.c (membadd): Transform ""-named members into
665 1.1.1.2 christos NULL-named ones.
666 1.1.1.2 christos * testsuite/libctf-regression/type-add-unnamed-struct*: New test.
667 1.1.1.2 christos
668 1.1.1.2 christos 2021-01-19 Nick Alcock <nick.alcock (a] oracle.com>
669 1.1.1.2 christos
670 1.1.1.2 christos * ctf-lookup.c (ctf_lookup_by_name_internal): Do not return the
671 1.1.1.2 christos base type if looking up a nonexistent pointer type.
672 1.1.1.2 christos * testsuite/libctf-regression/pptrtab*: Test it.
673 1.1 christos
674 1.1.1.2 christos 2021-01-13 Alan Modra <amodra (a] gmail.com>
675 1.1 christos
676 1.1.1.2 christos * Makefile.in: Regenerate.
677 1.1 christos
678 1.1.1.2 christos 2021-01-12 H.J. Lu <hongjiu.lu (a] intel.com>
679 1.1 christos
680 1.1.1.2 christos PR binutils/26792
681 1.1.1.2 christos * configure.ac: Use GNU_MAKE_JOBSERVER.
682 1.1.1.2 christos * aclocal.m4: Regenerated.
683 1.1.1.2 christos * configure: Likewise.
684 1.1 christos
685 1.1.1.2 christos 2021-01-11 H.J. Lu <hongjiu.lu (a] intel.com>
686 1.1 christos
687 1.1.1.2 christos PR ld/27173
688 1.1.1.2 christos * configure: Regenerated.
689 1.1 christos
690 1.1.1.2 christos 2021-01-09 H.J. Lu <hongjiu.lu (a] intel.com>
691 1.1 christos
692 1.1.1.2 christos * configure: Regenerated.
693 1.1 christos
694 1.1.1.2 christos 2021-01-09 Nick Clifton <nickc (a] redhat.com>
695 1.1 christos
696 1.1.1.2 christos * 2.36 release branch crated.
697 1.1 christos
698 1.1.1.2 christos 2021-01-09 Alan Modra <amodra (a] gmail.com>
699 1.1 christos
700 1.1.1.2 christos * configure: Regenerate.
701 1.1 christos
702 1.1.1.2 christos 2021-01-07 Samuel Thibault <samuel.thibault (a] gnu.org>
703 1.1 christos
704 1.1.1.2 christos * configure: Regenerate.
705 1.1 christos
706 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
707 1.1 christos
708 1.1.1.2 christos * testsuite/libctf-lookup/struct-iteration.c (main):
709 1.1.1.2 christos ctf_member_count returns an int.
710 1.1 christos
711 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
712 1.1 christos
713 1.1.1.2 christos * Makefile.am (BASEDIR): New.
714 1.1.1.2 christos (BFDDIR): Likewise.
715 1.1.1.2 christos (check-DEJAGNU): Add development.exp to prerequisites.
716 1.1.1.2 christos (development.exp): New.
717 1.1.1.2 christos (CONFIG_STATUS_DEPENDENCIES): New.
718 1.1.1.2 christos (EXTRA_DEJAGNU_SITE_CONFIG): Likewise.
719 1.1.1.2 christos (DISTCLEANFILES): Likewise.
720 1.1.1.2 christos * Makefile.in: Regenerated.
721 1.1.1.2 christos * testsuite/lib/ctf-lib.exp (check_ctf_available): Return boolean.
722 1.1.1.2 christos * testsuite/libctf-lookup/lookup.exp: Call check_ctf_available.
723 1.1.1.2 christos * testsuite/libctf-regression/regression.exp: Likewise.
724 1.1.1.2 christos
725 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
726 1.1.1.2 christos
727 1.1.1.2 christos * ctf-types.c (ctf_type_aname): Print forwards to unions and enums
728 1.1.1.2 christos properly.
729 1.1.1.2 christos
730 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
731 1.1.1.2 christos
732 1.1.1.2 christos * ctf-impl.h (ctf_dict_t) <ctf_pptrtab>: New.
733 1.1.1.2 christos <ctf_pptrtab_len>: New.
734 1.1.1.2 christos <ctf_pptrtab_typemax>: New.
735 1.1.1.2 christos * ctf-create.c (ctf_serialize): Update accordingly.
736 1.1.1.2 christos (ctf_add_reftype): Note that we don't need to update pptrtab here,
737 1.1.1.2 christos despite updating ptrtab.
738 1.1.1.2 christos * ctf-open.c (ctf_dict_close): Destroy the pptrtab.
739 1.1.1.2 christos (ctf_import): Likewise.
740 1.1.1.2 christos (ctf_import_unref): Likewise.
741 1.1.1.2 christos * ctf-lookup.c (grow_pptrtab): New.
742 1.1.1.2 christos (refresh_pptrtab): New, update a pptrtab.
743 1.1.1.2 christos (ctf_lookup_by_name): Turn into a wrapper around (and rename to)...
744 1.1.1.2 christos (ctf_lookup_by_name_internal): ... this: construct the pptrtab, and
745 1.1.1.2 christos use it in addition to the parent's ptrtab when parent dicts are
746 1.1.1.2 christos searched.
747 1.1.1.2 christos * testsuite/libctf-regression/regression.exp: New testsuite for
748 1.1.1.2 christos regression tests.
749 1.1.1.2 christos * testsuite/libctf-regression/pptrtab*: New test.
750 1.1.1.2 christos * testsuite/libctf-writable/writable.exp: New testsuite for tests of
751 1.1.1.2 christos writable CTF dicts.
752 1.1.1.2 christos * testsuite/libctf-writable/pptrtab*: New test.
753 1.1.1.2 christos
754 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
755 1.1.1.2 christos
756 1.1.1.2 christos * ctf-archive.c (ctf_archive_iter): Remove outdated comment.
757 1.1.1.2 christos
758 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
759 1.1.1.2 christos
760 1.1.1.2 christos * ctf-impl.h (struct ctf_next) <u.ctn_next>: Move to...
761 1.1.1.2 christos <ctn_next>: ... here.
762 1.1.1.2 christos * ctf-util.c (ctf_next_destroy): Unconditionally destroy it.
763 1.1.1.2 christos * ctf-lookup.c (ctf_symbol_next): Adjust accordingly.
764 1.1.1.2 christos * ctf-types.c (ctf_member_iter): Reimplement in terms of...
765 1.1.1.2 christos (ctf_member_next): ... this. Support recursive unnamed member
766 1.1.1.2 christos iteration (off by default).
767 1.1.1.2 christos (ctf_member_info): Look up members in unnamed sub-structs.
768 1.1.1.2 christos * ctf-dedup.c (ctf_dedup_rhash_type): Adjust ctf_member_next call.
769 1.1.1.2 christos (ctf_dedup_emit_struct_members): Likewise.
770 1.1.1.2 christos * testsuite/libctf-lookup/struct-iteration-ctf.c: Test empty unnamed
771 1.1.1.2 christos members, and a normal member after the end.
772 1.1.1.2 christos * testsuite/libctf-lookup/struct-iteration.c: Verify that
773 1.1.1.2 christos ctf_member_count is consistent with the number of successful returns
774 1.1.1.2 christos from a non-recursive ctf_member_next.
775 1.1.1.2 christos * testsuite/libctf-lookup/struct-iteration-*: New, test iteration
776 1.1.1.2 christos over struct members.
777 1.1.1.2 christos * testsuite/libctf-lookup/struct-lookup.c: New test.
778 1.1.1.2 christos * testsuite/libctf-lookup/struct-lookup.lk: New test.
779 1.1.1.2 christos
780 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
781 1.1.1.2 christos
782 1.1.1.2 christos * ctf-link.c (ctf_link_warn_outdated_inputs): New.
783 1.1.1.2 christos (ctf_link_write): Call it.
784 1.1.1.2 christos
785 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
786 1.1.1.2 christos
787 1.1.1.2 christos * testsuite/libctf-lookup/enum-symbol.lk: New symbol-lookup test.
788 1.1.1.2 christos * testsuite/libctf-lookup/enum-symbol-ctf.c: New CTF input.
789 1.1.1.2 christos * testsuite/libctf-lookup/enum-symbol.c: New lookup test.
790 1.1.1.2 christos
791 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
792 1.1.1.2 christos
793 1.1.1.2 christos * Makefile.am (EXPECT): New.
794 1.1.1.2 christos (RUNTEST): Likewise.
795 1.1.1.2 christos (RUNTESTFLAGS): Likewise.
796 1.1.1.2 christos (CC_FOR_TARGET): Likewise.
797 1.1.1.2 christos (check-DEJAGNU): Likewise.
798 1.1.1.2 christos (AUTOMAKE_OPTIONS): Add dejagnu.
799 1.1.1.2 christos * Makefile.in: Regenerated.
800 1.1.1.2 christos * testsuite/config/default.exp: New.
801 1.1.1.2 christos * testsuite/lib/ctf-lib.exp: Likewise.
802 1.1.1.2 christos * testsuite/libctf-lookup/enum.lk: New test.
803 1.1.1.2 christos * testsuite/libctf-lookup/enum-ctf.c: New CTF input.
804 1.1.1.2 christos * testsuite/libctf-lookup/enum.c: New lookup test.
805 1.1.1.2 christos * testsuite/libctf-lookup/ambiguous-struct*.c: New test.
806 1.1.1.2 christos * testsuite/libctf-lookup/lookup.exp: New.
807 1.1.1.2 christos
808 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
809 1.1.1.2 christos
810 1.1.1.2 christos * configure.ac (BFD_LIBADD): Remove.
811 1.1.1.2 christos (BFD_DEPENDENCIES): Likewise. Remove associated cases.
812 1.1.1.2 christos (SHARED_LIBADD): Rename to...
813 1.1.1.2 christos (CTF_LIBADD): ... this. Stick in a suitable libiberty even when
814 1.1.1.2 christos linking statically.
815 1.1.1.2 christos * Makefile.am (libctf_nobfd_la_LIBADD): Adjust accordingly.
816 1.1.1.2 christos libctf uses libintl.
817 1.1.1.2 christos (libctf_la_LIBADD): Reference libbfd.la directly, not via
818 1.1.1.2 christos BFD_LIBADD.
819 1.1.1.2 christos (libctf_la_DEPENDENCIES): Remove.
820 1.1.1.2 christos * Makefile.in: Regenerate.
821 1.1.1.2 christos * configure: Likewise.
822 1.1 christos
823 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
824 1.1 christos
825 1.1.1.2 christos * ctf-decl.c (ctf_decl_push): Exclude slices from the decl stack.
826 1.1.1.2 christos * ctf-types.c (ctf_type_aname): No longer deal with slices here.
827 1.1.1.2 christos * ctf-dump.c (ctf_dump_membstate_t) <cdm_toplevel_indent>: Constify.
828 1.1.1.2 christos (CTF_FT_REFS): New.
829 1.1.1.2 christos (CTF_FT_BITFIELD): Likewise.
830 1.1.1.2 christos (CTF_FT_ID): Likewise.
831 1.1.1.2 christos (ctf_dump_member): Do not do indentation here. Migrate the
832 1.1.1.2 christos type-printing parts of this into...
833 1.1.1.2 christos (ctf_dump_format_type): ... here, to be shared by all type printers.
834 1.1.1.2 christos Get the errno value for non-representable types right. Do not print
835 1.1.1.2 christos bitfield info for non-bitfields. Improve the format and indentation
836 1.1.1.2 christos of other type output. Shuffle spacing around to make all indentation
837 1.1.1.2 christos either 'width of column' or 4 chars.
838 1.1.1.2 christos (ctf_dump_label): Pass CTF_FT_REFS to ctf_dump_format_type.
839 1.1.1.2 christos (ctf_dump_objts): Likewise. Spacing shuffle.
840 1.1.1.2 christos (ctf_dump_var): Likewise.
841 1.1.1.2 christos (type_hex_digits): Migrate down in the file, to above its new user.
842 1.1.1.2 christos (ctf_dump_type): Indent here instead. Pass CTF_FT_REFS to
843 1.1.1.2 christos ctf_dump_format_type. Don't trim off excess linefeeds now we no
844 1.1.1.2 christos longer generate them. Dump enumerated types.
845 1.1.1.2 christos
846 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
847 1.1.1.2 christos
848 1.1.1.2 christos * ctf-types.c (ctf_type_resolve): Improve comment.
849 1.1.1.2 christos (ctf_type_size): Yield ECTF_INCOMPLETE when applied to forwards.
850 1.1.1.2 christos Emit errors into the right dict.
851 1.1.1.2 christos (ctf_type_align): Likewise.
852 1.1.1.2 christos * ctf-create.c (ctf_add_member_offset): Yield ECTF_INCOMPLETE
853 1.1.1.2 christos when adding a member without explicit offset when this member, or
854 1.1.1.2 christos the previous member, is incomplete.
855 1.1.1.2 christos * ctf-dump.c (ctf_dump_format_type): Do not try to print the size of
856 1.1.1.2 christos forwards.
857 1.1.1.2 christos (ctf_dump_member): Do not try to print their alignment.
858 1.1.1.2 christos
859 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
860 1.1.1.2 christos
861 1.1.1.2 christos * ctf-dump.c (ctf_dump_objts): Dump by calling ctf_dump_format_type.
862 1.1.1.2 christos (ctf_dump_format_type): Don't emit the size for function objects.
863 1.1.1.2 christos Dump the element type of arrays like we dump the pointed-to type of
864 1.1.1.2 christos pointers, etc.
865 1.1.1.2 christos
866 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
867 1.1.1.2 christos
868 1.1.1.2 christos * ctf-dump.c (ctf_dump_format_type): Add 0x to hex type IDs.
869 1.1.1.2 christos (ctf_dump_header): Add 0x to the hex magic number.
870 1.1.1.2 christos (ctf_dump_str): Add 0x to the hex string offsets.
871 1.1.1.2 christos (ctf_dump_membstate_t) <cdm_toplevel_indent>: New.
872 1.1.1.2 christos (ctf_dump_type): Adjust. Free it when we're done.
873 1.1.1.2 christos (type_hex_digits): New.
874 1.1.1.2 christos (ctf_dump_member): Align output depending on the width of the type
875 1.1.1.2 christos ID being generated. Use printf padding, not a loop, to generate
876 1.1.1.2 christos indentation.
877 1.1.1.2 christos
878 1.1.1.2 christos 2021-01-05 Nick Alcock <nick.alcock (a] oracle.com>
879 1.1.1.2 christos
880 1.1.1.2 christos * ctf-decl.c (ctf_decl_push): Don't print array decls backwards.
881 1.1.1.2 christos
882 1.1.1.2 christos 2021-01-04 Nicolas Boulenguez <nicolas (a] debian.org>
883 1.1.1.2 christos
884 1.1.1.2 christos PR 27117
885 1.1.1.2 christos * configure.ac: Make AC_CONFIG_MACRO_DIR consistent with
886 1.1.1.2 christos ACLOCAL_AMFLAGS -I dirs.
887 1.1.1.2 christos * configure: Regenerate.
888 1.1 christos
889 1.1.1.2 christos 2021-01-01 Alan Modra <amodra (a] gmail.com>
890 1.1 christos
891 1.1.1.2 christos Update year range in copyright notice of all files.
892 1.1 christos
893 1.1.1.2 christos For older changes see ChangeLog-2020
894 1.1 christos
896 1.1.1.2 christos Copyright (C) 2021-2025 Free Software Foundation, Inc.
897 1.1.1.2 christos
898 1.1.1.2 christos Copying and distribution of this file, with or without modification,
899 1.1.1.2 christos are permitted in any medium without royalty provided the copyright
900 1.1.1.2 christos notice and this notice are preserved.
901 1.1 christos
902 1.1 christos Local Variables:
903 1.1 christos mode: change-log
904 1.1.1.2 christos left-margin: 8
905 1.1 christos fill-column: 74
906 1.1 christos version-control: never
907 End:
908