1 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
3 * Makefile.am (BASEDIR): New.
5 (check-DEJAGNU): Add development.exp to prerequisites.
6 (development.exp): New.
7 (CONFIG_STATUS_DEPENDENCIES): New.
8 (EXTRA_DEJAGNU_SITE_CONFIG): Likewise.
9 (DISTCLEANFILES): Likewise.
10 * Makefile.in: Regenerated.
11 * testsuite/lib/ctf-lib.exp (check_ctf_available): Return boolean.
12 * testsuite/libctf-lookup/lookup.exp: Call check_ctf_available.
13 * testsuite/libctf-regression/regression.exp: Likewise.
15 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
17 * ctf-types.c (ctf_type_aname): Print forwards to unions and enums
20 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
22 * ctf-impl.h (ctf_dict_t) <ctf_pptrtab>: New.
23 <ctf_pptrtab_len>: New.
24 <ctf_pptrtab_typemax>: New.
25 * ctf-create.c (ctf_serialize): Update accordingly.
26 (ctf_add_reftype): Note that we don't need to update pptrtab here,
27 despite updating ptrtab.
28 * ctf-open.c (ctf_dict_close): Destroy the pptrtab.
29 (ctf_import): Likewise.
30 (ctf_import_unref): Likewise.
31 * ctf-lookup.c (grow_pptrtab): New.
32 (refresh_pptrtab): New, update a pptrtab.
33 (ctf_lookup_by_name): Turn into a wrapper around (and rename to)...
34 (ctf_lookup_by_name_internal): ... this: construct the pptrtab, and
35 use it in addition to the parent's ptrtab when parent dicts are
37 * testsuite/libctf-regression/regression.exp: New testsuite for
39 * testsuite/libctf-regression/pptrtab*: New test.
40 * testsuite/libctf-writable/writable.exp: New testsuite for tests of
42 * testsuite/libctf-writable/pptrtab*: New test.
44 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
46 * ctf-archive.c (ctf_archive_iter): Remove outdated comment.
48 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
50 * ctf-impl.h (struct ctf_next) <u.ctn_next>: Move to...
52 * ctf-util.c (ctf_next_destroy): Unconditionally destroy it.
53 * ctf-lookup.c (ctf_symbol_next): Adjust accordingly.
54 * ctf-types.c (ctf_member_iter): Reimplement in terms of...
55 (ctf_member_next): ... this. Support recursive unnamed member
56 iteration (off by default).
57 (ctf_member_info): Look up members in unnamed sub-structs.
58 * ctf-dedup.c (ctf_dedup_rhash_type): Adjust ctf_member_next call.
59 (ctf_dedup_emit_struct_members): Likewise.
60 * testsuite/libctf-lookup/struct-iteration-ctf.c: Test empty unnamed
61 members, and a normal member after the end.
62 * testsuite/libctf-lookup/struct-iteration.c: Verify that
63 ctf_member_count is consistent with the number of successful returns
64 from a non-recursive ctf_member_next.
65 * testsuite/libctf-lookup/struct-iteration-*: New, test iteration
67 * testsuite/libctf-lookup/struct-lookup.c: New test.
68 * testsuite/libctf-lookup/struct-lookup.lk: New test.
70 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
72 * ctf-link.c (ctf_link_warn_outdated_inputs): New.
73 (ctf_link_write): Call it.
75 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
77 * testsuite/libctf-lookup/enum-symbol.lk: New symbol-lookup test.
78 * testsuite/libctf-lookup/enum-symbol-ctf.c: New CTF input.
79 * testsuite/libctf-lookup/enum-symbol.c: New lookup test.
81 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
83 * Makefile.am (EXPECT): New.
85 (RUNTESTFLAGS): Likewise.
86 (CC_FOR_TARGET): Likewise.
87 (check-DEJAGNU): Likewise.
88 (AUTOMAKE_OPTIONS): Add dejagnu.
89 * Makefile.in: Regenerated.
90 * testsuite/config/default.exp: New.
91 * testsuite/lib/ctf-lib.exp: Likewise.
92 * testsuite/libctf-lookup/enum.lk: New test.
93 * testsuite/libctf-lookup/enum-ctf.c: New CTF input.
94 * testsuite/libctf-lookup/enum.c: New lookup test.
95 * testsuite/libctf-lookup/ambiguous-struct*.c: New test.
96 * testsuite/libctf-lookup/lookup.exp: New.
98 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
100 * configure.ac (BFD_LIBADD): Remove.
101 (BFD_DEPENDENCIES): Likewise. Remove associated cases.
102 (SHARED_LIBADD): Rename to...
103 (CTF_LIBADD): ... this. Stick in a suitable libiberty even when
105 * Makefile.am (libctf_nobfd_la_LIBADD): Adjust accordingly.
107 (libctf_la_LIBADD): Reference libbfd.la directly, not via
109 (libctf_la_DEPENDENCIES): Remove.
110 * Makefile.in: Regenerate.
111 * configure: Likewise.
113 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
115 * ctf-decl.c (ctf_decl_push): Exclude slices from the decl stack.
116 * ctf-types.c (ctf_type_aname): No longer deal with slices here.
117 * ctf-dump.c (ctf_dump_membstate_t) <cdm_toplevel_indent>: Constify.
119 (CTF_FT_BITFIELD): Likewise.
120 (CTF_FT_ID): Likewise.
121 (ctf_dump_member): Do not do indentation here. Migrate the
122 type-printing parts of this into...
123 (ctf_dump_format_type): ... here, to be shared by all type printers.
124 Get the errno value for non-representable types right. Do not print
125 bitfield info for non-bitfields. Improve the format and indentation
126 of other type output. Shuffle spacing around to make all indentation
127 either 'width of column' or 4 chars.
128 (ctf_dump_label): Pass CTF_FT_REFS to ctf_dump_format_type.
129 (ctf_dump_objts): Likewise. Spacing shuffle.
130 (ctf_dump_var): Likewise.
131 (type_hex_digits): Migrate down in the file, to above its new user.
132 (ctf_dump_type): Indent here instead. Pass CTF_FT_REFS to
133 ctf_dump_format_type. Don't trim off excess linefeeds now we no
134 longer generate them. Dump enumerated types.
136 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
138 * ctf-types.c (ctf_type_resolve): Improve comment.
139 (ctf_type_size): Yield ECTF_INCOMPLETE when applied to forwards.
140 Emit errors into the right dict.
141 (ctf_type_align): Likewise.
142 * ctf-create.c (ctf_add_member_offset): Yield ECTF_INCOMPLETE
143 when adding a member without explicit offset when this member, or
144 the previous member, is incomplete.
145 * ctf-dump.c (ctf_dump_format_type): Do not try to print the size of
147 (ctf_dump_member): Do not try to print their alignment.
149 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
151 * ctf-dump.c (ctf_dump_objts): Dump by calling ctf_dump_format_type.
152 (ctf_dump_format_type): Don't emit the size for function objects.
153 Dump the element type of arrays like we dump the pointed-to type of
156 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
158 * ctf-dump.c (ctf_dump_format_type): Add 0x to hex type IDs.
159 (ctf_dump_header): Add 0x to the hex magic number.
160 (ctf_dump_str): Add 0x to the hex string offsets.
161 (ctf_dump_membstate_t) <cdm_toplevel_indent>: New.
162 (ctf_dump_type): Adjust. Free it when we're done.
163 (type_hex_digits): New.
164 (ctf_dump_member): Align output depending on the width of the type
165 ID being generated. Use printf padding, not a loop, to generate
168 2021-01-05 Nick Alcock <nick.alcock@oracle.com>
170 * ctf-decl.c (ctf_decl_push): Don't print array decls backwards.
172 2021-01-04 Nicolas Boulenguez <nicolas@debian.org>
175 * configure.ac: Make AC_CONFIG_MACRO_DIR consistent with
176 ACLOCAL_AMFLAGS -I dirs.
177 * configure: Regenerate.
179 2021-01-01 Alan Modra <amodra@gmail.com>
181 Update year range in copyright notice of all files.
183 For older changes see ChangeLog-2020
185 Copyright (C) 2021 Free Software Foundation, Inc.
187 Copying and distribution of this file, with or without modification,
188 are permitted in any medium without royalty provided the copyright
189 notice and this notice are preserved.
195 version-control: never