Use -fPIC instead of -fpic when generating PIC code.
[platform/upstream/elfutils.git] / libebl / ChangeLog
1 2015-09-24  Jose E. Marchesi  <jose.marchesi@oracle.com>
2
3         * Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid
4         relocation overflows in some platforms.
5
6 2015-09-22  Mark Wielaard  <mjw@redhat.com>
7
8         * *.c: Remove old-style function definitions.
9
10 2015-09-09  Chih-Hung Hsieh  <chh@google.com>
11
12         * ebldwarftoregno.c (ebl_dwarf_to_regno): Remove redundant NULL tests
13         on parameters declared with __nonnull_attribute__.
14         * eblinitreg.c (ebl_frame_nregs): Likewise.
15         * eblnormalizepc.c (ebl_normalize_pc): Likewise.
16         * eblunwind.c (ebl_unwind): Likewise.
17
18 2015-09-04  Chih-Hung Hsieh  <chh@google.com>
19
20         * eblopenbackend.c (ebl_openbackend_machine): Replace K&R function
21         definition with ansi-C definitions.
22         * eblstother.c (ebl_check_st_other_bits): Likewise.
23
24 2015-06-12  Mark Wielaard  <mjw@redhat.com>
25
26         * eblcheckreloctargettype.c (ebl_check_reloc_target_type): Allow
27         SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
28
29 2015-05-17  Mark Wielaard  <mjw@redhat.com>
30
31         * eblobjnote.c (ebl_object_note): If allocation buf is large, then
32         allocate it with malloc.
33
34 2015-05-17  Mark Wielaard  <mjw@redhat.com>
35
36         * eblopenbackend.c (MAX_PREFIX_LEN): New define (16).
37         (openbackend): Stack allocate symname array using MAX_PREFIX_LEN.
38
39 2015-01-27  Mark Wielaard  <mjw@redhat.com>
40
41         * libebl.h: Add comment from README that this is completely
42         UNSUPPORTED.
43
44 2014-11-22  Mark Wielaard  <mjw@redhat.com>
45
46         * ebl-hooks.h (bss_plt_p): Remove ehdr argument.
47         * eblbsspltp.c (ebl_bss_plt_p): Likewise.
48         * eblopenbackend.c (default_bss_plt_p): Likewise.
49         * libebl.h (ebl_bss_plt_p): Likewise.
50
51 2014-11-17  Mark Wielaard  <mjw@redhat.com>
52
53         * ebldebugscnp.c (ebl_debugscn_p): Check name is not NULL.
54
55 2014-06-17  Mark Wielaard  <mjw@redhat.com>
56
57         * eblinitreg.c (ebl_func_addr_mask): New function.
58         * libebl.h (ebl_func_addr_mask): Define.
59         * libeblP.h (struct ebl): Add func_addr_mask.
60
61 2014-05-19  Mark Wielaard  <mjw@redhat.com>
62
63         * Makefile.am (gen_SOURCES): Add eblcheckreloctargettype.c.
64         * eblcheckreloctargettype.c: New file.
65         * ebl-hooks.h (check_reloc_target_type): New hook.
66         * eblopenbackend.c (default_check_reloc_target_type): New function.
67         (fill_defaults): Assign default_check_reloc_target_type to
68         check_reloc_target_type.
69         * libebl.h (ebl_check_reloc_target_type): New function definition.
70
71 2013-12-18  Mark Wielaard  <mjw@redhat.com>
72
73         * Makefile.am (gen_SOURCES): Add eblresolvesym.c.
74         * ebl-hooks.h (resolve_sym_value): New entry.
75         * eblresolvesym.c: New file.
76         * libebl.h (ebl_resolve_sym_value): New definition.
77         * libeblP.h (fd_addr): New field.
78         (fd_data): Likewise.
79
80 2013-12-18  Jan Kratochvil  <jan.kratochvil@redhat.com>
81
82         unwinder: s390 and s390x
83         * Makefile.am (gen_SOURCES): Add eblnormalizepc.c and eblunwind.c.
84         * ebl-hooks.h (normalize_pc, unwind): New.
85         * eblnormalizepc.c: New file.
86         * eblunwind.c: New file.
87         * libebl.h (Ebl_Register_Location): Add field pc_register.
88         (ebl_normalize_pc): New declaration.
89         (ebl_tid_registers_get_t, ebl_pid_memory_read_t): New definitions.
90         (ebl_unwind): New declaration.
91
92 2013-12-15  Jan Kratochvil  <jan.kratochvil@redhat.com>
93
94         unwinder: ppc and ppc64
95         * Makefile.am (gen_SOURCES): Add ebldwarftoregno.c.
96         * ebl-hooks.h (dwarf_to_regno): New.
97         * ebldwarftoregno.c: New file.
98         * libebl.h (Ebl_Core_Item): New field pc_register.
99         (ebl_tid_registers_t): Add FIRSTREG -1 to the comment.
100         (ebl_dwarf_to_regno): New.
101
102 2013-11-25  Petr Machata  <pmachata@redhat.com>
103
104         * eblopenbackend.c (machines): Add entry for AArch64.
105
106 2013-11-14  Jan Kratochvil  <jan.kratochvil@redhat.com>
107
108         Code cleanup: Remove const in prototype
109         * libebl.h (ebl_tid_registers_t): Remove const from firstreg.
110
111 2013-11-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
112             Mark Wielaard  <mjw@redhat.com>
113
114         * Makefile.am (gen_SOURCES): Add eblinitreg.c.
115         * ebl-hooks.h (set_initial_registers_tid): New entry.
116         * eblinitreg.c: New file.
117         * libebl.h (ebl_tid_registers_t): New definition.
118         (ebl_set_initial_registers_tid, ebl_frame_nregs): New declarations.
119         * libeblP.h (struct ebl): New entry frame_nregs.
120
121 2013-10-06  Mark Wielaard  <mjw@redhat.com>
122
123         * libebl.h (ebl_abi_cfi): Document restrictions using register
124         rules.
125
126 2013-09-26  Petr Machata  <pmachata@redhat.com>
127
128         * eblcorenotetypename.c: Handle NT_ARM_TLS, NT_ARM_HW_BREAK,
129         NT_ARM_HW_WATCH, NT_SIGINFO, NT_FILE.
130
131 2013-09-25  Mark Wielaard  <mjw@redhat.com>
132
133         * eblsectionstripp.c (ebl_section_strip_p): Check shdr_l is not NULL.
134
135 2013-04-24  Mark Wielaard  <mjw@redhat.com>
136
137         * Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.
138
139 2012-10-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
140
141         * ebl-hooks.h (abi_cfi): Extend its comment for return value.
142         * eblopenbackend.c (default_abi_cfi): Return -1.
143         * libebl.h (ebl_abi_cfi): Extend its comment for return value.
144
145 2012-08-30  Petr Machata  <pmachata@redhat.com>
146
147         * eblcorenotetypename.c: Handle PPC_VSX, X86_XSTATE,
148         S390_HIGH_GPRS, S390_TIMER, S390_TODCMP, S390_TODPREG, S390_CTRS,
149         S390_PREFIX, S390_LAST_BREAK, S390_SYSTEM_CALL, and ARM_VFP.
150
151 2012-08-22  Jeff Kenton  <jkenton@tilera.com>
152
153         * eblopenbackend.c (machines): Add tilegx.
154
155 2011-06-26  Mark Wielaard  <mjw@redhat.com>
156
157         * eblopenbackend.c (default_debugscn_p): Add .debug_macro.
158
159 2011-04-26  Mark Wielaard  <mjw@redhat.com>
160
161         * libebl.h (ebl_object_note_type_name): Add const char *name arg.
162         * eblhooks.h (object_note_type_name): Likewise.
163         * eblopenbackend.c (default_object_note_type_name): Likewise.
164         * eblobjnotetypename.c (ebl_object_note_type_name): Likewise.
165         And print version if name is "stapsdt".
166         * eblobjnote.c (ebl_object_note): Add output for "stapsdt" notes.
167
168 2011-03-21  Marek Polacek  <mpolacek@redhat.com>
169
170         * ebldynamictagname.c: Fix typo in TLSDESC_GOT.
171
172 2011-03-10  Mark Wielaard  <mjw@redhat.com>
173
174         * Makefile.am (gen_SOURCES): Add eblstother.c.
175         * eblstother.c: New file.
176         * ebl-hooks.h: Add check_st_other_bits hook.
177         * eblopenbackend.c (default_check_st_other_bits): New function.
178         (fill_defaults): Hook default_check_st_other_bits.
179         * libebl.h (ebl_check_st_other_bits): New prototype.
180
181 2010-07-07  Roland McGrath  <roland@redhat.com>
182
183         * eblopenbackend.c (default_debugscn_p): Match .gdb_index section.
184
185 2010-02-15  Roland McGrath  <roland@redhat.com>
186
187         * Makefile.am: Use config/eu.am for common stuff.
188
189 2010-01-04  Roland McGrath  <roland@redhat.com>
190
191         * eblcorenote.c (ebl_core_note): Take GElf_Nhdr * and name data
192         pointer instead of only n_type and n_descsz.
193         * libebl.h: Update declaration.
194         * ebl-hooks.h: Update core_note hook signature.
195         * eblopenbackend.c (default_core_note): Likewise.
196
197 2009-10-14  Roland McGrath  <roland@redhat.com>
198
199         * eblobjnote.c (ebl_object_note): Clean up NT_GNU_GOLD_VERSION printing.
200
201 2009-10-05  Roland McGrath  <roland@redhat.com>
202
203         * eblopenbackend.c (default_debugscn_p): Match .debug_pubtypes and
204         .debug_types too.
205
206 2009-09-02  Petr Machata  <pmachata@redhat.com>
207
208         * libebl/eblstrtab.c (morememory): Allocate memory in multiples of
209         pagesize.
210
211 2009-08-06  Petr Machata  <pmachata@redhat.com>
212
213         * libebl/eblstrtab.c (ebl_strtabfinalize): Only call copystrings
214         if we have any strings to copy.
215
216 2009-07-26  Mark Wielaard  <mjw@redhat.com>
217
218         * eblobjnote.c (ebl_object_note): Handle NT_GNU_GOLD_VERSION.
219
220         * eblobjnotetypename.c (ebl_object_note_type_name): Recognize
221         NT_GNU_GOLD_VERSION.
222
223 2009-07-08  Roland McGrath  <roland@redhat.com>
224
225         * ebl-hooks.h: Add abi_cfi hook.
226         * eblopenbackend.c (default_abi_cfi): New function.
227         (fill_defaults): Add initializer.
228         * eblabicfi.c: New file.
229         * Makefile.am (gen_SOURCES): Add it.
230         * libebl.h: Declare ebl_abi_cfi.
231
232 2009-07-08  Ulrich Drepper  <drepper@redhat.com>
233
234         * eblsymbolbindingname.c (ebl_symbol_binding_name): Handle
235         STB_GNU_UNIQUE.
236
237         * eblsymboltypename.c (ebl_symbol_type_name): Only handle STT_GNU_IFUNC
238         if the binary is marked as being for Linux.
239
240 2009-04-01  Roland McGrath  <roland@redhat.com>
241
242         * eblsymboltypename.c (ebl_symbol_type_name): Add STT_GNU_IFUNC.
243
244         * eblauxvinfo.c (AUXV_TYPES): Add RANDOM and BASE_PLATFORM.
245
246 2009-02-01  Ulrich Drepper  <drepper@redhat.com>
247
248         * eblreloctypename.c (ebl_reloc_type_name): Return "<INVALID RELOC>"
249         instead of "???" for invalid relocations.
250
251 2008-08-01  Roland McGrath  <roland@redhat.com>
252
253         * eblcorenotetypename.c: Handle NT_386_IOPERM.
254
255 2008-07-28  Roland McGrath  <roland@redhat.com>
256
257         * eblauxvinfo.c (AUXV_TYPES): Add EXECFN.
258
259         * eblauxvinfo.c (ebl_auxv_info): Handle missing elements of standard
260         table.
261
262 2008-07-04  Roland McGrath  <roland@redhat.com>
263
264         * libebl.h: Declare ebl_syscall_abi.
265         * ebl_syscall_abi.c: New file.
266         * Makefile.am (gen_SOURCES): Add it.
267         * ebl-hooks.h: New hook syscall_abi.
268         * eblopenbackend.c (default_syscall_abi): New function.
269         (fill_defaults): Use it.
270
271 2008-03-31  Roland McGrath  <roland@redhat.com>
272
273         * ebldynamictagname.c (ebl_dynamic_tag_name): Use hex for unknown tag.
274
275         * ebl-hooks.h: Add check_special_section hook.
276         * eblopenbackend.c (fill_defaults): Set new hook to ...
277         (default_check_special_section): ... this, new function.
278         * ebl_check_special_section.c: New file.
279         * Makefile.am (gen_SOURCES): Add it.
280         * libebl.h: Declare it.
281
282 2008-02-20  Roland McGrath  <roland@redhat.com>
283
284         * libebl.h: Declare ebl_check_object_attribute.
285         * eblcheckobjattr.c: New file.
286         * Makefile.am (gen_SOURCES): Add it.
287         * ebl-hooks.h: Add check_object_attribute hook.
288         * eblopenbackend.c (default_check_object_attribute): New function.
289         (fill_defaults): Initialize pointer to it.
290
291 2008-02-19  Roland McGrath  <roland@redhat.com>
292
293         * eblsectiontypename.c (ebl_section_type_name):
294         Handle SHT_GNU_ATTRIBUTES.
295
296 2008-02-08  Roland McGrath  <roland@redhat.com>
297
298         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_SPE.
299
300 2008-01-30  Roland McGrath  <roland@redhat.com>
301
302         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_386_TLS.
303
304 2007-10-18  Roland McGrath  <roland@redhat.com>
305
306         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_VMX.
307
308 2007-10-11  Roland McGrath  <roland@redhat.com>
309
310         * eblobjnote.c (ebl_object_note): Translate target format (byte-swap)
311         for NT_GNU_ABI_TAG contents.
312
313 2007-08-22  Roland McGrath  <roland@redhat.com>
314
315         * libebl.h (Ebl_Core_Item): New member `group'.
316
317 2007-08-19  Roland McGrath  <roland@redhat.com>
318
319         * ebl-hooks.h: Add new hook auxv_info.
320         * eblopenbackend.c (default_auxv_info): New function.
321         (fill_defaults): Initialize auxv_info hook.
322         * eblauxvinfo.c : New file.
323         * Makefile.am (gen_SOURCES): Add it.
324         * libebl.h: Declare ebl_auxv_info.
325
326         * eblcorenote.c: Rewritten with new signature.
327         * Makefile.am (gen_SOURCES): Add it.
328         * libebl.h (Ebl_Register_Location, Ebl_Core_Item): New types.
329         (ebl_core_note_info): Completely revamp signature.
330         * ebl-hooks.h: Update decl.
331         * eblopenbackend.c (default_core_note): Update signature.
332
333 2007-07-09  Roland McGrath  <roland@redhat.com>
334
335         * eblobjnotetypename.c (ebl_object_note_type_name): Handle
336         NT_GNU_HWCAP, NT_GNU_BUILD_ID.
337
338         * eblobjnote.c (ebl_object_note): Handle NT_GNU_BUILD_ID.
339
340 2007-04-22  Roland McGrath  <roland@redhat.com>
341
342         * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PRXFPREG.
343
344 2007-03-10  Roland McGrath  <roland@redhat.com>
345
346         * eblcorenote.c (ebl_core_note): For normally-zero types,
347         print in hex if not zero.
348
349 2007-01-11  Roland McGrath  <roland@redhat.com>
350
351         * ebl-hooks.h (machine_section_flag_check): New hook.
352         * libebl.h: Declare ebl_machine_section_flag_check.
353         * eblmachinesectionflagcheck.c: New file.
354         * Makefile.am (gen_SOURCES): Add it.
355         * eblopenbackend.c (default_machine_section_flag_check): New function.
356         (fill_defaults): Use it.
357
358 2006-09-04  Roland McGrath  <roland@redhat.com>
359
360         * ebl-hooks.h: Replace register_name hook with register_info.
361         Also yield natural bit width and base type encoding.
362         * eblopenbackend.c (default_register_name): Renamed
363         default_register_info, new args added.
364         (fill_defaults): Update initialization.
365         * eblregname.c: File renamed ...
366         * eblreginfo.c: ... to this.
367         (ebl_register_name): Renamed to ebl_register_info, new args added.
368         * libebl.h: Update decl.
369
370         * Makefile.am (gen_SOURCES): Update list.
371
372 2006-07-06  Ulrich Drepper  <drepper@redhat.com>
373
374         * ebldynamictagname.c: Add support for DT_GNU_HASH.
375         * ebldynamictagcheck.c: Likewise.
376         * eblsectiontypename.c: Add support for SHT_GNU_HASH.
377
378 2006-07-05  Ulrich Drepper  <drepper@redhat.com>
379
380         * Makefile.am (gen_SOURCES): Add eblsysvhashentrysize.c.
381         * libeblP.h (struct ebl): Add sysvhash_entrysize element.
382         * eblopenbackend.c (fill_defaults): Initialize sysvhash_entrysize.
383
384         * eblopenbackend.c (openbackend): If possible, fill machine, class,
385         and data values in from the ELF file.
386
387 2006-07-04  Ulrich Drepper  <drepper@redhat.com>
388
389         * Makefile.am (gen_SOURCES): Add eblrelativerelocp.c.
390         * eblrelativerelocp.c: New file.
391         * ebl-hooks.c: Add relative_reloc_p.
392         * eblopenbackend.c (default_relative_reloc_p): New function.
393         (fill_defaults): Hook it up.
394         * libebl.h: Declare ebl_relative_reloc_p.
395
396 2006-06-12  Ulrich Drepper  <drepper@redhat.com>
397
398         * Makefile.am (gen_SOURCES): Add eblnonerelocp.c.
399         * eblnonerelocp.c: New file.
400         * ebl-hooks.c: Add none_reloc_p.
401         * eblopenbackend.c (default_none_reloc_p): New function.
402         (fill_defaults): Hook it up.
403         * libebl.h: Declare ebl_none_reloc_p.
404
405 2006-05-27  Ulrich Drepper  <drepper@redhat.com>
406
407         * libebl.h: Add extern "C".
408
409 2005-11-25  Roland McGrath  <roland@redhat.com>
410
411         * eblregname.c: New file.
412         * Makefile.am (gen_SOURCES): Add it.
413         * ebl-hooks.h: Declare register_name hook.
414         * libebl.h: Declare ebl_register_name.
415         * eblopenbackend.c (default_register_name): New function.
416         (fill_defaults): Use it.
417
418 2005-11-16  Roland McGrath  <roland@redhat.com>
419
420         * libebl.h: Use "" for elf-knowledge.h, not <>.
421
422 2005-11-15  Roland McGrath  <roland@redhat.com>
423
424         * Makefile.am: Removed everything for building libebl_*.so modules,
425         now in ../backends/Makefile.am instead.
426         * alpha_init.c: Moved to ../backends.
427         * alpha_reloc.def: Likewise.
428         * alpha_retval.c: Likewise.
429         * alpha_symbol.c: Likewise.
430         * arm_init.c: Likewise.
431         * arm_reloc.def: Likewise.
432         * arm_symbol.c: Likewise.
433         * common-reloc.c: Likewise.
434         * i386_corenote.c: Likewise.
435         * i386_init.c: Likewise.
436         * i386_reloc.def: Likewise.
437         * i386_retval.c: Likewise.
438         * i386_symbol.c: Likewise.
439         * ia64_init.c: Likewise.
440         * ia64_reloc.def: Likewise.
441         * ia64_symbol.c: Likewise.
442         * libebl_CPU.h: Likewise.
443         * ppc64_init.c: Likewise.
444         * ppc64_reloc.def: Likewise.
445         * ppc64_retval.c: Likewise.
446         * ppc64_symbol.c: Likewise.
447         * ppc_init.c: Likewise.
448         * ppc_reloc.def: Likewise.
449         * ppc_retval.c: Likewise.
450         * ppc_symbol.c: Likewise.
451         * s390_init.c: Likewise.
452         * s390_reloc.def: Likewise.
453         * s390_symbol.c: Likewise.
454         * sh_init.c: Likewise.
455         * sh_reloc.def: Likewise.
456         * sh_symbol.c: Likewise.
457         * sparc_init.c: Likewise.
458         * sparc_reloc.def: Likewise.
459         * sparc_symbol.c: Likewise.
460         * x86_64_corenote.c: Likewise.
461         * x86_64_init.c: Likewise.
462         * x86_64_reloc.def: Likewise.
463         * x86_64_retval.c: Likewise.
464         * x86_64_symbol.c: Likewise.
465
466         * libebl.h: Comment fixes.
467
468         * alpha_retval.c: New file.
469         * Makefile.am (alpha_SRCS): Add it.
470         * alpha_init.c (alpha_init): Initialize return_value_location hook.
471
472         * ppc64_retval.c: New file.
473         * Makefile.am (ppc64_SRCS): Add it.
474         * ppc64_init.c (ppc64_init): Initialize return_value_location hook.
475
476         * ppc_retval.c: New file.
477         * Makefile.am (ppc_SRCS): Add it.
478         * ppc_init.c (ppc_init): Initialize return_value_location hook.
479
480 2005-11-14  Roland McGrath  <roland@redhat.com>
481
482         * ia64_init.c (ia64_init): Initialize EH->reloc_simple_type.
483         * sh_init.c (sh_init): Likewise.
484         * x86_64_init.c (x86_64_init): Likewise.
485
486         * sparc_symbol.c (sparc_reloc_simple_type): New function.
487         * sparc_init.c (sparc_init): Use it.
488
489         * arm_symbol.c (arm_reloc_simple_type): New function.
490         * arm_init.c (arm_init): Use it.
491
492         * alpha_symbol.c (alpha_reloc_simple_type): New function.
493         * alpha_init.c (alpha_init): Use it.
494
495         * ia64_reloc.def: Update bits per H. J. Lu <hjl@lucon.org>.
496
497         * arm_reloc.def: Update bits per Daniel Jacobowitz <drow@false.org>.
498
499         * alpha_reloc.def: Update bits per Richard Henderson <rth@redhat.com>.
500
501 2005-11-13  Roland McGrath  <roland@redhat.com>
502
503         * x86_64_retval.c: New file.
504         * Makefile.am (x86_64_SRCS): Add it.
505         * x86_64_init.c (x86_64_init): Use x86_64_return_value_location.
506
507         * i386_retval.c: New file.
508         * Makefile.am (i386_SRCS): Add it.
509         (libdw): New variable.
510         (libebl_%.so): Use $(libdw) in link; use --as-needed.
511         * i386_init.c (i386_init): Use i386_return_value_location.
512
513         * eblretval.c: New file.
514         * Makefile.am (gen_SOURCES): Add it.
515         (INCLUDES): Search in libdw.
516         * libebl.h: Include <libdw.h>.   Declare ebl_return_value_location.
517         * ebl-hooks.h: Declare return_value_location hook.
518         * eblopenbackend.c (default_return_value_location): New function.
519         (fill_defaults): Use it.
520
521 2005-11-10  Roland McGrath  <roland@redhat.com>
522
523         * s390_init.c: New file.
524         * s390_reloc.def: New file.
525         * s390_symbol.c: New file.
526         * Makefile.am (modules, libebl_pic): Add s390.
527         (s390_SRCS, libebl_s390_pic_a_SOURCES): New variables.
528         (am_libebl_s390_pic_a_OBJECTS): New variable.
529
530         * ppc64_init.c: Use common-reloc.c.
531         * ppc64_symbol.c (ppc64_backend_name): Removed.
532         (ppc64_reloc_type_check, ppc64_reloc_type_name): Likewise.
533         (ppc64_copy_reloc_p, ppc64_reloc_valid_use): Likewise.
534
535         * ppc_init.c: Use common-reloc.c.
536         * ppc_symbol.c (ppc_backend_name): Removed.
537         (ppc_reloc_type_name, ppc_reloc_type_check): Likewise.
538         (ppc_reloc_valid_use, ppc_copy_reloc_p): Likewise.
539
540         * sparc_init.c: Use common-reloc.c.
541         * sparc_symbol.c (sparc_backend_name): Removed.
542         (sparc_reloc_type_name, sparc_reloc_type_check): Likewise.
543         (sparc_copy_reloc_p): Likewise.
544
545         * arm_init.c: Use common-reloc.c.
546         * arm_symbol.c (arm_backend_name): Removed.
547         (arm_reloc_type_name, arm_reloc_type_check, arm_copy_reloc_p): Removed.
548
549         * alpha_init.c: Use common-reloc.c.
550         * alpha_symbol.c (alpha_backend_name): Removed.
551         (alpha_reloc_type_name, alpha_reloc_type_check): Likewise.
552         (alpha_copy_reloc_p): Likewise.
553
554         * ia64_symbol.c (ia64_backend_name): Removed.
555         (ia64_reloc_type_name, ia64_reloc_type_check): Likewise.
556         (ia64_copy_reloc_p): Likewise.
557
558         * x86_64_init.c: Use common-reloc.c.
559         * x86_64_symbol.c (x86_64_backend_name): Removed.
560         (x86_64_copy_reloc_p, x86_64_reloc_valid_use): Likewise.
561         (x86_64_reloc_type_check, x86_64_reloc_type_name): Likewise.
562
563         * sh_init.c: Use common-reloc.c.
564         * sh_symbol.c: All functions removed.
565         (sh_reloc_simple_type): New function.
566         (sh_gotpc_reloc_check): New function.
567
568         * common-reloc.c: New file.
569         * Makefile.am (noinst_HEADERS): Add it.
570         * i386_init.c: Include it.
571
572         * sh_reloc.def: New file.
573         * i386_reloc.def: New file.
574         * alpha_reloc.def: New file.
575         * arm_reloc.def: New file.
576         * i386_reloc.def: New file.
577         * ia64_reloc.def: New file.
578         * ppc64_reloc.def: New file.
579         * ppc_reloc.def: New file.
580         * sh_reloc.def: New file.
581         * sparc_reloc.def: New file.
582         * x86_64_reloc.def: New file.
583         * Makefile.am (EXTRA_DIST): Add $(modules:=_reloc.def).
584
585         * libebl_alpha.map: Removed.
586         * libebl_ia64.map: Removed.
587         * libebl_ppc.map: Removed.
588         * libebl_sparc.map: Removed.
589         * libebl_arm.map: Removed.
590         * libebl_i386.map: Removed.
591         * libebl_ppc64.map: Removed.
592         * libebl_sh.map: Removed.
593         * libebl_x86_64.map: Removed.
594         * Makefile.am (EXTRA_DIST): Remove them.
595         (libebl_%.map, libebl_%.so): New pattern rules.
596
597         * libebl_alpha.h: Removed.
598         * libebl_ia64.h: Removed.
599         * libebl_ppc.h: Removed.
600         * libebl_sparc.h: Removed.
601         * libebl_arm.h: Removed.
602         * libebl_i386.h: Removed.
603         * libebl_ppc64.h: Removed.
604         * libebl_sh.h: Removed.
605         * libebl_x86_64.h: Removed.
606         * Makefile.am (noinst_HEADERS): Remove them.
607
608         * x86_64_corenote.c: Use libebl_CPU.h instead.
609         * x86_64_symbol.c: Likewise.
610         * i386_corenote.c: Likewise.
611
612 2005-11-09  Roland McGrath  <roland@redhat.com>
613
614         * ia64_symbol.c (ia64_reloc_simple_type): New function.
615
616         * ebl-hooks.h (reloc_simple_type): Take the Ebl handle, not Elf handle.
617         * eblrelocsimpletype.c (ebl_reloc_simple_type): Update caller.
618         * eblopenbackend.c (default_reloc_simple_type): Update signature.
619         * i386_symbol.c (i386_reloc_simple_type): Likewise.
620         * ppc64_symbol.c (ppc64_reloc_simple_type): Likewise.
621         * ppc_symbol.c (ppc_reloc_simple_type): Likewise.
622         * x86_64_symbol.c (x86_64_reloc_simple_type): Likewise.
623
624         * i386_symbol.c (i386_backend_name): Removed.
625         (i386_reloc_type_name, i386_reloc_type_check): Likewise.
626         (i386_reloc_valid_use): Removed.
627         (i386_copy_reloc_p): Removed.
628
629         * alpha_destr.c: Removed.
630         * arm_destr.c: Removed.
631         * i386_destr.c: Removed.
632         * ia64_destr.c: Removed.
633         * ppc64_destr.c: Removed.
634         * ppc_destr.c: Removed.
635         * sh_destr.c: Removed.
636         * sparc_destr.c: Removed.
637         * x86_64_destr.c: Removed.
638
639         * ebl-hooks.h: New file, broken out of ...
640         * libeblP.h (struct ebl): ... here.  #include that for hook
641         declarations, after defining EBLHOOK macro.
642         * libebl_CPU.h: New file.
643         * Makefile.am (noinst_HEADERS): Add them.
644
645         * libeblP.h (struct ebl): Use uint_fast16_t for machine,
646         and uint_fast8_t for class and data.
647
648 2005-08-14  Roland McGrath  <roland@redhat.com>
649
650         * ia64_symbol.c (ia64_section_type_name): New function.
651         (ia64_dynamic_tag_check): New function.
652         (ia64_reloc_valid_use): New function.
653         * libebl_ia64.h: Declare them.
654         * ia64_init.c (ia64_init): Use them.
655         * Makefile.am (libebl_ia64.so): Link with libelf.
656
657 2005-08-28  Ulrich Drepper  <drepper@redhat.com>
658
659         * Makefile.am: Use $(LINK) not $(CC) when creating DSOs.
660
661 2005-08-13  Roland McGrath  <roland@redhat.com>
662
663         * ia64_symbol.c (ia64_machine_flag_check): New function.
664         * libebl_ia64.h: Declare it.
665         * ia64_init.c (ia64_init): Use it.
666
667 2005-08-13  Ulrich Drepper  <drepper@redhat.com>
668
669         * libebl.h: Add ehdr parameter to ebl_bss_plt_p and
670         ebl_check_special_symbol.
671         * libeblP.h (struct ebl): Adjust callback functions.
672         * eblopenbackend.c: Adjust dummy functions.
673         * ebl_check_special_symbol.c: Add parameter and pass it on.
674         * eblbsspltp.c: Likewise.
675         * ppc_symbol.c (find_dyn_got): With ehdr passed, simplify search for
676         the dynamic section entry.
677         (ppc_check_special_symbol): Add ehdr parameter.
678         (ppc_bss_plt_p): Likewise.
679         * libebl_ppc.h: Adjust prototypes.
680         * ppc64_symbol.c (ppc_check_special_symbol): Add ehdr parameter.
681         (ppc_bss_plt_p): Likewise.
682         * libebl_ppc64.h: Adjust prototypes.
683
684 2005-08-12  Roland McGrath  <roland@redhat.com>
685
686         * ppc_symbol.c (find_dyn_got): New function, broken out of ...
687         (ppc_bss_plt_p): ... here.  Call that.
688         (ppc_check_special_symbol): Use find_dyn_got to fetch value to check
689         against _GLOBAL_OFFSET_TABLE_.
690
691         * libeblP.h (struct ebl): Add bss_plt_p hook.
692         * eblopenbackend.c (default_bss_plt_p): New function.
693         (fill_defaults): Use it.
694         * eblbsspltp.c: New file.
695         * Makefile.am (gen_SOURCES): Add it.
696         * libebl.h: Declare ebl_bss_plt_p.
697         * ppc_symbol.c (ppc_bss_plt_p): New function.
698         * libebl_ppc.h: Declare it.
699         * ppc_init.c (ppc_init): Use it.
700         * ppc64_symbol.c (ppc64_bss_plt_p): New function.
701         * libebl_ppc64.h: Declare it.
702         * ppc64_init.c (ppc64_init): Use it.
703
704         * ebl_check_special_symbol.c: New file.
705         * Makefile.am (gen_SOURCES): Add it.
706         * libebl.h: Declare ebl_check_special_symbol.
707         * libeblP.h (struct ebl): Add check_special_symbol hook.
708         * eblopenbackend.c (default_check_special_symbol): New function.
709         (fill_defaults): Use it.
710         * ppc_symbol.c (ppc_check_special_symbol): New function.
711         * libebl_ppc.h: Add prototype.
712         * ppc_init.c (ppc_init): Use it.
713         * ppc64_symbol.c (ppc64_check_special_symbol): New function.
714         * libebl_ppc64.h: Add prototype.
715         * ppc64_init.c (ppc64_init): Use it.
716
717 2005-08-07  Ulrich Drepper  <drepper@redhat.com>
718
719         * ppc_init.c: Add support for new DT_PPC_* and R_PPC_* values.
720         * ppc_symbol.c: Likewise.
721         * libebl_ppc.h: Likewise.
722         * ppc64_init.c: There is now also a dynamic_tag_check functions
723         * ppc64_symbol.c: Add dynamic_tag_check.
724         * libebl_ppc64.h: Add prototype.
725         * alpha_init.c: Add support for new DT_ALPHA_* value.
726         * alpha_symbol.c: Likewise.
727         * libebl_alpha.h: Likewise.
728
729 2005-08-03  Ulrich Drepper  <drepper@redhat.com>
730
731         * libebl_alpha.map: Remove unnecessary exports.
732         * libebl_arm.map: Likewise.
733         * libebl_i386.map: Likewise.
734         * libebl_ia64.map: Likewise.
735         * libebl_ppc.map: Likewise.
736         * libebl_ppc64.map: Likewise.
737         * libebl_sh.map: Likewise.
738         * libebl_sparc.map: Likewise.
739         * libebl_x86_64.map: Likewise.
740
741 2005-08-02  Ulrich Drepper  <drepper@redhat.com>
742
743         * Makefile.am (libebl_a_SOURCES): Add eblelfclass.c, eblelfdata.c,
744         and eblelfmachine.c.
745         * elbopenbackend.c (machines): Add class and data fields.  Initialize
746         them.
747         (ebl_openbackend): Initialize machine, class, data fields in result.
748         * libebl.h: Declare Add eblelfclass, eblelfdata, and eblelfmachine.
749         * libeblP.h (Ebl): Add machine, class, data fields.
750
751 2005-07-23  Ulrich Drepper  <drepper@redhat.com>
752
753         * eblsectionstripp.c: New file.
754         * Makefile.am (gen_SOURCES): Add eblsectionstripp.c.
755         * i386_init.c (i386_init): Install specific debugscn_p callback.
756         * i386_symbol.c (i386_debugscn_p): New function.
757         * libebl.h: Declare ebl_section_strip_p.
758         * libebl_i386.h: Declare i386_debugscn_p.
759
760         * libebl.h: Move Ebl definition to...
761         * libeblP.h: ...here.
762
763 2005-07-21  Roland McGrath  <roland@redhat.com>
764
765         * Makefile.am (install-ebl-modules): New target, commands from ...
766         (install): ... here.  Make this depend on it.
767         (LIBEBL_SUBDIR): New variable, substituted by configure.
768         (install-ebl-modules): Install in $(libdir)/$(LIBEBL_SUBDIR).
769         * eblopenbackend.c (openbackend): Use LIBEBL_SUBDIR in module name.
770
771 2005-07-21  Ulrich Drepper  <drepper@redhat.com>
772
773         * eblcopyrelocp.c: New file.
774         * Makefile.am (gen_SOURCES): Add eblcopyrelocp.c.
775         * libebl.h: Declare ebl_copy_reloc_p.
776         * eblopenbackend.c (fill_defaults): Fill in copy_reloc_p.
777         (default_copy_reloc_p): New function.
778         * alpha_init.c: Define and use arch-specific copy_reloc_p function.
779         * alpha_symbol.c: Likewise.
780         * arm_init.c: Likewise.
781         * arm_symbol.c: Likewise.
782         * i386_init.c: Likewise.
783         * i386_symbol.c: Likewise.
784         * ia64_init.c: Likewise.
785         * ia64_symbol.c: Likewise.
786         * ppc64_init.c: Likewise.
787         * ppc64_symbol.c: Likewise.
788         * ppc_init.c: Likewise.
789         * ppc_symbol.c: Likewise.
790         * sh_init.c: Likewise.
791         * sh_symbol.c: Likewise.
792         * sparc_init.c: Likewise.
793         * sparc_symbol.c: Likewise.
794         * x86_64_init.c: Likewise.
795         * x86_64_symbol.c: Likewise.
796         * libebl_alpha.h: Declare the copy_reloc_p function.
797         * libebl_arm.h: Likewise.
798         * libebl_i386.h: Likewise.
799         * libebl_ia64.h: Likewise.
800         * libebl_ppc.h: Likewise.
801         * libebl_ppc64.h: Likewise.
802         * libebl_sh.h: Likewise.
803         * libebl_sparc.h: Likewise.
804         * libebl_x86_64.h: Likewise.
805
806 2005-05-31  Roland McGrath  <roland@redhat.com>
807
808         * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency
809         tracking works right.
810
811 2005-05-21  Ulrich Drepper  <drepper@redhat.com>
812
813         * libebl_x86_64.map: Add x86_64_core_note.
814
815 2005-05-19  Roland McGrath  <roland@redhat.com>
816
817         * libebl_i386.map: Add i386_reloc_valid_use, i386_reloc_simple_type.
818         * libebl_ppc.map: Add ppc_reloc_simple_type.
819         * libebl_ppc64.map: Add ppc64_reloc_simple_type.
820         * libebl_x86_64.map: Add x86_64_reloc_simple_type.
821
822 2005-05-11  Ulrich Drepper  <drepper@redhat.com>
823
824         * eblcorenote.c: Handle new AT_* values and files with different
825         endianess.
826         * Makefile.am (x86_64_SRCS): Add x86_64_corenote.c.
827         * x86-64_corenote.c: New file.
828         * x86_64_init.c: Hook in x86_64_corenote.
829         * i386_corenote.c: Make file usable on 64-bit platforms.
830
831         * eblopenbackend.c: If modules version comparison fails, reinitialize
832         hooks.
833
834 2005-05-10  Ulrich Drepper  <drepper@redhat.com>
835
836         * eblopenbackend.c: Require the init function to return a string.
837         Compare it with MODVERSION from config.h.
838         * alpha_init.c: Change return type.  Return MODVERSION or NULL.
839         * arm_init.c: Likewise.
840         * eblopenbackend.c: Likewise.
841         * i386_init.c: Likewise.
842         * ia64_init.c: Likewise.
843         * ppc64_init.c: Likewise.
844         * ppc_init.c: Likewise.
845         * sh_init.c: Likewise.
846         * sparc_init.c: Likewise.
847         * x86_64_init.c: Likewise.
848         * libeblP.h: Adjust ebl_bhinit_t.
849         * libebl_alpha.h: Adjust init function prototype.
850         * libebl_arm.h: Likewise.
851         * libebl_i386.h: Likewise.
852         * libebl_ia64.h: Likewise.
853         * libebl_ppc.h: Likewise.
854         * libebl_ppc64.h: Likewise.
855         * libebl_sh.h: Likewise.
856         * libebl_sparc.h: Likewise.
857         * libebl_x86_64.h: Likewise.
858
859         * mips_destr.c: Removed.
860         * mips_init.c: Removed.
861         * mips_symbol.c: Removed.
862         * libebl_mips.h: Removed.
863         * libebl_mips.map: Removed.
864
865 2005-05-03  Roland McGrath  <roland@redhat.com>
866
867         * libebl.h (Ebl): Add `reloc_simple_type' member.
868         * eblopenbackend.c (default_reloc_simple_type): New function.
869         (openbackend): Use that as default reloc_simple_type callback.
870         * eblrelocsimpletype.c: New file.
871         * Makefile.am (gen_SOURCES): Add it.
872         * i386_symbol.c (i386_reloc_simple_type): New function.
873         * libebl_i386.h: Declare it.
874         * i386_init.c (i386_init): Use it.
875         * x86_64_symbol.c (x86_64_reloc_simple_type): New function.
876         * libebl_x86_64.h: Declare it.
877         * x86_64_init.c (x86_64_init): Use it.
878         * ppc_symbol.c (ppc_reloc_simple_type): New function.
879         * libebl_ppc.h: Declare it.
880         * ppc_init.c (ppc_init): Use it.
881         * ppc64_symbol.c (ppc64_reloc_simple_type): New function.
882         * libebl_ppc64.h: Declare it.
883         * ppc64_init.c (ppc64_init): Use it.
884
885 2005-03-17  Ulrich Drepper  <drepper@redhat.com>
886
887         * eblcorenote.c (ebl_core_note): Add support for AT_SECURE.
888
889 2005-02-15  Ulrich Drepper  <drepper@redhat.com>
890
891         * Makefile.am (AM_CFLAGS): Add -Wformat=2.
892
893 2005-02-14  Ulrich Drepper  <drepper@redhat.com>
894
895         * alpha_destr.c: Add __attribute__((unused)) where needed.
896         * alpha_init.c: Likewise.
897         * alpha_symbol.c: Likewise.
898         * arm_destr.c: Likewise.
899         * arm_init.c: Likewise.
900         * arm_symbol.c: Likewise.
901         * i386_corenote.c: Likewise.
902         * i386_destr.c: Likewise.
903         * i386_init.c: Likewise.
904         * i386_symbol.c: Likewise.
905         * ia64_destr.c: Likewise.
906         * ia64_init.c: Likewise.
907         * ia64_symbol.c: Likewise.
908         * mips_destr.c: Likewise.
909         * mips_init.c: Likewise.
910         * mips_symbol.c: Likewise.
911         * ppc64_destr.c: Likewise.
912         * ppc64_init.c: Likewise.
913         * ppc64_symbol.c: Likewise.
914         * ppc_destr.c: Likewise.
915         * ppc_init.c: Likewise.
916         * ppc_symbol.c: Likewise.
917         * sh_destr.c: Likewise.
918         * sh_init.c: Likewise.
919         * sh_symbol.c: Likewise.
920         * sparc_destr.c: Likewise.
921         * sparc_init.c: Likewise.
922         * sparc_symbol.c: Likewise.
923         * x86_64_destr.c: Likewise.
924         * x86_64_init.c: Likewise.
925         * x86_64_symbol.c: Likewise.
926
927         * x86_64_symbol.c (reloc_map_table): Fix entries for R_X86_64_64
928         and R_X86_64_32..
929
930 2005-02-06  Ulrich Drepper  <drepper@redhat.com>
931
932         * eblstrtab.c: A few cleanups.
933
934         * eblopenbackend.c: Mark unused parameters.
935
936         * eblgstrtab.c: Cleanups a few printf format strings.
937
938         * Makefile.am: Cleanup AM_CFLAGS handling.  Add -Wunused -Wextra.
939
940 2005-02-05  Ulrich Drepper  <drepper@redhat.com>
941
942         * Makefile.am: Check for text relocations in constructed DSOs.
943
944         * eblstrtab.c: Minor cleanups.
945
946         * Makefile.am (AM_CFLAGS): Add -std=gnu99 and -fmudflap for MUDFLAP.
947
948 2004-08-16  Ulrich Drepper  <drepper@redhat.com>
949
950         * Makefile.am (AM_CFLAGS): Add LIBSTR definition with base name of
951         the lib directory.
952         * eblopenbackend.c (openbackend): Use LIBSTR instead of hardcoded
953         lib in path to ebl modules.
954
955 2004-04-01  Ulrich Drepper  <drepper@redhat.com>
956
957         * Makefile.am: Add rules for ppc and ppc64 ebl module.
958         * ppc_init..c: New file.
959         * ppc_destr.c: New file.
960         * ppc_symbol.c: New file.
961         * libebl_ppc.h: New file.
962         * libebl_ppc.map: New file.
963         * ppc64_init..c: New file.
964         * ppc64_destr.c: New file.
965         * ppc64_symbol.c: New file.
966         * libebl_ppc64.h: New file.
967         * libebl_ppc64.map: New file.
968
969 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
970
971         * Makefile.am: Support building with mudflap.
972
973 2004-01-18  Ulrich Drepper  <drepper@redhat.com>
974
975         * libeblP.h (_): Use elfutils domain.
976
977 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
978
979         * eblsectionname.c: Add support for SHN_BEFORE and SHN_AFTER.
980
981 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
982
983         * eblsegmenttypename.c ((ebl_segment_type_name): Add support for
984         PT_GNU_RELRO.
985
986 2004-01-08  Ulrich Drepper  <drepper@redhat.com>
987
988         * libebl.h: Remove last traces of libtool.
989
990 2004-01-05  Ulrich Drepper  <drepper@redhat.com>
991
992         * elf-knowledge.h: Move to libelf subdir.
993
994         * Makefile.am (EXTRA_DIST): Remove libebl.map.
995         * libebl.map: Removed.
996
997 2003-12-08  Ulrich Drepper  <drepper@redhat.com>
998
999         * eblsectiontypename.c (ebl_section_type_name): Add support for
1000         SHT_SUNW_move, SHT_CHECKSUM, and SHT_GNU_LIBLIST.
1001
1002 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
1003
1004         * ia64_symbol.c (ia64_dynamic_tag_name): New function.
1005         * libebl_ia64.h (ia64_dynamic_tag_name): Declare.
1006         * ia64_init.c (ia64_init): Register i164_dynamic_tag_name.
1007
1008 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
1009
1010         * ia64_init.c (ia64_init): Initialize segment_type_name callback.
1011         * ia64_symbol.c (ia64_segment_type_name): Define.
1012         * libebl_ia64.h (ia64_segment_type_name): Declare.
1013
1014 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
1015
1016         * Makefile.am (AM_CFLAGS): Add -fpic.
1017
1018 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
1019
1020         * Makefile.am (install): Remove dependency on libebl.so.
1021
1022 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
1023
1024         * eblopenbackend.c: Adjust relative path to arch-specific DSOs
1025         assuming the code ends up in the application.  Add second dlopen()
1026         try without any path, just the filename.
1027         * Makefile.in: Remove rules to build and install libebl.so.
1028
1029 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
1030
1031         * Moved to CVS archive.