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