blob: a5c9dae1dd4e429610f823742e17d645b22ef00c [file] [log] [blame]
Petr Machata98c8a732013-11-26 03:10:31 +010012013-11-25 Petr Machata <pmachata@redhat.com>
2
3 * eblopenbackend.c (machines): Add entry for AArch64.
4
Jan Kratochvil1c1a53b2013-11-14 20:55:41 +010052013-11-14 Jan Kratochvil <jan.kratochvil@redhat.com>
6
7 Code cleanup: Remove const in prototype
8 * libebl.h (ebl_tid_registers_t): Remove const from firstreg.
9
Jan Kratochvil0b867462013-05-30 14:37:38 +0200102013-11-07 Jan Kratochvil <jan.kratochvil@redhat.com>
11 Mark Wielaard <mjw@redhat.com>
12
13 * Makefile.am (gen_SOURCES): Add eblinitreg.c.
14 * ebl-hooks.h (set_initial_registers_tid): New entry.
15 * eblinitreg.c: New file.
16 * libebl.h (ebl_tid_registers_t): New definition.
17 (ebl_set_initial_registers_tid, ebl_frame_nregs): New declarations.
18 * libeblP.h (struct ebl): New entry frame_nregs.
19
Mark Wielaard3dec3e12013-10-06 17:04:07 +0200202013-10-06 Mark Wielaard <mjw@redhat.com>
21
22 * libebl.h (ebl_abi_cfi): Document restrictions using register
23 rules.
24
Petr Machatab43bcfe2013-09-26 00:38:37 +0200252013-09-26 Petr Machata <pmachata@redhat.com>
26
27 * eblcorenotetypename.c: Handle NT_ARM_TLS, NT_ARM_HW_BREAK,
28 NT_ARM_HW_WATCH, NT_SIGINFO, NT_FILE.
29
Mark Wielaard2cfec292013-09-25 13:02:53 +0200302013-09-25 Mark Wielaard <mjw@redhat.com>
31
32 * eblsectionstripp.c (ebl_section_strip_p): Check shdr_l is not NULL.
33
Mark Wielaardcdaaf212013-04-25 16:50:11 -0400342013-04-24 Mark Wielaard <mjw@redhat.com>
35
36 * Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.
37
Jan Kratochvil0631d1f2012-10-12 20:43:21 +0200382012-10-12 Jan Kratochvil <jan.kratochvil@redhat.com>
39
40 * ebl-hooks.h (abi_cfi): Extend its comment for return value.
41 * eblopenbackend.c (default_abi_cfi): Return -1.
42 * libebl.h (ebl_abi_cfi): Extend its comment for return value.
43
Petr Machata96896012012-08-30 16:01:02 +0200442012-08-30 Petr Machata <pmachata@redhat.com>
45
46 * eblcorenotetypename.c: Handle PPC_VSX, X86_XSTATE,
47 S390_HIGH_GPRS, S390_TIMER, S390_TODCMP, S390_TODPREG, S390_CTRS,
48 S390_PREFIX, S390_LAST_BREAK, S390_SYSTEM_CALL, and ARM_VFP.
49
Jeff Kenton257dcf42012-08-22 09:00:03 -0400502012-08-22 Jeff Kenton <jkenton@tilera.com>
51
52 * eblopenbackend.c (machines): Add tilegx.
53
Mark Wielaarda0172d72012-06-25 17:18:53 +0200542011-06-26 Mark Wielaard <mjw@redhat.com>
55
56 * eblopenbackend.c (default_debugscn_p): Add .debug_macro.
57
Mark Wielaardbb9d1b42011-04-24 17:53:38 +0200582011-04-26 Mark Wielaard <mjw@redhat.com>
59
60 * libebl.h (ebl_object_note_type_name): Add const char *name arg.
61 * eblhooks.h (object_note_type_name): Likewise.
62 * eblopenbackend.c (default_object_note_type_name): Likewise.
63 * eblobjnotetypename.c (ebl_object_note_type_name): Likewise.
64 And print version if name is "stapsdt".
65 * eblobjnote.c (ebl_object_note): Add output for "stapsdt" notes.
66
Marek Polacekcde0b272011-03-21 23:46:56 +0100672011-03-21 Marek Polacek <mpolacek@redhat.com>
68
69 * ebldynamictagname.c: Fix typo in TLSDESC_GOT.
70
Mark Wielaarda062b6b2011-03-10 13:02:32 +0100712011-03-10 Mark Wielaard <mjw@redhat.com>
72
73 * Makefile.am (gen_SOURCES): Add eblstother.c.
74 * eblstother.c: New file.
75 * ebl-hooks.h: Add check_st_other_bits hook.
76 * eblopenbackend.c (default_check_st_other_bits): New function.
77 (fill_defaults): Hook default_check_st_other_bits.
78 * libebl.h (ebl_check_st_other_bits): New prototype.
79
Roland McGrath804e9ca2010-07-07 16:06:12 -0700802010-07-07 Roland McGrath <roland@redhat.com>
81
82 * eblopenbackend.c (default_debugscn_p): Match .gdb_index section.
83
Roland McGrath22359e22010-02-15 15:57:03 -0800842010-02-15 Roland McGrath <roland@redhat.com>
85
86 * Makefile.am: Use config/eu.am for common stuff.
87
Roland McGrath0ccbbcd2010-01-04 21:59:07 -0800882010-01-04 Roland McGrath <roland@redhat.com>
89
90 * eblcorenote.c (ebl_core_note): Take GElf_Nhdr * and name data
91 pointer instead of only n_type and n_descsz.
92 * libebl.h: Update declaration.
93 * ebl-hooks.h: Update core_note hook signature.
94 * eblopenbackend.c (default_core_note): Likewise.
95
Roland McGrathf80c9072009-10-14 12:35:47 -0700962009-10-14 Roland McGrath <roland@redhat.com>
97
98 * eblobjnote.c (ebl_object_note): Clean up NT_GNU_GOLD_VERSION printing.
99
Roland McGratha14b4eb2009-10-05 11:32:26 -07001002009-10-05 Roland McGrath <roland@redhat.com>
101
102 * eblopenbackend.c (default_debugscn_p): Match .debug_pubtypes and
103 .debug_types too.
104
Petr Machatad3a8b2d2009-09-02 20:46:08 +02001052009-09-02 Petr Machata <pmachata@redhat.com>
106
107 * libebl/eblstrtab.c (morememory): Allocate memory in multiples of
108 pagesize.
109
Petr Machata077a7082009-08-06 18:45:08 +02001102009-08-06 Petr Machata <pmachata@redhat.com>
111
112 * libebl/eblstrtab.c (ebl_strtabfinalize): Only call copystrings
113 if we have any strings to copy.
114
Mark Wielaardbc1b92e2009-07-26 08:33:18 -07001152009-07-26 Mark Wielaard <mjw@redhat.com>
116
Mark Wielaard2f5b79e2009-07-26 14:49:26 -0700117 * eblobjnote.c (ebl_object_note): Handle NT_GNU_GOLD_VERSION.
118
Mark Wielaardbc1b92e2009-07-26 08:33:18 -0700119 * eblobjnotetypename.c (ebl_object_note_type_name): Recognize
120 NT_GNU_GOLD_VERSION.
121
Roland McGrath3c84db32009-06-24 17:41:40 -07001222009-07-08 Roland McGrath <roland@redhat.com>
123
124 * ebl-hooks.h: Add abi_cfi hook.
125 * eblopenbackend.c (default_abi_cfi): New function.
126 (fill_defaults): Add initializer.
127 * eblabicfi.c: New file.
128 * Makefile.am (gen_SOURCES): Add it.
129 * libebl.h: Declare ebl_abi_cfi.
130
Ulrich Drepper70c442c2009-07-08 00:53:24 -07001312009-07-08 Ulrich Drepper <drepper@redhat.com>
132
133 * eblsymbolbindingname.c (ebl_symbol_binding_name): Handle
134 STB_GNU_UNIQUE.
135
136 * eblsymboltypename.c (ebl_symbol_type_name): Only handle STT_GNU_IFUNC
137 if the binary is marked as being for Linux.
138
Roland McGrathd5ff6672009-04-01 18:28:41 -07001392009-04-01 Roland McGrath <roland@redhat.com>
140
141 * eblsymboltypename.c (ebl_symbol_type_name): Add STT_GNU_IFUNC.
142
143 * eblauxvinfo.c (AUXV_TYPES): Add RANDOM and BASE_PLATFORM.
144
Ulrich Drepper95fa15e2009-02-01 19:06:10 -08001452009-02-01 Ulrich Drepper <drepper@redhat.com>
146
147 * eblreloctypename.c (ebl_reloc_type_name): Return "<INVALID RELOC>"
148 instead of "???" for invalid relocations.
149
Roland McGratha845f682008-12-03 03:41:58 +00001502008-08-01 Roland McGrath <roland@redhat.com>
151
152 * eblcorenotetypename.c: Handle NT_386_IOPERM.
153
Roland McGrath1d8bb252008-08-07 08:39:41 +00001542008-07-28 Roland McGrath <roland@redhat.com>
155
156 * eblauxvinfo.c (AUXV_TYPES): Add EXECFN.
157
158 * eblauxvinfo.c (ebl_auxv_info): Handle missing elements of standard
159 table.
160
1612008-07-04 Roland McGrath <roland@redhat.com>
162
163 * libebl.h: Declare ebl_syscall_abi.
164 * ebl_syscall_abi.c: New file.
165 * Makefile.am (gen_SOURCES): Add it.
166 * ebl-hooks.h: New hook syscall_abi.
167 * eblopenbackend.c (default_syscall_abi): New function.
168 (fill_defaults): Use it.
169
Roland McGrath13b69602008-04-01 02:30:05 +00001702008-03-31 Roland McGrath <roland@redhat.com>
171
172 * ebldynamictagname.c (ebl_dynamic_tag_name): Use hex for unknown tag.
173
174 * ebl-hooks.h: Add check_special_section hook.
175 * eblopenbackend.c (fill_defaults): Set new hook to ...
176 (default_check_special_section): ... this, new function.
177 * ebl_check_special_section.c: New file.
178 * Makefile.am (gen_SOURCES): Add it.
179 * libebl.h: Declare it.
180
Roland McGrath059c83e2008-02-21 06:19:39 +00001812008-02-20 Roland McGrath <roland@redhat.com>
182
183 * libebl.h: Declare ebl_check_object_attribute.
184 * eblcheckobjattr.c: New file.
185 * Makefile.am (gen_SOURCES): Add it.
186 * ebl-hooks.h: Add check_object_attribute hook.
187 * eblopenbackend.c (default_check_object_attribute): New function.
188 (fill_defaults): Initialize pointer to it.
189
1902008-02-19 Roland McGrath <roland@redhat.com>
191
192 * eblsectiontypename.c (ebl_section_type_name):
193 Handle SHT_GNU_ATTRIBUTES.
194
1952008-02-08 Roland McGrath <roland@redhat.com>
196
197 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_SPE.
198
1992008-01-30 Roland McGrath <roland@redhat.com>
200
201 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_386_TLS.
202
Roland McGrathe4c22ea2007-10-23 13:07:39 +00002032007-10-18 Roland McGrath <roland@redhat.com>
204
205 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_VMX.
206
Ulrich Drepperb597dfa2007-10-16 05:21:27 +00002072007-10-11 Roland McGrath <roland@redhat.com>
208
209 * eblobjnote.c (ebl_object_note): Translate target format (byte-swap)
210 for NT_GNU_ABI_TAG contents.
211
Roland McGrathcb6d8652007-08-23 08:10:54 +00002122007-08-22 Roland McGrath <roland@redhat.com>
213
214 * libebl.h (Ebl_Core_Item): New member `group'.
215
2162007-08-19 Roland McGrath <roland@redhat.com>
217
218 * ebl-hooks.h: Add new hook auxv_info.
219 * eblopenbackend.c (default_auxv_info): New function.
220 (fill_defaults): Initialize auxv_info hook.
221 * eblauxvinfo.c : New file.
222 * Makefile.am (gen_SOURCES): Add it.
223 * libebl.h: Declare ebl_auxv_info.
224
225 * eblcorenote.c: Rewritten with new signature.
226 * Makefile.am (gen_SOURCES): Add it.
227 * libebl.h (Ebl_Register_Location, Ebl_Core_Item): New types.
228 (ebl_core_note_info): Completely revamp signature.
229 * ebl-hooks.h: Update decl.
230 * eblopenbackend.c (default_core_note): Update signature.
231
Roland McGrath87d47802007-07-16 22:23:37 +00002322007-07-09 Roland McGrath <roland@redhat.com>
233
234 * eblobjnotetypename.c (ebl_object_note_type_name): Handle
235 NT_GNU_HWCAP, NT_GNU_BUILD_ID.
236
237 * eblobjnote.c (ebl_object_note): Handle NT_GNU_BUILD_ID.
238
Roland McGrath4be15242007-04-25 03:09:33 +00002392007-04-22 Roland McGrath <roland@redhat.com>
240
241 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PRXFPREG.
242
Ulrich Drepperc07fbb32007-03-30 19:14:59 +00002432007-03-10 Roland McGrath <roland@redhat.com>
244
245 * eblcorenote.c (ebl_core_note): For normally-zero types,
246 print in hex if not zero.
247
Ulrich Drepperaa915fd2007-02-05 07:25:33 +00002482007-01-11 Roland McGrath <roland@redhat.com>
249
250 * ebl-hooks.h (machine_section_flag_check): New hook.
251 * libebl.h: Declare ebl_machine_section_flag_check.
252 * eblmachinesectionflagcheck.c: New file.
253 * Makefile.am (gen_SOURCES): Add it.
254 * eblopenbackend.c (default_machine_section_flag_check): New function.
255 (fill_defaults): Use it.
256
Roland McGrathc373d852006-10-10 00:25:21 +00002572006-09-04 Roland McGrath <roland@redhat.com>
258
259 * ebl-hooks.h: Replace register_name hook with register_info.
260 Also yield natural bit width and base type encoding.
261 * eblopenbackend.c (default_register_name): Renamed
262 default_register_info, new args added.
263 (fill_defaults): Update initialization.
264 * eblregname.c: File renamed ...
265 * eblreginfo.c: ... to this.
266 (ebl_register_name): Renamed to ebl_register_info, new args added.
267 * libebl.h: Update decl.
268
269 * Makefile.am (gen_SOURCES): Update list.
270
Ulrich Drepper28ed8952006-07-07 03:43:47 +00002712006-07-06 Ulrich Drepper <drepper@redhat.com>
272
273 * ebldynamictagname.c: Add support for DT_GNU_HASH.
274 * ebldynamictagcheck.c: Likewise.
275 * eblsectiontypename.c: Add support for SHT_GNU_HASH.
276
2772006-07-05 Ulrich Drepper <drepper@redhat.com>
278
279 * Makefile.am (gen_SOURCES): Add eblsysvhashentrysize.c.
280 * libeblP.h (struct ebl): Add sysvhash_entrysize element.
281 * eblopenbackend.c (fill_defaults): Initialize sysvhash_entrysize.
282
283 * eblopenbackend.c (openbackend): If possible, fill machine, class,
284 and data values in from the ELF file.
285
2862006-07-04 Ulrich Drepper <drepper@redhat.com>
287
288 * Makefile.am (gen_SOURCES): Add eblrelativerelocp.c.
289 * eblrelativerelocp.c: New file.
290 * ebl-hooks.c: Add relative_reloc_p.
291 * eblopenbackend.c (default_relative_reloc_p): New function.
292 (fill_defaults): Hook it up.
293 * libebl.h: Declare ebl_relative_reloc_p.
294
Ulrich Drepper6ca46002006-06-12 22:40:23 +00002952006-06-12 Ulrich Drepper <drepper@redhat.com>
296
297 * Makefile.am (gen_SOURCES): Add eblnonerelocp.c.
298 * eblnonerelocp.c: New file.
299 * ebl-hooks.c: Add none_reloc_p.
300 * eblopenbackend.c (default_none_reloc_p): New function.
301 (fill_defaults): Hook it up.
302 * libebl.h: Declare ebl_none_reloc_p.
303
Ulrich Drepper41cbd762006-05-27 18:19:23 +00003042006-05-27 Ulrich Drepper <drepper@redhat.com>
305
306 * libebl.h: Add extern "C".
307
Roland McGrath994b4892005-12-05 22:46:21 +00003082005-11-25 Roland McGrath <roland@redhat.com>
309
310 * eblregname.c: New file.
311 * Makefile.am (gen_SOURCES): Add it.
312 * ebl-hooks.h: Declare register_name hook.
313 * libebl.h: Declare ebl_register_name.
314 * eblopenbackend.c (default_register_name): New function.
315 (fill_defaults): Use it.
316
Roland McGrath215c6322005-11-16 22:46:04 +00003172005-11-16 Roland McGrath <roland@redhat.com>
318
319 * libebl.h: Use "" for elf-knowledge.h, not <>.
320
Roland McGrathe47ab762005-11-17 03:16:00 +00003212005-11-15 Roland McGrath <roland@redhat.com>
322
323 * Makefile.am: Removed everything for building libebl_*.so modules,
324 now in ../backends/Makefile.am instead.
325 * alpha_init.c: Moved to ../backends.
326 * alpha_reloc.def: Likewise.
327 * alpha_retval.c: Likewise.
328 * alpha_symbol.c: Likewise.
329 * arm_init.c: Likewise.
330 * arm_reloc.def: Likewise.
331 * arm_symbol.c: Likewise.
332 * common-reloc.c: Likewise.
333 * i386_corenote.c: Likewise.
334 * i386_init.c: Likewise.
335 * i386_reloc.def: Likewise.
336 * i386_retval.c: Likewise.
337 * i386_symbol.c: Likewise.
338 * ia64_init.c: Likewise.
339 * ia64_reloc.def: Likewise.
340 * ia64_symbol.c: Likewise.
341 * libebl_CPU.h: Likewise.
342 * ppc64_init.c: Likewise.
343 * ppc64_reloc.def: Likewise.
344 * ppc64_retval.c: Likewise.
345 * ppc64_symbol.c: Likewise.
346 * ppc_init.c: Likewise.
347 * ppc_reloc.def: Likewise.
348 * ppc_retval.c: Likewise.
349 * ppc_symbol.c: Likewise.
350 * s390_init.c: Likewise.
351 * s390_reloc.def: Likewise.
352 * s390_symbol.c: Likewise.
353 * sh_init.c: Likewise.
354 * sh_reloc.def: Likewise.
355 * sh_symbol.c: Likewise.
356 * sparc_init.c: Likewise.
357 * sparc_reloc.def: Likewise.
358 * sparc_symbol.c: Likewise.
359 * x86_64_corenote.c: Likewise.
360 * x86_64_init.c: Likewise.
361 * x86_64_reloc.def: Likewise.
362 * x86_64_retval.c: Likewise.
363 * x86_64_symbol.c: Likewise.
364
365 * libebl.h: Comment fixes.
366
367 * alpha_retval.c: New file.
368 * Makefile.am (alpha_SRCS): Add it.
369 * alpha_init.c (alpha_init): Initialize return_value_location hook.
370
371 * ppc64_retval.c: New file.
372 * Makefile.am (ppc64_SRCS): Add it.
373 * ppc64_init.c (ppc64_init): Initialize return_value_location hook.
374
375 * ppc_retval.c: New file.
376 * Makefile.am (ppc_SRCS): Add it.
377 * ppc_init.c (ppc_init): Initialize return_value_location hook.
378
Roland McGrathcd60ea82005-11-16 01:57:40 +00003792005-11-14 Roland McGrath <roland@redhat.com>
380
381 * ia64_init.c (ia64_init): Initialize EH->reloc_simple_type.
382 * sh_init.c (sh_init): Likewise.
383 * x86_64_init.c (x86_64_init): Likewise.
384
385 * sparc_symbol.c (sparc_reloc_simple_type): New function.
386 * sparc_init.c (sparc_init): Use it.
387
388 * arm_symbol.c (arm_reloc_simple_type): New function.
389 * arm_init.c (arm_init): Use it.
390
391 * alpha_symbol.c (alpha_reloc_simple_type): New function.
392 * alpha_init.c (alpha_init): Use it.
393
394 * ia64_reloc.def: Update bits per H. J. Lu <hjl@lucon.org>.
395
396 * arm_reloc.def: Update bits per Daniel Jacobowitz <drow@false.org>.
397
398 * alpha_reloc.def: Update bits per Richard Henderson <rth@redhat.com>.
399
Roland McGrathe47ab762005-11-17 03:16:00 +00004002005-11-13 Roland McGrath <roland@redhat.com>
401
402 * x86_64_retval.c: New file.
403 * Makefile.am (x86_64_SRCS): Add it.
404 * x86_64_init.c (x86_64_init): Use x86_64_return_value_location.
405
406 * i386_retval.c: New file.
407 * Makefile.am (i386_SRCS): Add it.
408 (libdw): New variable.
409 (libebl_%.so): Use $(libdw) in link; use --as-needed.
410 * i386_init.c (i386_init): Use i386_return_value_location.
411
412 * eblretval.c: New file.
413 * Makefile.am (gen_SOURCES): Add it.
414 (INCLUDES): Search in libdw.
415 * libebl.h: Include <libdw.h>. Declare ebl_return_value_location.
416 * ebl-hooks.h: Declare return_value_location hook.
417 * eblopenbackend.c (default_return_value_location): New function.
418 (fill_defaults): Use it.
419
Roland McGrathcd60ea82005-11-16 01:57:40 +00004202005-11-10 Roland McGrath <roland@redhat.com>
421
422 * s390_init.c: New file.
423 * s390_reloc.def: New file.
424 * s390_symbol.c: New file.
425 * Makefile.am (modules, libebl_pic): Add s390.
426 (s390_SRCS, libebl_s390_pic_a_SOURCES): New variables.
427 (am_libebl_s390_pic_a_OBJECTS): New variable.
428
429 * ppc64_init.c: Use common-reloc.c.
430 * ppc64_symbol.c (ppc64_backend_name): Removed.
431 (ppc64_reloc_type_check, ppc64_reloc_type_name): Likewise.
432 (ppc64_copy_reloc_p, ppc64_reloc_valid_use): Likewise.
433
434 * ppc_init.c: Use common-reloc.c.
435 * ppc_symbol.c (ppc_backend_name): Removed.
436 (ppc_reloc_type_name, ppc_reloc_type_check): Likewise.
437 (ppc_reloc_valid_use, ppc_copy_reloc_p): Likewise.
438
439 * sparc_init.c: Use common-reloc.c.
440 * sparc_symbol.c (sparc_backend_name): Removed.
441 (sparc_reloc_type_name, sparc_reloc_type_check): Likewise.
442 (sparc_copy_reloc_p): Likewise.
443
444 * arm_init.c: Use common-reloc.c.
445 * arm_symbol.c (arm_backend_name): Removed.
446 (arm_reloc_type_name, arm_reloc_type_check, arm_copy_reloc_p): Removed.
447
448 * alpha_init.c: Use common-reloc.c.
449 * alpha_symbol.c (alpha_backend_name): Removed.
450 (alpha_reloc_type_name, alpha_reloc_type_check): Likewise.
451 (alpha_copy_reloc_p): Likewise.
452
453 * ia64_symbol.c (ia64_backend_name): Removed.
454 (ia64_reloc_type_name, ia64_reloc_type_check): Likewise.
455 (ia64_copy_reloc_p): Likewise.
456
457 * x86_64_init.c: Use common-reloc.c.
458 * x86_64_symbol.c (x86_64_backend_name): Removed.
459 (x86_64_copy_reloc_p, x86_64_reloc_valid_use): Likewise.
460 (x86_64_reloc_type_check, x86_64_reloc_type_name): Likewise.
461
462 * sh_init.c: Use common-reloc.c.
463 * sh_symbol.c: All functions removed.
464 (sh_reloc_simple_type): New function.
465 (sh_gotpc_reloc_check): New function.
466
467 * common-reloc.c: New file.
468 * Makefile.am (noinst_HEADERS): Add it.
469 * i386_init.c: Include it.
470
471 * sh_reloc.def: New file.
472 * i386_reloc.def: New file.
473 * alpha_reloc.def: New file.
474 * arm_reloc.def: New file.
475 * i386_reloc.def: New file.
476 * ia64_reloc.def: New file.
477 * ppc64_reloc.def: New file.
478 * ppc_reloc.def: New file.
479 * sh_reloc.def: New file.
480 * sparc_reloc.def: New file.
481 * x86_64_reloc.def: New file.
482 * Makefile.am (EXTRA_DIST): Add $(modules:=_reloc.def).
483
484 * libebl_alpha.map: Removed.
485 * libebl_ia64.map: Removed.
486 * libebl_ppc.map: Removed.
487 * libebl_sparc.map: Removed.
488 * libebl_arm.map: Removed.
489 * libebl_i386.map: Removed.
490 * libebl_ppc64.map: Removed.
491 * libebl_sh.map: Removed.
492 * libebl_x86_64.map: Removed.
493 * Makefile.am (EXTRA_DIST): Remove them.
494 (libebl_%.map, libebl_%.so): New pattern rules.
495
496 * libebl_alpha.h: Removed.
497 * libebl_ia64.h: Removed.
498 * libebl_ppc.h: Removed.
499 * libebl_sparc.h: Removed.
500 * libebl_arm.h: Removed.
501 * libebl_i386.h: Removed.
502 * libebl_ppc64.h: Removed.
503 * libebl_sh.h: Removed.
504 * libebl_x86_64.h: Removed.
505 * Makefile.am (noinst_HEADERS): Remove them.
506
507 * x86_64_corenote.c: Use libebl_CPU.h instead.
508 * x86_64_symbol.c: Likewise.
509 * i386_corenote.c: Likewise.
510
5112005-11-09 Roland McGrath <roland@redhat.com>
512
513 * ia64_symbol.c (ia64_reloc_simple_type): New function.
514
515 * ebl-hooks.h (reloc_simple_type): Take the Ebl handle, not Elf handle.
516 * eblrelocsimpletype.c (ebl_reloc_simple_type): Update caller.
517 * eblopenbackend.c (default_reloc_simple_type): Update signature.
518 * i386_symbol.c (i386_reloc_simple_type): Likewise.
519 * ppc64_symbol.c (ppc64_reloc_simple_type): Likewise.
520 * ppc_symbol.c (ppc_reloc_simple_type): Likewise.
521 * x86_64_symbol.c (x86_64_reloc_simple_type): Likewise.
522
523 * i386_symbol.c (i386_backend_name): Removed.
524 (i386_reloc_type_name, i386_reloc_type_check): Likewise.
525 (i386_reloc_valid_use): Removed.
526 (i386_copy_reloc_p): Removed.
527
528 * alpha_destr.c: Removed.
529 * arm_destr.c: Removed.
530 * i386_destr.c: Removed.
531 * ia64_destr.c: Removed.
532 * ppc64_destr.c: Removed.
533 * ppc_destr.c: Removed.
534 * sh_destr.c: Removed.
535 * sparc_destr.c: Removed.
536 * x86_64_destr.c: Removed.
537
538 * ebl-hooks.h: New file, broken out of ...
539 * libeblP.h (struct ebl): ... here. #include that for hook
540 declarations, after defining EBLHOOK macro.
541 * libebl_CPU.h: New file.
542 * Makefile.am (noinst_HEADERS): Add them.
543
544 * libeblP.h (struct ebl): Use uint_fast16_t for machine,
545 and uint_fast8_t for class and data.
546
5472005-08-14 Roland McGrath <roland@redhat.com>
548
549 * ia64_symbol.c (ia64_section_type_name): New function.
550 (ia64_dynamic_tag_check): New function.
551 (ia64_reloc_valid_use): New function.
552 * libebl_ia64.h: Declare them.
553 * ia64_init.c (ia64_init): Use them.
554 * Makefile.am (libebl_ia64.so): Link with libelf.
555
Ulrich Drepperfbe998a2005-08-29 16:27:10 +00005562005-08-28 Ulrich Drepper <drepper@redhat.com>
557
558 * Makefile.am: Use $(LINK) not $(CC) when creating DSOs.
559
Roland McGrathe53d04a2005-08-13 20:56:07 +00005602005-08-13 Roland McGrath <roland@redhat.com>
561
562 * ia64_symbol.c (ia64_machine_flag_check): New function.
563 * libebl_ia64.h: Declare it.
564 * ia64_init.c (ia64_init): Use it.
565
Ulrich Drepperc5c33a62005-08-13 17:50:47 +00005662005-08-13 Ulrich Drepper <drepper@redhat.com>
567
568 * libebl.h: Add ehdr parameter to ebl_bss_plt_p and
569 ebl_check_special_symbol.
570 * libeblP.h (struct ebl): Adjust callback functions.
571 * eblopenbackend.c: Adjust dummy functions.
572 * ebl_check_special_symbol.c: Add parameter and pass it on.
573 * eblbsspltp.c: Likewise.
574 * ppc_symbol.c (find_dyn_got): With ehdr passed, simplify search for
575 the dynamic section entry.
576 (ppc_check_special_symbol): Add ehdr parameter.
577 (ppc_bss_plt_p): Likewise.
578 * libebl_ppc.h: Adjust prototypes.
579 * ppc64_symbol.c (ppc_check_special_symbol): Add ehdr parameter.
580 (ppc_bss_plt_p): Likewise.
581 * libebl_ppc64.h: Adjust prototypes.
582
Roland McGrath653d3762005-08-13 01:59:10 +00005832005-08-12 Roland McGrath <roland@redhat.com>
584
Roland McGrathf8873cb2005-08-13 03:26:06 +0000585 * ppc_symbol.c (find_dyn_got): New function, broken out of ...
586 (ppc_bss_plt_p): ... here. Call that.
587 (ppc_check_special_symbol): Use find_dyn_got to fetch value to check
588 against _GLOBAL_OFFSET_TABLE_.
589
Roland McGrath653d3762005-08-13 01:59:10 +0000590 * libeblP.h (struct ebl): Add bss_plt_p hook.
591 * eblopenbackend.c (default_bss_plt_p): New function.
592 (fill_defaults): Use it.
593 * eblbsspltp.c: New file.
594 * Makefile.am (gen_SOURCES): Add it.
595 * libebl.h: Declare ebl_bss_plt_p.
596 * ppc_symbol.c (ppc_bss_plt_p): New function.
597 * libebl_ppc.h: Declare it.
598 * ppc_init.c (ppc_init): Use it.
599 * ppc64_symbol.c (ppc64_bss_plt_p): New function.
600 * libebl_ppc64.h: Declare it.
601 * ppc64_init.c (ppc64_init): Use it.
602
603 * ebl_check_special_symbol.c: New file.
604 * Makefile.am (gen_SOURCES): Add it.
605 * libebl.h: Declare ebl_check_special_symbol.
606 * libeblP.h (struct ebl): Add check_special_symbol hook.
607 * eblopenbackend.c (default_check_special_symbol): New function.
608 (fill_defaults): Use it.
609 * ppc_symbol.c (ppc_check_special_symbol): New function.
610 * libebl_ppc.h: Add prototype.
611 * ppc_init.c (ppc_init): Use it.
612 * ppc64_symbol.c (ppc64_check_special_symbol): New function.
613 * libebl_ppc64.h: Add prototype.
614 * ppc64_init.c (ppc64_init): Use it.
615
Ulrich Drepperb03b0572005-08-07 08:12:22 +00006162005-08-07 Ulrich Drepper <drepper@redhat.com>
617
618 * ppc_init.c: Add support for new DT_PPC_* and R_PPC_* values.
619 * ppc_symbol.c: Likewise.
620 * libebl_ppc.h: Likewise.
621 * ppc64_init.c: There is now also a dynamic_tag_check functions
622 * ppc64_symbol.c: Add dynamic_tag_check.
623 * libebl_ppc64.h: Add prototype.
624 * alpha_init.c: Add support for new DT_ALPHA_* value.
625 * alpha_symbol.c: Likewise.
626 * libebl_alpha.h: Likewise.
627
Ulrich Drepper6fcb3832005-08-03 21:10:49 +00006282005-08-03 Ulrich Drepper <drepper@redhat.com>
629
630 * libebl_alpha.map: Remove unnecessary exports.
631 * libebl_arm.map: Likewise.
632 * libebl_i386.map: Likewise.
633 * libebl_ia64.map: Likewise.
634 * libebl_ppc.map: Likewise.
635 * libebl_ppc64.map: Likewise.
636 * libebl_sh.map: Likewise.
637 * libebl_sparc.map: Likewise.
638 * libebl_x86_64.map: Likewise.
639
Ulrich Dreppera38998e2005-08-03 02:05:39 +00006402005-08-02 Ulrich Drepper <drepper@redhat.com>
641
642 * Makefile.am (libebl_a_SOURCES): Add eblelfclass.c, eblelfdata.c,
643 and eblelfmachine.c.
644 * elbopenbackend.c (machines): Add class and data fields. Initialize
645 them.
646 (ebl_openbackend): Initialize machine, class, data fields in result.
647 * libebl.h: Declare Add eblelfclass, eblelfdata, and eblelfmachine.
648 * libeblP.h (Ebl): Add machine, class, data fields.
649
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00006502005-07-23 Ulrich Drepper <drepper@redhat.com>
651
652 * eblsectionstripp.c: New file.
653 * Makefile.am (gen_SOURCES): Add eblsectionstripp.c.
654 * i386_init.c (i386_init): Install specific debugscn_p callback.
655 * i386_symbol.c (i386_debugscn_p): New function.
656 * libebl.h: Declare ebl_section_strip_p.
657 * libebl_i386.h: Declare i386_debugscn_p.
658
659 * libebl.h: Move Ebl definition to...
660 * libeblP.h: ...here.
661
6622005-07-21 Roland McGrath <roland@redhat.com>
663
664 * Makefile.am (install-ebl-modules): New target, commands from ...
665 (install): ... here. Make this depend on it.
666 (LIBEBL_SUBDIR): New variable, substituted by configure.
667 (install-ebl-modules): Install in $(libdir)/$(LIBEBL_SUBDIR).
668 * eblopenbackend.c (openbackend): Use LIBEBL_SUBDIR in module name.
669
6702005-07-21 Ulrich Drepper <drepper@redhat.com>
671
672 * eblcopyrelocp.c: New file.
673 * Makefile.am (gen_SOURCES): Add eblcopyrelocp.c.
674 * libebl.h: Declare ebl_copy_reloc_p.
675 * eblopenbackend.c (fill_defaults): Fill in copy_reloc_p.
676 (default_copy_reloc_p): New function.
677 * alpha_init.c: Define and use arch-specific copy_reloc_p function.
678 * alpha_symbol.c: Likewise.
679 * arm_init.c: Likewise.
680 * arm_symbol.c: Likewise.
681 * i386_init.c: Likewise.
682 * i386_symbol.c: Likewise.
683 * ia64_init.c: Likewise.
684 * ia64_symbol.c: Likewise.
685 * ppc64_init.c: Likewise.
686 * ppc64_symbol.c: Likewise.
687 * ppc_init.c: Likewise.
688 * ppc_symbol.c: Likewise.
689 * sh_init.c: Likewise.
690 * sh_symbol.c: Likewise.
691 * sparc_init.c: Likewise.
692 * sparc_symbol.c: Likewise.
693 * x86_64_init.c: Likewise.
694 * x86_64_symbol.c: Likewise.
695 * libebl_alpha.h: Declare the copy_reloc_p function.
696 * libebl_arm.h: Likewise.
697 * libebl_i386.h: Likewise.
698 * libebl_ia64.h: Likewise.
699 * libebl_ppc.h: Likewise.
700 * libebl_ppc64.h: Likewise.
701 * libebl_sh.h: Likewise.
702 * libebl_sparc.h: Likewise.
703 * libebl_x86_64.h: Likewise.
704
7052005-05-31 Roland McGrath <roland@redhat.com>
706
707 * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency
708 tracking works right.
709
7102005-05-21 Ulrich Drepper <drepper@redhat.com>
711
712 * libebl_x86_64.map: Add x86_64_core_note.
713
7142005-05-19 Roland McGrath <roland@redhat.com>
715
716 * libebl_i386.map: Add i386_reloc_valid_use, i386_reloc_simple_type.
717 * libebl_ppc.map: Add ppc_reloc_simple_type.
718 * libebl_ppc64.map: Add ppc64_reloc_simple_type.
719 * libebl_x86_64.map: Add x86_64_reloc_simple_type.
720
7212005-05-11 Ulrich Drepper <drepper@redhat.com>
722
723 * eblcorenote.c: Handle new AT_* values and files with different
724 endianess.
725 * Makefile.am (x86_64_SRCS): Add x86_64_corenote.c.
726 * x86-64_corenote.c: New file.
727 * x86_64_init.c: Hook in x86_64_corenote.
728 * i386_corenote.c: Make file usable on 64-bit platforms.
729
730 * eblopenbackend.c: If modules version comparison fails, reinitialize
731 hooks.
732
7332005-05-10 Ulrich Drepper <drepper@redhat.com>
734
735 * eblopenbackend.c: Require the init function to return a string.
736 Compare it with MODVERSION from config.h.
737 * alpha_init.c: Change return type. Return MODVERSION or NULL.
738 * arm_init.c: Likewise.
739 * eblopenbackend.c: Likewise.
740 * i386_init.c: Likewise.
741 * ia64_init.c: Likewise.
742 * ppc64_init.c: Likewise.
743 * ppc_init.c: Likewise.
744 * sh_init.c: Likewise.
745 * sparc_init.c: Likewise.
746 * x86_64_init.c: Likewise.
747 * libeblP.h: Adjust ebl_bhinit_t.
748 * libebl_alpha.h: Adjust init function prototype.
749 * libebl_arm.h: Likewise.
750 * libebl_i386.h: Likewise.
751 * libebl_ia64.h: Likewise.
752 * libebl_ppc.h: Likewise.
753 * libebl_ppc64.h: Likewise.
754 * libebl_sh.h: Likewise.
755 * libebl_sparc.h: Likewise.
756 * libebl_x86_64.h: Likewise.
757
758 * mips_destr.c: Removed.
759 * mips_init.c: Removed.
760 * mips_symbol.c: Removed.
761 * libebl_mips.h: Removed.
762 * libebl_mips.map: Removed.
763
7642005-05-03 Roland McGrath <roland@redhat.com>
765
766 * libebl.h (Ebl): Add `reloc_simple_type' member.
767 * eblopenbackend.c (default_reloc_simple_type): New function.
768 (openbackend): Use that as default reloc_simple_type callback.
769 * eblrelocsimpletype.c: New file.
770 * Makefile.am (gen_SOURCES): Add it.
771 * i386_symbol.c (i386_reloc_simple_type): New function.
772 * libebl_i386.h: Declare it.
773 * i386_init.c (i386_init): Use it.
774 * x86_64_symbol.c (x86_64_reloc_simple_type): New function.
775 * libebl_x86_64.h: Declare it.
776 * x86_64_init.c (x86_64_init): Use it.
777 * ppc_symbol.c (ppc_reloc_simple_type): New function.
778 * libebl_ppc.h: Declare it.
779 * ppc_init.c (ppc_init): Use it.
780 * ppc64_symbol.c (ppc64_reloc_simple_type): New function.
781 * libebl_ppc64.h: Declare it.
782 * ppc64_init.c (ppc64_init): Use it.
783
7842005-03-17 Ulrich Drepper <drepper@redhat.com>
785
786 * eblcorenote.c (ebl_core_note): Add support for AT_SECURE.
787
7882005-02-15 Ulrich Drepper <drepper@redhat.com>
789
790 * Makefile.am (AM_CFLAGS): Add -Wformat=2.
791
7922005-02-14 Ulrich Drepper <drepper@redhat.com>
793
794 * alpha_destr.c: Add __attribute__((unused)) where needed.
795 * alpha_init.c: Likewise.
796 * alpha_symbol.c: Likewise.
797 * arm_destr.c: Likewise.
798 * arm_init.c: Likewise.
799 * arm_symbol.c: Likewise.
800 * i386_corenote.c: Likewise.
801 * i386_destr.c: Likewise.
802 * i386_init.c: Likewise.
803 * i386_symbol.c: Likewise.
804 * ia64_destr.c: Likewise.
805 * ia64_init.c: Likewise.
806 * ia64_symbol.c: Likewise.
807 * mips_destr.c: Likewise.
808 * mips_init.c: Likewise.
809 * mips_symbol.c: Likewise.
810 * ppc64_destr.c: Likewise.
811 * ppc64_init.c: Likewise.
812 * ppc64_symbol.c: Likewise.
813 * ppc_destr.c: Likewise.
814 * ppc_init.c: Likewise.
815 * ppc_symbol.c: Likewise.
816 * sh_destr.c: Likewise.
817 * sh_init.c: Likewise.
818 * sh_symbol.c: Likewise.
819 * sparc_destr.c: Likewise.
820 * sparc_init.c: Likewise.
821 * sparc_symbol.c: Likewise.
822 * x86_64_destr.c: Likewise.
823 * x86_64_init.c: Likewise.
824 * x86_64_symbol.c: Likewise.
825
826 * x86_64_symbol.c (reloc_map_table): Fix entries for R_X86_64_64
827 and R_X86_64_32..
828
8292005-02-06 Ulrich Drepper <drepper@redhat.com>
830
831 * eblstrtab.c: A few cleanups.
832
833 * eblopenbackend.c: Mark unused parameters.
834
835 * eblgstrtab.c: Cleanups a few printf format strings.
836
837 * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra.
838
8392005-02-05 Ulrich Drepper <drepper@redhat.com>
840
841 * Makefile.am: Check for text relocations in constructed DSOs.
842
843 * eblstrtab.c: Minor cleanups.
844
845 * Makefile.am (AM_CFLAGS): Add -std=gnu99 and -fmudflap for MUDFLAP.
846
8472004-08-16 Ulrich Drepper <drepper@redhat.com>
848
849 * Makefile.am (AM_CFLAGS): Add LIBSTR definition with base name of
850 the lib directory.
851 * eblopenbackend.c (openbackend): Use LIBSTR instead of hardcoded
852 lib in path to ebl modules.
853
8542004-04-01 Ulrich Drepper <drepper@redhat.com>
855
856 * Makefile.am: Add rules for ppc and ppc64 ebl module.
857 * ppc_init..c: New file.
858 * ppc_destr.c: New file.
859 * ppc_symbol.c: New file.
860 * libebl_ppc.h: New file.
861 * libebl_ppc.map: New file.
862 * ppc64_init..c: New file.
863 * ppc64_destr.c: New file.
864 * ppc64_symbol.c: New file.
865 * libebl_ppc64.h: New file.
866 * libebl_ppc64.map: New file.
867
8682004-01-20 Ulrich Drepper <drepper@redhat.com>
869
870 * Makefile.am: Support building with mudflap.
871
8722004-01-18 Ulrich Drepper <drepper@redhat.com>
873
874 * libeblP.h (_): Use elfutils domain.
875
8762004-01-16 Ulrich Drepper <drepper@redhat.com>
877
878 * eblsectionname.c: Add support for SHN_BEFORE and SHN_AFTER.
879
8802004-01-13 Ulrich Drepper <drepper@redhat.com>
881
882 * eblsegmenttypename.c ((ebl_segment_type_name): Add support for
883 PT_GNU_RELRO.
884
8852004-01-08 Ulrich Drepper <drepper@redhat.com>
886
887 * libebl.h: Remove last traces of libtool.
888
8892004-01-05 Ulrich Drepper <drepper@redhat.com>
890
891 * elf-knowledge.h: Move to libelf subdir.
892
893 * Makefile.am (EXTRA_DIST): Remove libebl.map.
894 * libebl.map: Removed.
895
8962003-12-08 Ulrich Drepper <drepper@redhat.com>
897
898 * eblsectiontypename.c (ebl_section_type_name): Add support for
899 SHT_SUNW_move, SHT_CHECKSUM, and SHT_GNU_LIBLIST.
900
9012003-11-19 Ulrich Drepper <drepper@redhat.com>
902
903 * ia64_symbol.c (ia64_dynamic_tag_name): New function.
904 * libebl_ia64.h (ia64_dynamic_tag_name): Declare.
905 * ia64_init.c (ia64_init): Register i164_dynamic_tag_name.
906
9072003-09-24 Ulrich Drepper <drepper@redhat.com>
908
909 * ia64_init.c (ia64_init): Initialize segment_type_name callback.
910 * ia64_symbol.c (ia64_segment_type_name): Define.
911 * libebl_ia64.h (ia64_segment_type_name): Declare.
912
9132003-09-22 Ulrich Drepper <drepper@redhat.com>
914
915 * Makefile.am (AM_CFLAGS): Add -fpic.
916
9172003-08-14 Ulrich Drepper <drepper@redhat.com>
918
919 * Makefile.am (install): Remove dependency on libebl.so.
920
9212003-08-13 Ulrich Drepper <drepper@redhat.com>
922
923 * eblopenbackend.c: Adjust relative path to arch-specific DSOs
924 assuming the code ends up in the application. Add second dlopen()
925 try without any path, just the filename.
926 * Makefile.in: Remove rules to build and install libebl.so.
927
9282003-08-11 Ulrich Drepper <drepper@redhat.com>
929
930 * Moved to CVS archive.