]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - libctf/ChangeLog
libctf, create: add explicit casts for variables' and slices' types
[thirdparty/binutils-gdb.git] / libctf / ChangeLog
1 2020-07-22 Nick Alcock <nick.alcock@oracle.com>
2
3 * ctf-create.c (ctf_serialize): Add cast.
4 (ctf_add_slice): Likewise.
5
6 2020-07-22 Nick Alcock <nick.alcock@oracle.com>
7
8 * ctf-impl.h (ctf_dtdef_t) <dtu_argv>: Fix type.
9 * ctf-create.c (ctf_add_function): Check for unimplemented type
10 and populate at the same time. Populate one-by-one, not via
11 memcpy.
12 (ctf_serialize): Remove unnecessary cast.
13 * ctf-types.c (ctf_func_type_info): Likewise.
14 (ctf_func_type_args): Likewise. Fix comment typo.
15
16 2020-07-22 Nick Alcock <nick.alcock@oracle.com>
17
18 * ctf-create.c (ctf_add_reftype): Support refs to type zero.
19 (ctf_add_array): Support array contents of type zero.
20 (ctf_add_function): Support arguments and return types of
21 type zero.
22 (ctf_add_typedef): Support typedefs to type zero.
23 (ctf_add_member_offset): Support members of type zero,
24 unless added at unspecified (naturally-aligned) offset.
25
26 2020-07-22 Nick Alcock <nick.alcock@oracle.com>
27
28 * ctf-error.c: Include <stddef.h>, for offsetof.
29 (_ctf_errlist): Migrate to...
30 (_ctf_errlist_t): ... this.
31 (_ctf_erridx): New, indexes into _ctf_errlist_t.
32 (_ctf_nerr): Remove.
33 (ctf_errmsg): Adjust accordingly.
34 * Makefile.am (BUILT_SOURCES): Note...
35 (ctf-error.h): ... this new rule.
36 * Makefile.in: Regenerate.
37 * mkerrors.sed: New, process ctf-api.h to generate ctf-error.h.
38 * .gitignore: New, ignore ctf-error.h.
39
40 2020-07-22 Nick Alcock <nick.alcock@oracle.com>
41
42 * ctf-impl.h: Fix typos in comments.
43
44 2020-07-22 Nick Clifton <nickc@redhat.com>
45
46 * ctf-archive.c (ctf_arc_write): Avoid calling close twice on the
47 same file descriptor.
48
49 2020-07-04 Nick Clifton <nickc@redhat.com>
50
51 Binutils 2.35 branch created.
52
53 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
54
55 * aclocal.m4: Add config/gettext-sister.m4: Shuffle into
56 alphabetical order.
57 * configure.ac: Add ZW_GNU_GETTEXT_SISTER_DIR.
58 * config.h.in: Regenerated.
59 * Makefile.in: Likewise.
60 * configure: Likewise.
61
62 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
63
64 * ctf-create.c: Include <unistd.h>.
65 * ctf-open-bfd.c: Likewise.
66
67 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
68
69 PR libctf/25120
70 * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls.
71 * swap.h (bswap_16): Do not assume that presence of <byteswap.h>
72 means this is declared.
73 (bswap_32): Likewise.
74 (bswap_64): Likewise.
75 (bswap_identity_64): Remove, unused.
76 * configure: Regenerated.
77 * config.h.in: Likewise.
78
79 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
80
81 PR libctf/25120
82 * ctf-impl.h (_libctf_printflike_): Add non-GNU-C fallback.
83 (_libctf_unlikely_): Likewise.
84 (_libctf_unused): Likewise.
85 (_libctf_malloc_): Likewise.
86
87 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
88
89 PR libctf/25120
90 * ctf-archive.c (search_nametbl): No longer global: declare...
91 (ctf_arc_open_by_name_internal): ... here. Use bsearch_r.
92 (search_modent_by_name): Take and use ARG for the nametbl.
93
94 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
95
96 * ctf-impl.h (ctf_new_archive_internal): Declare.
97 (ctf_arc_bufopen): Remove.
98 (ctf_archive_internal) <ctfi_free_symsect>: New.
99 * ctf-archive.c (ctf_arc_close): Use it.
100 (ctf_arc_bufopen): Fuse into...
101 (ctf_new_archive_internal): ... this, moved across from...
102 * ctf-open-bfd.c: ... here.
103 (ctf_bfdopen_ctfsect): Use ctf_arc_bufopen.
104 * libctf.ver: Add it.
105
106 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
107
108 * ctf-create.c (ctf_add_forward): Intern in the right namespace.
109 (ctf_dtd_delete): Remove correspondingly.
110 (ctf_rollback): Likewise.
111
112 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
113
114 * ctf-create.c (ctf_add_type_internal): Hand back existing types
115 unchanged.
116
117 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
118
119 * ctf-create.c (ctf_add_forward): Don't add forwards to
120 types that already exist.
121
122 2020-06-26 Nick Alcock <nick.alcock@oracle.com>
123
124 * ctf-open.c (init_types): Only intern root-visible types.
125 * ctf-create.c (ctf_dtd_insert): Likewise.
126 (ctf_dtd_delete): Only remove root-visible types.
127 (ctf_rollback): Likewise.
128 (ctf_add_generic): Adjust.
129 (ctf_add_struct_sized): Adjust comment.
130 (ctf_add_union_sized): Likewise.
131 (ctf_add_enum): Likewise.
132 * ctf-impl.h (ctf_dtd_insert): Adjust prototype.
133
134 2020-03-11 John Baldwin <jhb@FreeBSD.org>
135
136 * swap.h (bswap_identity_64): Make static.
137
138 2020-01-18 Nick Clifton <nickc@redhat.com>
139
140 Binutils 2.34 branch created.
141
142 2020-01-05 Joel Brobecker <brobecker@adacore.com>
143
144 PR binutils/25155:
145 * configure.ac: Add AC_CHECK_DECLS([asprintf]).
146 * configure, config.h.in: Regenerate.
147
148 2020-01-01 Alan Modra <amodra@gmail.com>
149
150 Update year range in copyright notice of all files.
151
152 2019-10-16 Simon Marchi <simon.marchi@polymtl.ca>
153
154 * swap.h (bswap_16, bswap_32, bswap_64): Make static.
155
156 2019-09-30 Nick Alcock <nick.alcock@oracle.com>
157
158 * ctf-open.c (ctf_bufopen_internal): Fix tabdamage.
159 * ctf-types.c (ctf_type_lname): Likewise.
160
161 2019-09-23 Nick Alcock <nick.alcock@oracle.com>
162
163 * ctf-open.c (ctf_import): Do not leak a ctf_file_t ref on every
164 ctf_import after the first for a given file.
165
166 2019-09-23 Nick Alcock <nick.alcock@oracle.com>
167
168 * ctf-impl.h (ctf_str_append_noerr): Declare.
169 * ctf-util.c (ctf_str_append_noerr): Define in terms of
170 ctf_str_append.
171 * ctf-dump.c (str_append): New, call it.
172 (ctf_dump_format_type): Use str_append, not ctf_str_append.
173 (ctf_dump_label): Likewise.
174 (ctf_dump_objts): Likewise.
175 (ctf_dump_funcs): Likewise.
176 (ctf_dump_var): Likewise.
177 (ctf_dump_member): Likewise.
178 (ctf_dump_type): Likewise.
179 (ctf_dump): Likewise.
180
181 2019-09-23 Nick Alcock <nick.alcock@oracle.com>
182
183 * ctf-impl.h (ctf_alloc): Remove.
184 (ctf_free): Likewise.
185 (ctf_strdup): Likewise.
186 * ctf-subr.c (ctf_alloc): Remove.
187 (ctf_free): Likewise.
188 * ctf-util.c (ctf_strdup): Remove.
189
190 * ctf-create.c (ctf_serialize): Use malloc, not ctf_alloc; free, not
191 ctf_free; strdup, not ctf_strdup.
192 (ctf_dtd_delete): Likewise.
193 (ctf_dvd_delete): Likewise.
194 (ctf_add_generic): Likewise.
195 (ctf_add_function): Likewise.
196 (ctf_add_enumerator): Likewise.
197 (ctf_add_member_offset): Likewise.
198 (ctf_add_variable): Likewise.
199 (membadd): Likewise.
200 (ctf_compress_write): Likewise.
201 (ctf_write_mem): Likewise.
202 * ctf-decl.c (ctf_decl_push): Likewise.
203 (ctf_decl_fini): Likewise.
204 (ctf_decl_sprintf): Likewise. Check for OOM.
205 * ctf-dump.c (ctf_dump_append): Use malloc, not ctf_alloc; free, not
206 ctf_free; strdup, not ctf_strdup.
207 (ctf_dump_free): Likewise.
208 (ctf_dump): Likewise.
209 * ctf-open.c (upgrade_types_v1): Likewise.
210 (init_types): Likewise.
211 (ctf_file_close): Likewise.
212 (ctf_bufopen_internal): Likewise. Check for OOM.
213 (ctf_parent_name_set): Likewise: report the OOM to the caller.
214 (ctf_cuname_set): Likewise.
215 (ctf_import): Likewise.
216 * ctf-string.c (ctf_str_purge_atom_refs): Use malloc, not ctf_alloc;
217 free, not ctf_free; strdup, not ctf_strdup.
218 (ctf_str_free_atom): Likewise.
219 (ctf_str_create_atoms): Likewise.
220 (ctf_str_add_ref_internal): Likewise.
221 (ctf_str_remove_ref): Likewise.
222 (ctf_str_write_strtab): Likewise.
223
224 2019-08-09 Nick Alcock <nick.alcock@oracle.com>
225
226 * ctf-types.c (ctf_type_encoding): Fix the dynamic case to
227 work right for non-int/fps.
228
229 2019-08-08 Nick Alcock <nick.alcock@oracle.com>
230
231 * ctf-types.c (ctf_type_name): Don't strlen a potentially-
232 null pointer.
233
234 2019-08-07 Nick Alcock <nick.alcock@oracle.com>
235
236 * ctf-impl.h (ctf_file_t) <ctf_add_processing>: New.
237 * ctf-open.c (ctf_file_close): Free it.
238 * ctf-create.c (ctf_serialize): Adjust.
239 (membcmp): When reporting a conflict due to an error, report the
240 error.
241 (ctf_add_type): Turn into a ctf_add_processing wrapper. Rename to...
242 (ctf_add_type_internal): ... this. Hand back types we are already
243 in the middle of adding immediately. Hand back structs/unions with
244 the same number of members immediately. Do not walk the dynamic
245 list. Call ctf_add_type_internal, not ctf_add_type. Handle
246 forwards promoted to other types and the inverse case identically.
247 Add structs to the mapping as soon as we intern them, before they
248 gain any members.
249
250 2019-08-09 Nick Alcock <nick.alcock@oracle.com>
251
252 * ctf-impl.h (ctf_names_t): New.
253 (ctf_lookup_t) <ctf_hash>: Now a ctf_names_t, not a ctf_hash_t.
254 (ctf_file_t) <ctf_structs>: Likewise.
255 <ctf_unions>: Likewise.
256 <ctf_enums>: Likewise.
257 <ctf_names>: Likewise.
258 <ctf_lookups>: Improve comment.
259 <ctf_ptrtab_len>: New.
260 <ctf_prov_strtab>: New.
261 <ctf_str_prov_offset>: New.
262 <ctf_dtbyname>: Remove, redundant to the names hashes.
263 <ctf_dtnextid>: Remove, redundant to ctf_typemax.
264 (ctf_dtdef_t) <dtd_name>: Remove.
265 <dtd_data>: Note that the ctt_name is now populated.
266 (ctf_str_atom_t) <csa_offset>: This is now the strtab
267 offset for internal strings too.
268 <csa_external_offset>: New, the external strtab offset.
269 (CTF_INDEX_TO_TYPEPTR): Handle the LCTF_RDWR case.
270 (ctf_name_table): New declaration.
271 (ctf_lookup_by_rawname): Likewise.
272 (ctf_lookup_by_rawhash): Likewise.
273 (ctf_set_ctl_hashes): Likewise.
274 (ctf_serialize): Likewise.
275 (ctf_dtd_insert): Adjust.
276 (ctf_simple_open_internal): Likewise.
277 (ctf_bufopen_internal): Likewise.
278 (ctf_list_empty_p): Likewise.
279 (ctf_str_remove_ref): Likewise.
280 (ctf_str_add): Returns uint32_t now.
281 (ctf_str_add_ref): Likewise.
282 (ctf_str_add_external): Now returns a boolean (int).
283 * ctf-string.c (ctf_strraw_explicit): Check the ctf_prov_strtab
284 for strings in the appropriate range.
285 (ctf_str_create_atoms): Create the ctf_prov_strtab. Detect OOM
286 when adding the null string to the new strtab.
287 (ctf_str_free_atoms): Destroy the ctf_prov_strtab.
288 (ctf_str_add_ref_internal): Add make_provisional argument. If
289 make_provisional, populate the offset and fill in the
290 ctf_prov_strtab accordingly.
291 (ctf_str_add): Return the offset, not the string.
292 (ctf_str_add_ref): Likewise.
293 (ctf_str_add_external): Return a success integer.
294 (ctf_str_remove_ref): New, remove a single ref.
295 (ctf_str_count_strtab): Do not count the initial null string's
296 length or the existence or length of any unreferenced internal
297 atoms.
298 (ctf_str_populate_sorttab): Skip atoms with no refs.
299 (ctf_str_write_strtab): Populate the nullstr earlier. Add one
300 to the cts_len for the null string, since it is no longer done
301 in ctf_str_count_strtab. Adjust for csa_external_offset rename.
302 Populate the csa_offset for both internal and external cases.
303 Flush the ctf_prov_strtab afterwards, and reset the
304 ctf_str_prov_offset.
305 * ctf-create.c (ctf_grow_ptrtab): New.
306 (ctf_create): Call it. Initialize new fields rather than old
307 ones. Tell ctf_bufopen_internal that this is a writable dictionary.
308 Set the ctl hashes and data model.
309 (ctf_update): Rename to...
310 (ctf_serialize): ... this. Leave a compatibility function behind.
311 Tell ctf_simple_open_internal that this is a writable dictionary.
312 Pass the new fields along from the old dictionary. Drop
313 ctf_dtnextid and ctf_dtbyname. Use ctf_strraw, not dtd_name.
314 Do not zero out the DTD's ctt_name.
315 (ctf_prefixed_name): Rename to...
316 (ctf_name_table): ... this. No longer return a prefixed name: return
317 the applicable name table instead.
318 (ctf_dtd_insert): Use it, and use the right name table. Pass in the
319 kind we're adding. Migrate away from dtd_name.
320 (ctf_dtd_delete): Adjust similarly. Remove the ref to the
321 deleted ctt_name.
322 (ctf_dtd_lookup_type_by_name): Remove.
323 (ctf_dynamic_type): Always return NULL on read-only dictionaries.
324 No longer check ctf_dtnextid: check ctf_typemax instead.
325 (ctf_snapshot): No longer use ctf_dtnextid: use ctf_typemax instead.
326 (ctf_rollback): Likewise. No longer fail with ECTF_OVERROLLBACK. Use
327 ctf_name_table and the right name table, and migrate away from
328 dtd_name as in ctf_dtd_delete.
329 (ctf_add_generic): Pass in the kind explicitly and pass it to
330 ctf_dtd_insert. Use ctf_typemax, not ctf_dtnextid. Migrate away
331 from dtd_name to using ctf_str_add_ref to populate the ctt_name.
332 Grow the ptrtab if needed.
333 (ctf_add_encoded): Pass in the kind.
334 (ctf_add_slice): Likewise.
335 (ctf_add_array): Likewise.
336 (ctf_add_function): Likewise.
337 (ctf_add_typedef): Likewise.
338 (ctf_add_reftype): Likewise. Initialize the ctf_ptrtab, checking
339 ctt_name rather than dtd_name.
340 (ctf_add_struct_sized): Pass in the kind. Use
341 ctf_lookup_by_rawname, not ctf_hash_lookup_type /
342 ctf_dtd_lookup_type_by_name.
343 (ctf_add_union_sized): Likewise.
344 (ctf_add_enum): Likewise.
345 (ctf_add_enum_encoded): Likewise.
346 (ctf_add_forward): Likewise.
347 (ctf_add_type): Likewise.
348 (ctf_compress_write): Call ctf_serialize: adjust for ctf_size not
349 being initialized until after the call.
350 (ctf_write_mem): Likewise.
351 (ctf_write): Likewise.
352 * ctf-archive.c (arc_write_one_ctf): Likewise.
353 * ctf-lookup.c (ctf_lookup_by_name): Use ctf_lookuup_by_rawhash, not
354 ctf_hash_lookup_type.
355 (ctf_lookup_by_id): No longer check the readonly types if the
356 dictionary is writable.
357 * ctf-open.c (init_types): Assert that this dictionary is not
358 writable. Adjust to use the new name hashes, ctf_name_table,
359 and ctf_ptrtab_len. GNU style fix for the final ptrtab scan.
360 (ctf_bufopen_internal): New 'writable' parameter. Flip on LCTF_RDWR
361 if set. Drop out early when dictionary is writable. Split the
362 ctf_lookups initialization into...
363 (ctf_set_cth_hashes): ... this new function.
364 (ctf_simple_open_internal): Adjust. New 'writable' parameter.
365 (ctf_simple_open): Adjust accordingly.
366 (ctf_bufopen): Likewise.
367 (ctf_file_close): Destroy the appropriate name hashes. No longer
368 destroy ctf_dtbyname, which is gone.
369 (ctf_getdatasect): Remove spurious "extern".
370 * ctf-types.c (ctf_lookup_by_rawname): New, look up types in the
371 specified name table, given a kind.
372 (ctf_lookup_by_rawhash): Likewise, given a ctf_names_t *.
373 (ctf_member_iter): Add support for iterating over the
374 dynamic type list.
375 (ctf_enum_iter): Likewise.
376 (ctf_variable_iter): Likewise.
377 (ctf_type_rvisit): Likewise.
378 (ctf_member_info): Add support for types in the dynamic type list.
379 (ctf_enum_name): Likewise.
380 (ctf_enum_value): Likewise.
381 (ctf_func_type_info): Likewise.
382 (ctf_func_type_args): Likewise.
383 * ctf-link.c (ctf_accumulate_archive_names): No longer call
384 ctf_update.
385 (ctf_link_write): Likewise.
386 (ctf_link_intern_extern_string): Adjust for new
387 ctf_str_add_external return value.
388 (ctf_link_add_strtab): Likewise.
389 * ctf-util.c (ctf_list_empty_p): New.
390
391 2019-08-05 Nick Alcock <nick.alcock@oracle.com>
392
393 * ctf-types.c (ctf_type_resolve): Return ECTF_NONREPRESENTABLE on
394 type zero.
395 * ctf-create.c (ctf_add_type): Detect and skip nonrepresentable
396 members and types.
397 (ctf_add_variable): Likewise for variables pointing to them.
398 * ctf-link.c (ctf_link_one_type): Do not warn for nonrepresentable
399 type link failure, but do warn for others.
400 * ctf-dump.c (ctf_dump_format_type): Likewise. Do not assume all
401 errors to be ENOMEM.
402 (ctf_dump_member): Likewise.
403 (ctf_dump_type): Likewise.
404 (ctf_dump_header_strfield): Do not assume all errors to be ENOMEM.
405 (ctf_dump_header_sectfield): Do not assume all errors to be ENOMEM.
406 (ctf_dump_header): Likewise.
407 (ctf_dump_label): likewise.
408 (ctf_dump_objts): likewise.
409 (ctf_dump_funcs): likewise.
410 (ctf_dump_var): likewise.
411 (ctf_dump_str): Likewise.
412
413 2019-09-30 Nick Alcock <nick.alcock@oracle.com>
414
415 * configure.ac (AC_DISABLE_SHARED): New, like opcodes/.
416 (LT_INIT): Likewise.
417 (AM_INSTALL_LIBBFD): Likewise.
418 (dlopen): Note why this is necessary in a comment.
419 (SHARED_LIBADD): Initialize for possibly-PIC libiberty: derived from
420 opcodes/.
421 (SHARED_LDFLAGS): Likewise.
422 (BFD_LIBADD): Likewise, for libbfd.
423 (BFD_DEPENDENCIES): Likewise.
424 (VERSION_FLAGS): Initialize, using a version script if ld supports
425 one, or libtool -export-symbols-regex otherwise.
426 (AC_CONFIG_MACRO_DIR): Add ../BFD.
427 * Makefile.am (ACLOCAL_AMFLAGS): Likewise.
428 (INCDIR): New.
429 (AM_CPPFLAGS): Use $(srcdir), not $(top_srcdir).
430 (noinst_LIBRARIES): Replace with...
431 [INSTALL_LIBBFD] (lib_LTLIBRARIES): This, or...
432 [!INSTALL_LIBBFD] (noinst_LTLIBRARIES): ... this, mentioning new
433 libctf-nobfd.la as well.
434 [INSTALL_LIBCTF] (include_HEADERS): Add the CTF headers.
435 [!INSTALL_LIBCTF] (include_HEADERS): New, empty.
436 (libctf_a_SOURCES): Rename to...
437 (libctf_nobfd_la_SOURCES): ... this, all of libctf other than
438 ctf-open-bfd.c.
439 (libctf_la_SOURCES): Now derived from libctf_nobfd_la_SOURCES,
440 with ctf-open-bfd.c added.
441 (libctf_nobfd_la_LIBADD): New, using @SHARED_LIBADD@.
442 (libctf_la_LIBADD): New, using @BFD_LIBADD@ as well.
443 (libctf_la_DEPENDENCIES): New, using @BFD_DEPENDENCIES@.
444 * Makefile.am [INSTALL_LIBCTF]: Use it.
445 * aclocal.m4: Add ../bfd/acinclude.m4, ../config/acx.m4, and the
446 libtool macros.
447 * libctf.ver: New, everything is version LIBCTF_1.0 currently (even
448 the unstable components).
449 * Makefile.in: Regenerated.
450 * config.h.in: Likewise.
451 * configure: Likewise.
452
453 2019-07-30 Nick Alcock <nick.alcock@oracle.com>
454
455 * configure.ac (INSTALL_LIBCTF): New, controlled by
456 --enable-install-libctf.
457 [INSTALL_LIBCTF] (lib_LIBRARIES): Add libctf.a.
458 * Makefile.in: Regenerated.
459 * configure: Regenerated.
460
461 2019-07-30 Nick Alcock <nick.alcock@oracle.com>
462
463 * ctf-archive.c (ctf_arc_close): Call ctfi_bfd_close if set.
464 * ctf-open-bfd.c (ctf_bfdclose): Fix comment.
465
466 2019-07-30 Nick Alcock <nick.alcock@oracle.com>
467
468 * ctf-open-bfd.c (ctf_fdopen): Call bfd_set_cacheable.
469
470 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
471
472 * ctf-impl.h (includes): Include <sys/param.h> here.
473
474 2019-07-30 Nick Alcock <nick.alcock@oracle.com>
475
476 * ctf-open.c (flip_lbls): Eschew for-loop initial declarations.
477 (flip_objts): Likewise.
478 (flip_vars): Likewise.
479 (flip_types): Likewise.
480
481 2019-07-30 Nick Alcock <nick.alcock@oracle.com>
482
483 * ctf-hash.c (ctf_hashtab_insert): Pass in the key and value
484 freeing functions: if set, free the key and value if the slot
485 already exists. Always reassign the key.
486 (ctf_dynhash_insert): Adjust call appropriately.
487 (ctf_hash_insert_type): Likewise.
488
489 2019-08-03 Nick Alcock <nick.alcock@oracle.com>
490
491 * ctf-create.c (ctf_add_type): Look up and use the forwarded-to
492 type kind. Allow forwards to unify with pre-existing structs/
493 unions/enums.
494
495 2019-07-30 Nick Alcock <nick.alcock@oracle.com>
496
497 * ctf-impl.h (ctf_file_t) <ctf_link_cu_mappping>: New.
498 <ctf_link_memb_name_changer>: Likewise.
499 <ctf_link_memb_name_changer_arg>: Likewise.
500 * ctf-create.c (ctf_update): Update accordingly.
501 * ctf-open.c (ctf_file_close): Likewise.
502 * ctf-link.c (ctf_create_per_cu): Apply the cu mapping.
503 (ctf_link_add_cu_mapping): New.
504 (ctf_link_set_memb_name_changer): Likewise.
505 (ctf_change_parent_name): New.
506 (ctf_name_list_accum_cb_arg_t) <dynames>: New, storage for names
507 allocated by the caller's ctf_link_memb_name_changer.
508 <ndynames>: Likewise.
509 (ctf_accumulate_archive_names): Call the ctf_link_memb_name_changer.
510 (ctf_link_write): Likewise (for _CTF_SECTION only): also call
511 ctf_change_parent_name. Free any resulting names.
512
513 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
514
515 * ctf-link.c (ctf_create_per_cu): New, refactored out of...
516 (ctf_link_one_type): ... here, with parent-name setting added.
517 (check_variable): New.
518 (ctf_link_one_variable): Likewise.
519 (ctf_link_one_input_archive_member): Call it.
520 * ctf-error.c (_ctf_errlist): Updated with new errors.
521
522 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
523
524 * ctf-impl.h (ctf_file_t): New field ctf_link_type_mapping.
525 (struct ctf_link_type_mapping_key): New.
526 (ctf_hash_type_mapping_key): Likewise.
527 (ctf_hash_eq_type_mapping_key): Likewise.
528 (ctf_add_type_mapping): Likewise.
529 (ctf_type_mapping): Likewise.
530 (ctf_dynhash_empty): Likewise.
531 * ctf-open.c (ctf_file_close): Update accordingly.
532 * ctf-create.c (ctf_update): Likewise.
533 (ctf_add_type): Populate the mapping.
534 * ctf-hash.c (ctf_hash_type_mapping_key): Hash a type mapping key.
535 (ctf_hash_eq_type_mapping_key): Check the key for equality.
536 (ctf_dynhash_insert): Fix comment typo.
537 (ctf_dynhash_empty): New.
538 * ctf-link.c (ctf_add_type_mapping): New.
539 (ctf_type_mapping): Likewise.
540 (empty_link_type_mapping): New.
541 (ctf_link_one_input_archive): Call it.
542
543 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
544
545 * ctf-link.c: New file, linking of the string and type sections.
546 * Makefile.am (libctf_a_SOURCES): Add it.
547 * Makefile.in: Regenerate.
548
549 * ctf-impl.h (ctf_file_t): New fields ctf_link_inputs,
550 ctf_link_outputs.
551 * ctf-create.c (ctf_update): Update accordingly.
552 * ctf-open.c (ctf_file_close): Likewise.
553 * ctf-error.c (_ctf_errlist): Updated with new errors.
554
555 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
556
557 * ctf-dump.c (ctf_dump_funcs): Check the right error value.
558
559 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
560
561 * ctf-dump.c (ctf_dump): Use ctf_type_iter_all to dump types, not
562 ctf_type_iter.
563 (ctf_dump_type): Pass down the flag from ctf_type_iter_all.
564 (ctf_dump_format_type): Add non-root-type { } notation.
565 Add root flag to prototype.
566 (ctf_dump_label): Adjust accordingly.
567 (ctf_dump_objts): Likewise.
568 (ctf_dump_var): Likewise.
569
570 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
571
572 * ctf-create.c (ctf_compress_write): Fix double-free.
573
574 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
575
576 * ctf-archive.c (ctf_arc_write): Split off, and reimplement in terms
577 of...
578 (ctf_arc_write_fd): ... this new function.
579 * ctf-create.c (ctf_write_mem): New.
580
581 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
582
583 * ctf-impl.h (ctf_str_atom_t) <csa_offset>: New field.
584 (ctf_file_t) <ctf_syn_ext_strtab>: Likewise.
585 (ctf_str_add_ref): Name the last arg.
586 (ctf_str_add_external) New.
587 (ctf_str_add_strraw_explicit): Likewise.
588 (ctf_simple_open_internal): Likewise.
589 (ctf_bufopen_internal): Likewise.
590
591 * ctf-string.c (ctf_strraw_explicit): Split from...
592 (ctf_strraw): ... here, with new support for ctf_syn_ext_strtab.
593 (ctf_str_add_ref_internal): Return the atom, not the
594 string.
595 (ctf_str_add): Adjust accordingly.
596 (ctf_str_add_ref): Likewise. Move up in the file.
597 (ctf_str_add_external): New: update the csa_offset.
598 (ctf_str_count_strtab): Only account for strings with no csa_offset
599 in the internal strtab length.
600 (ctf_str_write_strtab): If the csa_offset is set, update the
601 string's refs without writing the string out, and update the
602 ctf_syn_ext_strtab. Make OOM handling less ugly.
603 * ctf-create.c (struct ctf_sort_var_arg_cb): New.
604 (ctf_update): Handle failure to populate the strtab. Pass in the
605 new ctf_sort_var arg. Adjust for ctf_syn_ext_strtab addition.
606 Call ctf_simple_open_internal, not ctf_simple_open.
607 (ctf_sort_var): Call ctf_strraw_explicit rather than looking up
608 strings by hand.
609 * ctf-hash.c (ctf_hash_insert_type): Likewise (but using
610 ctf_strraw). Adjust to diagnose ECTF_STRTAB nonetheless.
611 * ctf-open.c (init_types): No longer filter out ECTF_STRTAB.
612 (ctf_file_close): Destroy the ctf_syn_ext_strtab.
613 (ctf_simple_open): Rename to, and reimplement as a wrapper around...
614 (ctf_simple_open_internal): ... this new function, which calls
615 ctf_bufopen_internal.
616 (ctf_bufopen): Rename to, and reimplement as a wrapper around...
617 (ctf_bufopen_internal): ... this new function, which sets
618 ctf_syn_ext_strtab.
619
620 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
621
622 * ctf_types.c (ctf_type_iter_all): New.
623
624 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
625
626 * ctf-open.c (init_symtab): Check for overflow against the right
627 section.
628 (upgrade_header): Set cth_objtidxoff, cth_funcidxoff to zero-length.
629 (upgrade_types_v1): Note that these sections are not checked.
630 (flip_header): Endian-swap the header fields.
631 (flip_ctf): Endian-swap the sections.
632 (flip_objts): Update comment.
633 (ctf_bufopen): Check header offsets and alignment for validity.
634
635 2019-07-13 Nick Alcock <nick.alcock@oracle.com>
636
637 * ctf-open-bfd.c: Add <assert.h>.
638 (ctf_bfdopen_ctfsect): Open string and symbol tables using
639 techniques borrowed from bfd_elf_sym_name.
640 (ctf_new_archive_internal): Improve comment.
641 * ctf-archive.c (ctf_arc_close): Do not free the ctfi_strsect.
642 * ctf-open.c (ctf_bufopen): Allow opening with a string section but
643 no symbol section, but not vice versa.
644
645 2019-07-08 Nick Alcock <nick.alcock@oracle.com>
646
647 * ctf-impl.h (ctf_file_t): New field ctf_openflags.
648 * ctf-open.c (ctf_bufopen): Set it. No longer dump header offsets.
649 * ctf-dump.c (dump_header): New function, dump the CTF header.
650 (ctf_dump): Call it.
651 (ctf_dump_header_strfield): New function.
652 (ctf_dump_header_sectfield): Likewise.
653
654 2019-07-06 Nick Alcock <nick.alcock@oracle.com>
655
656 * ctf-impl.h (ctf_file_t): New fields ctf_header, ctf_dynbase,
657 ctf_cuname, ctf_dyncuname: ctf_base and ctf_buf are no longer const.
658 * ctf-open.c (ctf_set_base): Preserve the gap between ctf_buf and
659 ctf_base: do not assume that it is always sizeof (ctf_header_t).
660 Print out ctf_cuname: only print out ctf_parname if set.
661 (ctf_free_base): Removed, ctf_base is no longer freed: free
662 ctf_dynbase instead.
663 (ctf_set_version): Fix spacing.
664 (upgrade_header): New, in-place header upgrading.
665 (upgrade_types): Rename to...
666 (upgrade_types_v1): ... this. Free ctf_dynbase, not ctf_base. No
667 longer track old and new headers separately. No longer allow for
668 header sizes explicitly: squeeze the headers out on upgrade (they
669 are preserved in fp->ctf_header). Set ctf_dynbase, ctf_base and
670 ctf_buf explicitly. Use ctf_free, not ctf_free_base.
671 (upgrade_types): New, also handle ctf_parmax updating.
672 (flip_header): Flip ctf_cuname.
673 (flip_types): Flip BUF explicitly rather than deriving BUF from
674 BASE.
675 (ctf_bufopen): Store the header in fp->ctf_header. Correct minimum
676 required alignment of objtoff and funcoff. No longer store it in
677 the ctf_buf unless that buf is derived unmodified from the input.
678 Set ctf_dynbase where ctf_base is dynamically allocated. Drop locals
679 that duplicate fields in ctf_file: move allocation of ctf_file
680 further up instead. Call upgrade_header as needed. Move
681 version-specific ctf_parmax initialization into upgrade_types. More
682 concise error handling.
683 (ctf_file_close): No longer test for null pointers before freeing.
684 Free ctf_dyncuname, ctf_dynbase, and ctf_header. Do not call
685 ctf_free_base.
686 (ctf_cuname): New.
687 (ctf_cuname_set): New.
688 * ctf-create.c (ctf_update): Populate ctf_cuname.
689 (ctf_gzwrite): Write out the header explicitly. Remove obsolescent
690 comment.
691 (ctf_write): Likewise.
692 (ctf_compress_write): Get the header from ctf_header, not ctf_base.
693 Fix the compression length: fp->ctf_size never counted the CTF
694 header. Simplify the compress call accordingly.
695
696 2019-07-11 Hans-Peter Nilsson <hp@bitrange.com>
697
698 * ctf-endian.h: Don't assume htole64 and le64toh are always
699 present if HAVE_ENDIAN_H; also check if htole64 is defined.
700 [!WORDS_BIGENDIAN] (htole64, le64toh): Define as identity,
701 not bswap_identity_64.
702
703 2019-09-18 Alan Modra <amodra@gmail.com>
704
705 * ctf-open-bfd.c: Update throughout for bfd section macro changes.
706
707 2019-09-09 Phil Blundell <pb@pbcl.net>
708
709 binutils 2.33 branch created.
710
711 2019-07-18 Nick Alcock <nick.alcock@oracle.com>
712
713 * ctf-types.c (ctf_type_aname_raw): New.
714 (ctf_func_type_info): Likewise.
715 (ctf_func_type_args): Likewise.
716 * ctf-error.c (_ctf_errlist): Fix description.
717 * ctf-lookup.c: Fix file description.
718
719 2019-06-28 Nick Alcock <nick.alcock@oracle.com>
720
721 * ctf-create.c (ctf_create): Fix off-by-one error.
722
723 2019-06-28 Nick Alcock <nick.alcock@oracle.com>
724
725 * ctf-impl.h: (struct ctf_strs_writable): New, non-const version of
726 struct ctf_strs.
727 (struct ctf_dtdef): Note that dtd_data.ctt_name is unpopulated.
728 (struct ctf_str_atom): New, disambiguated single string.
729 (struct ctf_str_atom_ref): New, points to some other location that
730 references this string's offset.
731 (struct ctf_file): New members ctf_str_atoms and ctf_str_num_refs.
732 Remove member ctf_dtvstrlen: we no longer track the total strlen
733 as we add strings.
734 (ctf_str_create_atoms): Declare new function in ctf-string.c.
735 (ctf_str_free_atoms): Likewise.
736 (ctf_str_add): Likewise.
737 (ctf_str_add_ref): Likewise.
738 (ctf_str_rollback): Likewise.
739 (ctf_str_purge_refs): Likewise.
740 (ctf_str_write_strtab): Likewise.
741 (ctf_realloc): Declare new function in ctf-util.c.
742
743 * ctf-open.c (ctf_bufopen): Create the atoms table.
744 (ctf_file_close): Destroy it.
745 * ctf-create.c (ctf_update): Copy-and-free it on update. No longer
746 special-case the position of the parname string. Construct the
747 strtab by calling ctf_str_add_ref and ctf_str_write_strtab after the
748 rest of each buffer element is constructed, not via open-coding:
749 realloc the CTF buffer and append the strtab to it. No longer
750 maintain ctf_dtvstrlen. Sort the variable entry table later, after
751 strtab construction.
752 (ctf_copy_membnames): Remove: integrated into ctf_copy_{s,l,e}members.
753 (ctf_copy_smembers): Drop the string offset: call ctf_str_add_ref
754 after buffer element construction instead.
755 (ctf_copy_lmembers): Likewise.
756 (ctf_copy_emembers): Likewise.
757 (ctf_create): No longer maintain the ctf_dtvstrlen.
758 (ctf_dtd_delete): Likewise.
759 (ctf_dvd_delete): Likewise.
760 (ctf_add_generic): Likewise.
761 (ctf_add_enumerator): Likewise.
762 (ctf_add_member_offset): Likewise.
763 (ctf_add_variable): Likewise.
764 (membadd): Likewise.
765 * ctf-util.c (ctf_realloc): New, wrapper around realloc that aborts
766 if there are active ctf_str_num_refs.
767 (ctf_strraw): Move to ctf-string.c.
768 (ctf_strptr): Likewise.
769 * ctf-string.c: New file, strtab manipulation.
770
771 * Makefile.am (libctf_a_SOURCES): Add it.
772 * Makefile.in: Regenerate.
773
774 2019-06-28 Nick Alcock <nick.alcock@oracle.com>
775
776 * ctf-impl.h (ctf_hash_iter_f): New.
777 (ctf_dynhash_iter): New declaration.
778 (ctf_dynhash_iter_remove): New declaration.
779 * ctf-hash.c (ctf_dynhash_iter): Define.
780 (ctf_dynhash_iter_remove): Likewise.
781 (ctf_hashtab_traverse): New.
782 (ctf_hashtab_traverse_remove): Likewise.
783 (struct ctf_traverse_cb_arg): Likewise.
784 (struct ctf_traverse_remove_cb_arg): Likewise.
785
786 2019-06-28 Nick Alcock <nick.alcock@oracle.com>
787
788 * ctf-hash.c (ctf_dynhash_remove): Call with a mocked-up element.
789
790 2019-06-28 Nick Alcock <nick.alcock@oracle.com>
791
792 * ctf-dump.c (ctf_dump_format_type): Prefix hex strings with 0x.
793 (ctf_dump_funcs): Likewise.
794
795 2019-06-19 Nick Alcock <nick.alcock@oracle.com>
796
797 * ctf-open-bfd.c: Add swap.h and ctf-endian.h.
798 (ctf_fdopen): Check for endian-swapped raw CTF magic, and
799 little-endian CTF archive magic. Do not check the CTF version:
800 ctf_simple_open does that in endian-safe ways. Do not dereference
801 null pointers on open failure.
802
803 2019-06-19 Nick Alcock <nick.alcock@oracle.com>
804
805 * ctf-open.c (get_vbytes_common): Return the new slice size.
806 (ctf_bufopen): Flip the endianness of the CTF-section header copy.
807 Remember to copy in the CTF data when opening an uncompressed
808 foreign-endian CTF file. Prune useless variable manipulation.
809
810 2019-06-19 Nick Alcock <nick.alcock@oracle.com>
811
812 * ctf-open.c (ctf_types): Fail when unidentified type kinds are
813 seen.
814
815 2019-06-19 Nick Alcock <nick.alcock@oracle.com>
816
817 * ctf-open.c (ctf_bufopen): Dump header offsets into the debugging
818 output.
819
820 2019-06-19 Nick Alcock <nick.alcock@oracle.com>
821
822 * ctf-subr.c (_PAGESIZE): Remove.
823 (ctf_data_alloc): Likewise.
824 (ctf_data_free): Likewise.
825 (ctf_data_protect): Likewise.
826 * ctf-impl.h: Remove declarations.
827 * ctf-create.c (ctf_update): No longer call ctf_data_protect: use
828 ctf_free, not ctf_data_free.
829 (ctf_compress_write): Use ctf_data_alloc, not ctf_alloc. Free
830 the buffer again on compression error.
831 * ctf-open.c (ctf_set_base): No longer track the size: call
832 ctf_free, not ctf_data_free.
833 (upgrade_types): Likewise. Call ctf_alloc, not ctf_data_alloc.
834 (ctf_bufopen): Likewise. No longer call ctf_data_protect.
835
836 2019-06-19 Nick Alcock <nick.alcock@oracle.com>
837
838 * ctf-create.c (ctf_dtd_insert): Pass on error returns from
839 ctf_dynhash_insert.
840 (ctf_dvd_insert): Likewise.
841 (ctf_add_generic): Likewise.
842 (ctf_add_variable): Likewise.
843 * ctf-impl.h: Adjust declarations.
844
845 2019-06-14 Alan Modra <amodra@gmail.com>
846
847 * configure: Regenerate.
848
849 2019-06-06 Nick Alcock <nick.alcock@oracle.com>
850
851 * ctf-decls.h: Include <libiberty.h>.
852 * ctf-lookup.c (ctf_lookup_by_name): Call xstrndup(), not strndup().
853
854 2019-06-06 Nick Alcock <nick.alcock@oracle.com>
855
856 * ctf-dump.c (ctf_dump_format_type): Cast size_t's used in printf()s.
857 (ctf_dump_objts): Likewise.
858 (ctf_dump_funcs): Likewise.
859 (ctf_dump_member): Likewise.
860 (ctf_dump_str): Likewise.
861
862 2019-06-06 Nick Alcock <nick.alcock@oracle.com>
863
864 * ctf-archive.c (arc_mmap_header): Mark fd as potentially unused.
865 * ctf-subr.c (ctf_data_protect): Mark both args as potentially unused.
866
867 2019-06-05 Nick Alcock <nick.alcock@oracle.com>
868
869 * ctf-archive.c (ctf_arc_write): Eschew %zi format specifier.
870 (ctf_arc_open_by_offset): Likewise.
871 * ctf-create.c (ctf_add_type): Likewise.
872
873 2019-06-04 Tom Tromey <tromey@adacore.com>
874
875 * ctf-create.c (ctf_add_encoded, ctf_add_slice)
876 (ctf_add_member_offset): Use CHAR_BIT, not NBBY.
877
878 2019-06-04 Nick Alcock <nick.alcock@oracle.com>
879
880 * configure.ac: Check for O_CLOEXEC.
881 * ctf-decls.h (O_CLOEXEC): Define (to 0), if need be.
882 * config.h.in: Regenerate.
883 * configure: Likewise.
884
885 2019-06-04 Nick Alcock <nick.alcock@oracle.com>
886
887 * qsort_r.c: Rename to...
888 * ctf-qsort_r.c: ... this.
889 (_quicksort): Define to ctf_qsort_r.
890 * ctf-decls.h (qsort_r): Remove.
891 (ctf_qsort_r): Add.
892 (struct ctf_qsort_arg): New, transport the real ARG and COMPAR.
893 (ctf_qsort_compar_thunk): Rearrange the arguments to COMPAR.
894 * Makefile.am (libctf_a_LIBADD): Remove.
895 (libctf_a_SOURCES): New, add ctf-qsort_r.c.
896 * ctf-archive.c (ctf_arc_write): Call ctf_qsort_r, not qsort_r.
897 * ctf-create.c (ctf_update): Likewise.
898 * configure.ac: Check for BSD versus GNU qsort_r signature.
899 * Makefile.in: Regenerate.
900 * config.h.in: Likewise.
901 * configure: Likewise.
902
903 2019-06-03 Nick Alcock <nick.alcock@oracle.com>
904
905 * ctf-dump.c (ctf_dump_funcs): Free in the right place.
906
907 2019-05-29 Nick Alcock <nick.alcock@oracle.com>
908
909 * Makefile.am (ZLIB): New.
910 (ZLIBINC): Likewise.
911 (AM_CFLAGS): Use them.
912 (libctf_a_LIBADD): New, for LIBOBJS.
913 * configure.ac: Check for zlib, endian.h, and qsort_r.
914 * ctf-endian.h: New, providing htole64 and le64toh.
915 * swap.h: Code style fixes.
916 (bswap_identity_64): New.
917 * qsort_r.c: New, from gnulib (with one added #include).
918 * ctf-decls.h: New, providing a conditional qsort_r declaration,
919 and unconditional definitions of MIN and MAX.
920 * ctf-impl.h: Use it. Do not use <sys/errno.h>.
921 (ctf_set_errno): Now returns unsigned long.
922 * ctf-util.c (ctf_set_errno): Adjust here too.
923 * ctf-archive.c: Use ctf-endian.h.
924 (ctf_arc_open_by_offset): Use memset, not bzero. Drop cts_type,
925 cts_flags and cts_offset.
926 (ctf_arc_write): Drop debugging dependent on the size of off_t.
927 * ctf-create.c: Provide a definition of roundup if not defined.
928 (ctf_create): Drop cts_type, cts_flags and cts_offset.
929 (ctf_add_reftype): Do not check if type IDs are below zero.
930 (ctf_add_slice): Likewise.
931 (ctf_add_typedef): Likewise.
932 (ctf_add_member_offset): Cast error-returning ssize_t's to size_t
933 when known error-free. Drop CTF_ERR usage for functions returning
934 int.
935 (ctf_add_member_encoded): Drop CTF_ERR usage for functions returning
936 int.
937 (ctf_add_variable): Likewise.
938 (enumcmp): Likewise.
939 (enumadd): Likewise.
940 (membcmp): Likewise.
941 (ctf_add_type): Likewise. Cast error-returning ssize_t's to size_t
942 when known error-free.
943 * ctf-dump.c (ctf_is_slice): Drop CTF_ERR usage for functions
944 returning int: use CTF_ERR for functions returning ctf_type_id.
945 (ctf_dump_label): Likewise.
946 (ctf_dump_objts): Likewise.
947 * ctf-labels.c (ctf_label_topmost): Likewise.
948 (ctf_label_iter): Likewise.
949 (ctf_label_info): Likewise.
950 * ctf-lookup.c (ctf_func_args): Likewise.
951 * ctf-open.c (upgrade_types): Cast to size_t where appropriate.
952 (ctf_bufopen): Likewise. Use zlib types as needed.
953 * ctf-types.c (ctf_member_iter): Drop CTF_ERR usage for functions
954 returning int.
955 (ctf_enum_iter): Likewise.
956 (ctf_type_size): Likewise.
957 (ctf_type_align): Likewise. Cast to size_t where appropriate.
958 (ctf_type_kind_unsliced): Likewise.
959 (ctf_type_kind): Likewise.
960 (ctf_type_encoding): Likewise.
961 (ctf_member_info): Likewise.
962 (ctf_array_info): Likewise.
963 (ctf_enum_value): Likewise.
964 (ctf_type_rvisit): Likewise.
965 * ctf-open-bfd.c (ctf_bfdopen): Drop cts_type, cts_flags and
966 cts_offset.
967 (ctf_simple_open): Likewise.
968 (ctf_bfdopen_ctfsect): Likewise. Set cts_size properly.
969 * Makefile.in: Regenerate.
970 * aclocal.m4: Likewise.
971 * config.h: Likewise.
972 * configure: Likewise.
973
974 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
975
976 * configure.in: Check for bfd_section_from_elf_index.
977 * configure: Regenerate.
978 * config.h.in [HAVE_BFD_ELF]: Likewise.
979 * libctf/ctf_open_bfd (ctf_bfdopen_ctfsect): Use it.
980 abfd is potentially unused now.
981
982 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
983
984 * Makefile.am: New.
985 * Makefile.in: Regenerated.
986 * config.h.in: Likewise.
987 * aclocal.m4: Likewise.
988 * configure: Likewise.
989
990 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
991
992 * ctf-dump.c: New.
993
994 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
995
996 * ctf-labels.c: New.
997
998 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
999
1000 * ctf-impl.h (_libctf_version): New declaration.
1001 * ctf-subr.c (_libctf_version): Define it.
1002 (ctf_version): New.
1003
1004 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1005
1006 * ctf-create.c (enumcmp): New.
1007 (enumadd): Likewise.
1008 (membcmp): Likewise.
1009 (membadd): Likewise.
1010 (ctf_add_type): Likewise.
1011
1012 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1013
1014 * ctf-lookup.c (isqualifier): New.
1015 (ctf_lookup_by_name): Likewise.
1016 (struct ctf_lookup_var_key): Likewise.
1017 (ctf_lookup_var): Likewise.
1018 (ctf_lookup_variable): Likewise.
1019 (ctf_lookup_symbol_name): Likewise.
1020 (ctf_lookup_by_symbol): Likewise.
1021 (ctf_func_info): Likewise.
1022 (ctf_func_args): Likewise.
1023
1024 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1025
1026 * ctf-decl.c: New file.
1027 * ctf-types.c: Likewise.
1028 * ctf-impl.h: New declarations.
1029
1030 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1031
1032 * ctf-open-bfd.c: New file.
1033 * ctf-open.c (ctf_close): New.
1034 * ctf-impl.h: Include bfd.h.
1035 (ctf_file): New members ctf_data_mmapped, ctf_data_mmapped_len.
1036 (ctf_archive_internal): New members ctfi_abfd, ctfi_data,
1037 ctfi_bfd_close.
1038 (ctf_bfdopen_ctfsect): New declaration.
1039 (_CTF_SECTION): likewise.
1040
1041 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1042
1043 * ctf-archive.c: New.
1044 * ctf-impl.h (ctf_archive_internal): New type.
1045 (ctf_arc_open_internal): New declaration.
1046 (ctf_arc_bufopen): Likewise.
1047 (ctf_arc_close_internal): Likewise.
1048
1049 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1050
1051 * ctf-open.c: New file.
1052 * swap.h: Likewise.
1053
1054 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1055
1056 * ctf-create.c: New file.
1057 * ctf-lookup.c: New file.
1058
1059 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1060
1061 * ctf-impl.h: New definitions and declarations for type creation
1062 and lookup.
1063
1064 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1065
1066 * ctf-hash.c: New file.
1067 * ctf-impl.h: New declarations.
1068
1069 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1070
1071 * ctf-error.c: New file.
1072
1073 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1074
1075 * ctf-util.c: New file.
1076 * elf.h: Likewise.
1077 * ctf-impl.h: Include it, and add declarations.
1078
1079 2019-05-28 Nick Alcock <nick.alcock@oracle.com>
1080
1081 * ctf-impl.h: New file.
1082 * ctf-subr.c: New file.
1083
1084 \f
1085 Local Variables:
1086 mode: change-log
1087 left-margin: 8
1088 fill-column: 76
1089 version-control: never
1090 End: