blob: e881ce72136f81492e631e8135b7b4179d13ea8d [file] [log] [blame]
Jan Kratochvil0631d1f2012-10-12 20:43:21 +020012012-10-12 Jan Kratochvil <jan.kratochvil@redhat.com>
2
3 * ebl-hooks.h (abi_cfi): Extend its comment for return value.
4 * eblopenbackend.c (default_abi_cfi): Return -1.
5 * libebl.h (ebl_abi_cfi): Extend its comment for return value.
6
Petr Machata96896012012-08-30 16:01:02 +020072012-08-30 Petr Machata <pmachata@redhat.com>
8
9 * eblcorenotetypename.c: Handle PPC_VSX, X86_XSTATE,
10 S390_HIGH_GPRS, S390_TIMER, S390_TODCMP, S390_TODPREG, S390_CTRS,
11 S390_PREFIX, S390_LAST_BREAK, S390_SYSTEM_CALL, and ARM_VFP.
12
Jeff Kenton257dcf42012-08-22 09:00:03 -0400132012-08-22 Jeff Kenton <jkenton@tilera.com>
14
15 * eblopenbackend.c (machines): Add tilegx.
16
Mark Wielaarda0172d72012-06-25 17:18:53 +0200172011-06-26 Mark Wielaard <mjw@redhat.com>
18
19 * eblopenbackend.c (default_debugscn_p): Add .debug_macro.
20
Mark Wielaardbb9d1b42011-04-24 17:53:38 +0200212011-04-26 Mark Wielaard <mjw@redhat.com>
22
23 * libebl.h (ebl_object_note_type_name): Add const char *name arg.
24 * eblhooks.h (object_note_type_name): Likewise.
25 * eblopenbackend.c (default_object_note_type_name): Likewise.
26 * eblobjnotetypename.c (ebl_object_note_type_name): Likewise.
27 And print version if name is "stapsdt".
28 * eblobjnote.c (ebl_object_note): Add output for "stapsdt" notes.
29
Marek Polacekcde0b272011-03-21 23:46:56 +0100302011-03-21 Marek Polacek <mpolacek@redhat.com>
31
32 * ebldynamictagname.c: Fix typo in TLSDESC_GOT.
33
Mark Wielaarda062b6b2011-03-10 13:02:32 +0100342011-03-10 Mark Wielaard <mjw@redhat.com>
35
36 * Makefile.am (gen_SOURCES): Add eblstother.c.
37 * eblstother.c: New file.
38 * ebl-hooks.h: Add check_st_other_bits hook.
39 * eblopenbackend.c (default_check_st_other_bits): New function.
40 (fill_defaults): Hook default_check_st_other_bits.
41 * libebl.h (ebl_check_st_other_bits): New prototype.
42
Roland McGrath804e9ca2010-07-07 16:06:12 -0700432010-07-07 Roland McGrath <roland@redhat.com>
44
45 * eblopenbackend.c (default_debugscn_p): Match .gdb_index section.
46
Roland McGrath22359e22010-02-15 15:57:03 -0800472010-02-15 Roland McGrath <roland@redhat.com>
48
49 * Makefile.am: Use config/eu.am for common stuff.
50
Roland McGrath0ccbbcd2010-01-04 21:59:07 -0800512010-01-04 Roland McGrath <roland@redhat.com>
52
53 * eblcorenote.c (ebl_core_note): Take GElf_Nhdr * and name data
54 pointer instead of only n_type and n_descsz.
55 * libebl.h: Update declaration.
56 * ebl-hooks.h: Update core_note hook signature.
57 * eblopenbackend.c (default_core_note): Likewise.
58
Roland McGrathf80c9072009-10-14 12:35:47 -0700592009-10-14 Roland McGrath <roland@redhat.com>
60
61 * eblobjnote.c (ebl_object_note): Clean up NT_GNU_GOLD_VERSION printing.
62
Roland McGratha14b4eb2009-10-05 11:32:26 -0700632009-10-05 Roland McGrath <roland@redhat.com>
64
65 * eblopenbackend.c (default_debugscn_p): Match .debug_pubtypes and
66 .debug_types too.
67
Petr Machatad3a8b2d2009-09-02 20:46:08 +0200682009-09-02 Petr Machata <pmachata@redhat.com>
69
70 * libebl/eblstrtab.c (morememory): Allocate memory in multiples of
71 pagesize.
72
Petr Machata077a7082009-08-06 18:45:08 +0200732009-08-06 Petr Machata <pmachata@redhat.com>
74
75 * libebl/eblstrtab.c (ebl_strtabfinalize): Only call copystrings
76 if we have any strings to copy.
77
Mark Wielaardbc1b92e2009-07-26 08:33:18 -0700782009-07-26 Mark Wielaard <mjw@redhat.com>
79
Mark Wielaard2f5b79e2009-07-26 14:49:26 -070080 * eblobjnote.c (ebl_object_note): Handle NT_GNU_GOLD_VERSION.
81
Mark Wielaardbc1b92e2009-07-26 08:33:18 -070082 * eblobjnotetypename.c (ebl_object_note_type_name): Recognize
83 NT_GNU_GOLD_VERSION.
84
Roland McGrath3c84db32009-06-24 17:41:40 -0700852009-07-08 Roland McGrath <roland@redhat.com>
86
87 * ebl-hooks.h: Add abi_cfi hook.
88 * eblopenbackend.c (default_abi_cfi): New function.
89 (fill_defaults): Add initializer.
90 * eblabicfi.c: New file.
91 * Makefile.am (gen_SOURCES): Add it.
92 * libebl.h: Declare ebl_abi_cfi.
93
Ulrich Drepper70c442c2009-07-08 00:53:24 -0700942009-07-08 Ulrich Drepper <drepper@redhat.com>
95
96 * eblsymbolbindingname.c (ebl_symbol_binding_name): Handle
97 STB_GNU_UNIQUE.
98
99 * eblsymboltypename.c (ebl_symbol_type_name): Only handle STT_GNU_IFUNC
100 if the binary is marked as being for Linux.
101
Roland McGrathd5ff6672009-04-01 18:28:41 -07001022009-04-01 Roland McGrath <roland@redhat.com>
103
104 * eblsymboltypename.c (ebl_symbol_type_name): Add STT_GNU_IFUNC.
105
106 * eblauxvinfo.c (AUXV_TYPES): Add RANDOM and BASE_PLATFORM.
107
Ulrich Drepper95fa15e2009-02-01 19:06:10 -08001082009-02-01 Ulrich Drepper <drepper@redhat.com>
109
110 * eblreloctypename.c (ebl_reloc_type_name): Return "<INVALID RELOC>"
111 instead of "???" for invalid relocations.
112
Roland McGratha845f682008-12-03 03:41:58 +00001132008-08-01 Roland McGrath <roland@redhat.com>
114
115 * eblcorenotetypename.c: Handle NT_386_IOPERM.
116
Roland McGrath1d8bb252008-08-07 08:39:41 +00001172008-07-28 Roland McGrath <roland@redhat.com>
118
119 * eblauxvinfo.c (AUXV_TYPES): Add EXECFN.
120
121 * eblauxvinfo.c (ebl_auxv_info): Handle missing elements of standard
122 table.
123
1242008-07-04 Roland McGrath <roland@redhat.com>
125
126 * libebl.h: Declare ebl_syscall_abi.
127 * ebl_syscall_abi.c: New file.
128 * Makefile.am (gen_SOURCES): Add it.
129 * ebl-hooks.h: New hook syscall_abi.
130 * eblopenbackend.c (default_syscall_abi): New function.
131 (fill_defaults): Use it.
132
Roland McGrath13b69602008-04-01 02:30:05 +00001332008-03-31 Roland McGrath <roland@redhat.com>
134
135 * ebldynamictagname.c (ebl_dynamic_tag_name): Use hex for unknown tag.
136
137 * ebl-hooks.h: Add check_special_section hook.
138 * eblopenbackend.c (fill_defaults): Set new hook to ...
139 (default_check_special_section): ... this, new function.
140 * ebl_check_special_section.c: New file.
141 * Makefile.am (gen_SOURCES): Add it.
142 * libebl.h: Declare it.
143
Roland McGrath059c83e2008-02-21 06:19:39 +00001442008-02-20 Roland McGrath <roland@redhat.com>
145
146 * libebl.h: Declare ebl_check_object_attribute.
147 * eblcheckobjattr.c: New file.
148 * Makefile.am (gen_SOURCES): Add it.
149 * ebl-hooks.h: Add check_object_attribute hook.
150 * eblopenbackend.c (default_check_object_attribute): New function.
151 (fill_defaults): Initialize pointer to it.
152
1532008-02-19 Roland McGrath <roland@redhat.com>
154
155 * eblsectiontypename.c (ebl_section_type_name):
156 Handle SHT_GNU_ATTRIBUTES.
157
1582008-02-08 Roland McGrath <roland@redhat.com>
159
160 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_SPE.
161
1622008-01-30 Roland McGrath <roland@redhat.com>
163
164 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_386_TLS.
165
Roland McGrathe4c22ea2007-10-23 13:07:39 +00001662007-10-18 Roland McGrath <roland@redhat.com>
167
168 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_VMX.
169
Ulrich Drepperb597dfa2007-10-16 05:21:27 +00001702007-10-11 Roland McGrath <roland@redhat.com>
171
172 * eblobjnote.c (ebl_object_note): Translate target format (byte-swap)
173 for NT_GNU_ABI_TAG contents.
174
Roland McGrathcb6d8652007-08-23 08:10:54 +00001752007-08-22 Roland McGrath <roland@redhat.com>
176
177 * libebl.h (Ebl_Core_Item): New member `group'.
178
1792007-08-19 Roland McGrath <roland@redhat.com>
180
181 * ebl-hooks.h: Add new hook auxv_info.
182 * eblopenbackend.c (default_auxv_info): New function.
183 (fill_defaults): Initialize auxv_info hook.
184 * eblauxvinfo.c : New file.
185 * Makefile.am (gen_SOURCES): Add it.
186 * libebl.h: Declare ebl_auxv_info.
187
188 * eblcorenote.c: Rewritten with new signature.
189 * Makefile.am (gen_SOURCES): Add it.
190 * libebl.h (Ebl_Register_Location, Ebl_Core_Item): New types.
191 (ebl_core_note_info): Completely revamp signature.
192 * ebl-hooks.h: Update decl.
193 * eblopenbackend.c (default_core_note): Update signature.
194
Roland McGrath87d47802007-07-16 22:23:37 +00001952007-07-09 Roland McGrath <roland@redhat.com>
196
197 * eblobjnotetypename.c (ebl_object_note_type_name): Handle
198 NT_GNU_HWCAP, NT_GNU_BUILD_ID.
199
200 * eblobjnote.c (ebl_object_note): Handle NT_GNU_BUILD_ID.
201
Roland McGrath4be15242007-04-25 03:09:33 +00002022007-04-22 Roland McGrath <roland@redhat.com>
203
204 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PRXFPREG.
205
Ulrich Drepperc07fbb32007-03-30 19:14:59 +00002062007-03-10 Roland McGrath <roland@redhat.com>
207
208 * eblcorenote.c (ebl_core_note): For normally-zero types,
209 print in hex if not zero.
210
Ulrich Drepperaa915fd2007-02-05 07:25:33 +00002112007-01-11 Roland McGrath <roland@redhat.com>
212
213 * ebl-hooks.h (machine_section_flag_check): New hook.
214 * libebl.h: Declare ebl_machine_section_flag_check.
215 * eblmachinesectionflagcheck.c: New file.
216 * Makefile.am (gen_SOURCES): Add it.
217 * eblopenbackend.c (default_machine_section_flag_check): New function.
218 (fill_defaults): Use it.
219
Roland McGrathc373d852006-10-10 00:25:21 +00002202006-09-04 Roland McGrath <roland@redhat.com>
221
222 * ebl-hooks.h: Replace register_name hook with register_info.
223 Also yield natural bit width and base type encoding.
224 * eblopenbackend.c (default_register_name): Renamed
225 default_register_info, new args added.
226 (fill_defaults): Update initialization.
227 * eblregname.c: File renamed ...
228 * eblreginfo.c: ... to this.
229 (ebl_register_name): Renamed to ebl_register_info, new args added.
230 * libebl.h: Update decl.
231
232 * Makefile.am (gen_SOURCES): Update list.
233
Ulrich Drepper28ed8952006-07-07 03:43:47 +00002342006-07-06 Ulrich Drepper <drepper@redhat.com>
235
236 * ebldynamictagname.c: Add support for DT_GNU_HASH.
237 * ebldynamictagcheck.c: Likewise.
238 * eblsectiontypename.c: Add support for SHT_GNU_HASH.
239
2402006-07-05 Ulrich Drepper <drepper@redhat.com>
241
242 * Makefile.am (gen_SOURCES): Add eblsysvhashentrysize.c.
243 * libeblP.h (struct ebl): Add sysvhash_entrysize element.
244 * eblopenbackend.c (fill_defaults): Initialize sysvhash_entrysize.
245
246 * eblopenbackend.c (openbackend): If possible, fill machine, class,
247 and data values in from the ELF file.
248
2492006-07-04 Ulrich Drepper <drepper@redhat.com>
250
251 * Makefile.am (gen_SOURCES): Add eblrelativerelocp.c.
252 * eblrelativerelocp.c: New file.
253 * ebl-hooks.c: Add relative_reloc_p.
254 * eblopenbackend.c (default_relative_reloc_p): New function.
255 (fill_defaults): Hook it up.
256 * libebl.h: Declare ebl_relative_reloc_p.
257
Ulrich Drepper6ca46002006-06-12 22:40:23 +00002582006-06-12 Ulrich Drepper <drepper@redhat.com>
259
260 * Makefile.am (gen_SOURCES): Add eblnonerelocp.c.
261 * eblnonerelocp.c: New file.
262 * ebl-hooks.c: Add none_reloc_p.
263 * eblopenbackend.c (default_none_reloc_p): New function.
264 (fill_defaults): Hook it up.
265 * libebl.h: Declare ebl_none_reloc_p.
266
Ulrich Drepper41cbd762006-05-27 18:19:23 +00002672006-05-27 Ulrich Drepper <drepper@redhat.com>
268
269 * libebl.h: Add extern "C".
270
Roland McGrath994b4892005-12-05 22:46:21 +00002712005-11-25 Roland McGrath <roland@redhat.com>
272
273 * eblregname.c: New file.
274 * Makefile.am (gen_SOURCES): Add it.
275 * ebl-hooks.h: Declare register_name hook.
276 * libebl.h: Declare ebl_register_name.
277 * eblopenbackend.c (default_register_name): New function.
278 (fill_defaults): Use it.
279
Roland McGrath215c6322005-11-16 22:46:04 +00002802005-11-16 Roland McGrath <roland@redhat.com>
281
282 * libebl.h: Use "" for elf-knowledge.h, not <>.
283
Roland McGrathe47ab762005-11-17 03:16:00 +00002842005-11-15 Roland McGrath <roland@redhat.com>
285
286 * Makefile.am: Removed everything for building libebl_*.so modules,
287 now in ../backends/Makefile.am instead.
288 * alpha_init.c: Moved to ../backends.
289 * alpha_reloc.def: Likewise.
290 * alpha_retval.c: Likewise.
291 * alpha_symbol.c: Likewise.
292 * arm_init.c: Likewise.
293 * arm_reloc.def: Likewise.
294 * arm_symbol.c: Likewise.
295 * common-reloc.c: Likewise.
296 * i386_corenote.c: Likewise.
297 * i386_init.c: Likewise.
298 * i386_reloc.def: Likewise.
299 * i386_retval.c: Likewise.
300 * i386_symbol.c: Likewise.
301 * ia64_init.c: Likewise.
302 * ia64_reloc.def: Likewise.
303 * ia64_symbol.c: Likewise.
304 * libebl_CPU.h: Likewise.
305 * ppc64_init.c: Likewise.
306 * ppc64_reloc.def: Likewise.
307 * ppc64_retval.c: Likewise.
308 * ppc64_symbol.c: Likewise.
309 * ppc_init.c: Likewise.
310 * ppc_reloc.def: Likewise.
311 * ppc_retval.c: Likewise.
312 * ppc_symbol.c: Likewise.
313 * s390_init.c: Likewise.
314 * s390_reloc.def: Likewise.
315 * s390_symbol.c: Likewise.
316 * sh_init.c: Likewise.
317 * sh_reloc.def: Likewise.
318 * sh_symbol.c: Likewise.
319 * sparc_init.c: Likewise.
320 * sparc_reloc.def: Likewise.
321 * sparc_symbol.c: Likewise.
322 * x86_64_corenote.c: Likewise.
323 * x86_64_init.c: Likewise.
324 * x86_64_reloc.def: Likewise.
325 * x86_64_retval.c: Likewise.
326 * x86_64_symbol.c: Likewise.
327
328 * libebl.h: Comment fixes.
329
330 * alpha_retval.c: New file.
331 * Makefile.am (alpha_SRCS): Add it.
332 * alpha_init.c (alpha_init): Initialize return_value_location hook.
333
334 * ppc64_retval.c: New file.
335 * Makefile.am (ppc64_SRCS): Add it.
336 * ppc64_init.c (ppc64_init): Initialize return_value_location hook.
337
338 * ppc_retval.c: New file.
339 * Makefile.am (ppc_SRCS): Add it.
340 * ppc_init.c (ppc_init): Initialize return_value_location hook.
341
Roland McGrathcd60ea82005-11-16 01:57:40 +00003422005-11-14 Roland McGrath <roland@redhat.com>
343
344 * ia64_init.c (ia64_init): Initialize EH->reloc_simple_type.
345 * sh_init.c (sh_init): Likewise.
346 * x86_64_init.c (x86_64_init): Likewise.
347
348 * sparc_symbol.c (sparc_reloc_simple_type): New function.
349 * sparc_init.c (sparc_init): Use it.
350
351 * arm_symbol.c (arm_reloc_simple_type): New function.
352 * arm_init.c (arm_init): Use it.
353
354 * alpha_symbol.c (alpha_reloc_simple_type): New function.
355 * alpha_init.c (alpha_init): Use it.
356
357 * ia64_reloc.def: Update bits per H. J. Lu <hjl@lucon.org>.
358
359 * arm_reloc.def: Update bits per Daniel Jacobowitz <drow@false.org>.
360
361 * alpha_reloc.def: Update bits per Richard Henderson <rth@redhat.com>.
362
Roland McGrathe47ab762005-11-17 03:16:00 +00003632005-11-13 Roland McGrath <roland@redhat.com>
364
365 * x86_64_retval.c: New file.
366 * Makefile.am (x86_64_SRCS): Add it.
367 * x86_64_init.c (x86_64_init): Use x86_64_return_value_location.
368
369 * i386_retval.c: New file.
370 * Makefile.am (i386_SRCS): Add it.
371 (libdw): New variable.
372 (libebl_%.so): Use $(libdw) in link; use --as-needed.
373 * i386_init.c (i386_init): Use i386_return_value_location.
374
375 * eblretval.c: New file.
376 * Makefile.am (gen_SOURCES): Add it.
377 (INCLUDES): Search in libdw.
378 * libebl.h: Include <libdw.h>. Declare ebl_return_value_location.
379 * ebl-hooks.h: Declare return_value_location hook.
380 * eblopenbackend.c (default_return_value_location): New function.
381 (fill_defaults): Use it.
382
Roland McGrathcd60ea82005-11-16 01:57:40 +00003832005-11-10 Roland McGrath <roland@redhat.com>
384
385 * s390_init.c: New file.
386 * s390_reloc.def: New file.
387 * s390_symbol.c: New file.
388 * Makefile.am (modules, libebl_pic): Add s390.
389 (s390_SRCS, libebl_s390_pic_a_SOURCES): New variables.
390 (am_libebl_s390_pic_a_OBJECTS): New variable.
391
392 * ppc64_init.c: Use common-reloc.c.
393 * ppc64_symbol.c (ppc64_backend_name): Removed.
394 (ppc64_reloc_type_check, ppc64_reloc_type_name): Likewise.
395 (ppc64_copy_reloc_p, ppc64_reloc_valid_use): Likewise.
396
397 * ppc_init.c: Use common-reloc.c.
398 * ppc_symbol.c (ppc_backend_name): Removed.
399 (ppc_reloc_type_name, ppc_reloc_type_check): Likewise.
400 (ppc_reloc_valid_use, ppc_copy_reloc_p): Likewise.
401
402 * sparc_init.c: Use common-reloc.c.
403 * sparc_symbol.c (sparc_backend_name): Removed.
404 (sparc_reloc_type_name, sparc_reloc_type_check): Likewise.
405 (sparc_copy_reloc_p): Likewise.
406
407 * arm_init.c: Use common-reloc.c.
408 * arm_symbol.c (arm_backend_name): Removed.
409 (arm_reloc_type_name, arm_reloc_type_check, arm_copy_reloc_p): Removed.
410
411 * alpha_init.c: Use common-reloc.c.
412 * alpha_symbol.c (alpha_backend_name): Removed.
413 (alpha_reloc_type_name, alpha_reloc_type_check): Likewise.
414 (alpha_copy_reloc_p): Likewise.
415
416 * ia64_symbol.c (ia64_backend_name): Removed.
417 (ia64_reloc_type_name, ia64_reloc_type_check): Likewise.
418 (ia64_copy_reloc_p): Likewise.
419
420 * x86_64_init.c: Use common-reloc.c.
421 * x86_64_symbol.c (x86_64_backend_name): Removed.
422 (x86_64_copy_reloc_p, x86_64_reloc_valid_use): Likewise.
423 (x86_64_reloc_type_check, x86_64_reloc_type_name): Likewise.
424
425 * sh_init.c: Use common-reloc.c.
426 * sh_symbol.c: All functions removed.
427 (sh_reloc_simple_type): New function.
428 (sh_gotpc_reloc_check): New function.
429
430 * common-reloc.c: New file.
431 * Makefile.am (noinst_HEADERS): Add it.
432 * i386_init.c: Include it.
433
434 * sh_reloc.def: New file.
435 * i386_reloc.def: New file.
436 * alpha_reloc.def: New file.
437 * arm_reloc.def: New file.
438 * i386_reloc.def: New file.
439 * ia64_reloc.def: New file.
440 * ppc64_reloc.def: New file.
441 * ppc_reloc.def: New file.
442 * sh_reloc.def: New file.
443 * sparc_reloc.def: New file.
444 * x86_64_reloc.def: New file.
445 * Makefile.am (EXTRA_DIST): Add $(modules:=_reloc.def).
446
447 * libebl_alpha.map: Removed.
448 * libebl_ia64.map: Removed.
449 * libebl_ppc.map: Removed.
450 * libebl_sparc.map: Removed.
451 * libebl_arm.map: Removed.
452 * libebl_i386.map: Removed.
453 * libebl_ppc64.map: Removed.
454 * libebl_sh.map: Removed.
455 * libebl_x86_64.map: Removed.
456 * Makefile.am (EXTRA_DIST): Remove them.
457 (libebl_%.map, libebl_%.so): New pattern rules.
458
459 * libebl_alpha.h: Removed.
460 * libebl_ia64.h: Removed.
461 * libebl_ppc.h: Removed.
462 * libebl_sparc.h: Removed.
463 * libebl_arm.h: Removed.
464 * libebl_i386.h: Removed.
465 * libebl_ppc64.h: Removed.
466 * libebl_sh.h: Removed.
467 * libebl_x86_64.h: Removed.
468 * Makefile.am (noinst_HEADERS): Remove them.
469
470 * x86_64_corenote.c: Use libebl_CPU.h instead.
471 * x86_64_symbol.c: Likewise.
472 * i386_corenote.c: Likewise.
473
4742005-11-09 Roland McGrath <roland@redhat.com>
475
476 * ia64_symbol.c (ia64_reloc_simple_type): New function.
477
478 * ebl-hooks.h (reloc_simple_type): Take the Ebl handle, not Elf handle.
479 * eblrelocsimpletype.c (ebl_reloc_simple_type): Update caller.
480 * eblopenbackend.c (default_reloc_simple_type): Update signature.
481 * i386_symbol.c (i386_reloc_simple_type): Likewise.
482 * ppc64_symbol.c (ppc64_reloc_simple_type): Likewise.
483 * ppc_symbol.c (ppc_reloc_simple_type): Likewise.
484 * x86_64_symbol.c (x86_64_reloc_simple_type): Likewise.
485
486 * i386_symbol.c (i386_backend_name): Removed.
487 (i386_reloc_type_name, i386_reloc_type_check): Likewise.
488 (i386_reloc_valid_use): Removed.
489 (i386_copy_reloc_p): Removed.
490
491 * alpha_destr.c: Removed.
492 * arm_destr.c: Removed.
493 * i386_destr.c: Removed.
494 * ia64_destr.c: Removed.
495 * ppc64_destr.c: Removed.
496 * ppc_destr.c: Removed.
497 * sh_destr.c: Removed.
498 * sparc_destr.c: Removed.
499 * x86_64_destr.c: Removed.
500
501 * ebl-hooks.h: New file, broken out of ...
502 * libeblP.h (struct ebl): ... here. #include that for hook
503 declarations, after defining EBLHOOK macro.
504 * libebl_CPU.h: New file.
505 * Makefile.am (noinst_HEADERS): Add them.
506
507 * libeblP.h (struct ebl): Use uint_fast16_t for machine,
508 and uint_fast8_t for class and data.
509
5102005-08-14 Roland McGrath <roland@redhat.com>
511
512 * ia64_symbol.c (ia64_section_type_name): New function.
513 (ia64_dynamic_tag_check): New function.
514 (ia64_reloc_valid_use): New function.
515 * libebl_ia64.h: Declare them.
516 * ia64_init.c (ia64_init): Use them.
517 * Makefile.am (libebl_ia64.so): Link with libelf.
518
Ulrich Drepperfbe998a2005-08-29 16:27:10 +00005192005-08-28 Ulrich Drepper <drepper@redhat.com>
520
521 * Makefile.am: Use $(LINK) not $(CC) when creating DSOs.
522
Roland McGrathe53d04a2005-08-13 20:56:07 +00005232005-08-13 Roland McGrath <roland@redhat.com>
524
525 * ia64_symbol.c (ia64_machine_flag_check): New function.
526 * libebl_ia64.h: Declare it.
527 * ia64_init.c (ia64_init): Use it.
528
Ulrich Drepperc5c33a62005-08-13 17:50:47 +00005292005-08-13 Ulrich Drepper <drepper@redhat.com>
530
531 * libebl.h: Add ehdr parameter to ebl_bss_plt_p and
532 ebl_check_special_symbol.
533 * libeblP.h (struct ebl): Adjust callback functions.
534 * eblopenbackend.c: Adjust dummy functions.
535 * ebl_check_special_symbol.c: Add parameter and pass it on.
536 * eblbsspltp.c: Likewise.
537 * ppc_symbol.c (find_dyn_got): With ehdr passed, simplify search for
538 the dynamic section entry.
539 (ppc_check_special_symbol): Add ehdr parameter.
540 (ppc_bss_plt_p): Likewise.
541 * libebl_ppc.h: Adjust prototypes.
542 * ppc64_symbol.c (ppc_check_special_symbol): Add ehdr parameter.
543 (ppc_bss_plt_p): Likewise.
544 * libebl_ppc64.h: Adjust prototypes.
545
Roland McGrath653d3762005-08-13 01:59:10 +00005462005-08-12 Roland McGrath <roland@redhat.com>
547
Roland McGrathf8873cb2005-08-13 03:26:06 +0000548 * ppc_symbol.c (find_dyn_got): New function, broken out of ...
549 (ppc_bss_plt_p): ... here. Call that.
550 (ppc_check_special_symbol): Use find_dyn_got to fetch value to check
551 against _GLOBAL_OFFSET_TABLE_.
552
Roland McGrath653d3762005-08-13 01:59:10 +0000553 * libeblP.h (struct ebl): Add bss_plt_p hook.
554 * eblopenbackend.c (default_bss_plt_p): New function.
555 (fill_defaults): Use it.
556 * eblbsspltp.c: New file.
557 * Makefile.am (gen_SOURCES): Add it.
558 * libebl.h: Declare ebl_bss_plt_p.
559 * ppc_symbol.c (ppc_bss_plt_p): New function.
560 * libebl_ppc.h: Declare it.
561 * ppc_init.c (ppc_init): Use it.
562 * ppc64_symbol.c (ppc64_bss_plt_p): New function.
563 * libebl_ppc64.h: Declare it.
564 * ppc64_init.c (ppc64_init): Use it.
565
566 * ebl_check_special_symbol.c: New file.
567 * Makefile.am (gen_SOURCES): Add it.
568 * libebl.h: Declare ebl_check_special_symbol.
569 * libeblP.h (struct ebl): Add check_special_symbol hook.
570 * eblopenbackend.c (default_check_special_symbol): New function.
571 (fill_defaults): Use it.
572 * ppc_symbol.c (ppc_check_special_symbol): New function.
573 * libebl_ppc.h: Add prototype.
574 * ppc_init.c (ppc_init): Use it.
575 * ppc64_symbol.c (ppc64_check_special_symbol): New function.
576 * libebl_ppc64.h: Add prototype.
577 * ppc64_init.c (ppc64_init): Use it.
578
Ulrich Drepperb03b0572005-08-07 08:12:22 +00005792005-08-07 Ulrich Drepper <drepper@redhat.com>
580
581 * ppc_init.c: Add support for new DT_PPC_* and R_PPC_* values.
582 * ppc_symbol.c: Likewise.
583 * libebl_ppc.h: Likewise.
584 * ppc64_init.c: There is now also a dynamic_tag_check functions
585 * ppc64_symbol.c: Add dynamic_tag_check.
586 * libebl_ppc64.h: Add prototype.
587 * alpha_init.c: Add support for new DT_ALPHA_* value.
588 * alpha_symbol.c: Likewise.
589 * libebl_alpha.h: Likewise.
590
Ulrich Drepper6fcb3832005-08-03 21:10:49 +00005912005-08-03 Ulrich Drepper <drepper@redhat.com>
592
593 * libebl_alpha.map: Remove unnecessary exports.
594 * libebl_arm.map: Likewise.
595 * libebl_i386.map: Likewise.
596 * libebl_ia64.map: Likewise.
597 * libebl_ppc.map: Likewise.
598 * libebl_ppc64.map: Likewise.
599 * libebl_sh.map: Likewise.
600 * libebl_sparc.map: Likewise.
601 * libebl_x86_64.map: Likewise.
602
Ulrich Dreppera38998e2005-08-03 02:05:39 +00006032005-08-02 Ulrich Drepper <drepper@redhat.com>
604
605 * Makefile.am (libebl_a_SOURCES): Add eblelfclass.c, eblelfdata.c,
606 and eblelfmachine.c.
607 * elbopenbackend.c (machines): Add class and data fields. Initialize
608 them.
609 (ebl_openbackend): Initialize machine, class, data fields in result.
610 * libebl.h: Declare Add eblelfclass, eblelfdata, and eblelfmachine.
611 * libeblP.h (Ebl): Add machine, class, data fields.
612
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00006132005-07-23 Ulrich Drepper <drepper@redhat.com>
614
615 * eblsectionstripp.c: New file.
616 * Makefile.am (gen_SOURCES): Add eblsectionstripp.c.
617 * i386_init.c (i386_init): Install specific debugscn_p callback.
618 * i386_symbol.c (i386_debugscn_p): New function.
619 * libebl.h: Declare ebl_section_strip_p.
620 * libebl_i386.h: Declare i386_debugscn_p.
621
622 * libebl.h: Move Ebl definition to...
623 * libeblP.h: ...here.
624
6252005-07-21 Roland McGrath <roland@redhat.com>
626
627 * Makefile.am (install-ebl-modules): New target, commands from ...
628 (install): ... here. Make this depend on it.
629 (LIBEBL_SUBDIR): New variable, substituted by configure.
630 (install-ebl-modules): Install in $(libdir)/$(LIBEBL_SUBDIR).
631 * eblopenbackend.c (openbackend): Use LIBEBL_SUBDIR in module name.
632
6332005-07-21 Ulrich Drepper <drepper@redhat.com>
634
635 * eblcopyrelocp.c: New file.
636 * Makefile.am (gen_SOURCES): Add eblcopyrelocp.c.
637 * libebl.h: Declare ebl_copy_reloc_p.
638 * eblopenbackend.c (fill_defaults): Fill in copy_reloc_p.
639 (default_copy_reloc_p): New function.
640 * alpha_init.c: Define and use arch-specific copy_reloc_p function.
641 * alpha_symbol.c: Likewise.
642 * arm_init.c: Likewise.
643 * arm_symbol.c: Likewise.
644 * i386_init.c: Likewise.
645 * i386_symbol.c: Likewise.
646 * ia64_init.c: Likewise.
647 * ia64_symbol.c: Likewise.
648 * ppc64_init.c: Likewise.
649 * ppc64_symbol.c: Likewise.
650 * ppc_init.c: Likewise.
651 * ppc_symbol.c: Likewise.
652 * sh_init.c: Likewise.
653 * sh_symbol.c: Likewise.
654 * sparc_init.c: Likewise.
655 * sparc_symbol.c: Likewise.
656 * x86_64_init.c: Likewise.
657 * x86_64_symbol.c: Likewise.
658 * libebl_alpha.h: Declare the copy_reloc_p function.
659 * libebl_arm.h: Likewise.
660 * libebl_i386.h: Likewise.
661 * libebl_ia64.h: Likewise.
662 * libebl_ppc.h: Likewise.
663 * libebl_ppc64.h: Likewise.
664 * libebl_sh.h: Likewise.
665 * libebl_sparc.h: Likewise.
666 * libebl_x86_64.h: Likewise.
667
6682005-05-31 Roland McGrath <roland@redhat.com>
669
670 * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency
671 tracking works right.
672
6732005-05-21 Ulrich Drepper <drepper@redhat.com>
674
675 * libebl_x86_64.map: Add x86_64_core_note.
676
6772005-05-19 Roland McGrath <roland@redhat.com>
678
679 * libebl_i386.map: Add i386_reloc_valid_use, i386_reloc_simple_type.
680 * libebl_ppc.map: Add ppc_reloc_simple_type.
681 * libebl_ppc64.map: Add ppc64_reloc_simple_type.
682 * libebl_x86_64.map: Add x86_64_reloc_simple_type.
683
6842005-05-11 Ulrich Drepper <drepper@redhat.com>
685
686 * eblcorenote.c: Handle new AT_* values and files with different
687 endianess.
688 * Makefile.am (x86_64_SRCS): Add x86_64_corenote.c.
689 * x86-64_corenote.c: New file.
690 * x86_64_init.c: Hook in x86_64_corenote.
691 * i386_corenote.c: Make file usable on 64-bit platforms.
692
693 * eblopenbackend.c: If modules version comparison fails, reinitialize
694 hooks.
695
6962005-05-10 Ulrich Drepper <drepper@redhat.com>
697
698 * eblopenbackend.c: Require the init function to return a string.
699 Compare it with MODVERSION from config.h.
700 * alpha_init.c: Change return type. Return MODVERSION or NULL.
701 * arm_init.c: Likewise.
702 * eblopenbackend.c: Likewise.
703 * i386_init.c: Likewise.
704 * ia64_init.c: Likewise.
705 * ppc64_init.c: Likewise.
706 * ppc_init.c: Likewise.
707 * sh_init.c: Likewise.
708 * sparc_init.c: Likewise.
709 * x86_64_init.c: Likewise.
710 * libeblP.h: Adjust ebl_bhinit_t.
711 * libebl_alpha.h: Adjust init function prototype.
712 * libebl_arm.h: Likewise.
713 * libebl_i386.h: Likewise.
714 * libebl_ia64.h: Likewise.
715 * libebl_ppc.h: Likewise.
716 * libebl_ppc64.h: Likewise.
717 * libebl_sh.h: Likewise.
718 * libebl_sparc.h: Likewise.
719 * libebl_x86_64.h: Likewise.
720
721 * mips_destr.c: Removed.
722 * mips_init.c: Removed.
723 * mips_symbol.c: Removed.
724 * libebl_mips.h: Removed.
725 * libebl_mips.map: Removed.
726
7272005-05-03 Roland McGrath <roland@redhat.com>
728
729 * libebl.h (Ebl): Add `reloc_simple_type' member.
730 * eblopenbackend.c (default_reloc_simple_type): New function.
731 (openbackend): Use that as default reloc_simple_type callback.
732 * eblrelocsimpletype.c: New file.
733 * Makefile.am (gen_SOURCES): Add it.
734 * i386_symbol.c (i386_reloc_simple_type): New function.
735 * libebl_i386.h: Declare it.
736 * i386_init.c (i386_init): Use it.
737 * x86_64_symbol.c (x86_64_reloc_simple_type): New function.
738 * libebl_x86_64.h: Declare it.
739 * x86_64_init.c (x86_64_init): Use it.
740 * ppc_symbol.c (ppc_reloc_simple_type): New function.
741 * libebl_ppc.h: Declare it.
742 * ppc_init.c (ppc_init): Use it.
743 * ppc64_symbol.c (ppc64_reloc_simple_type): New function.
744 * libebl_ppc64.h: Declare it.
745 * ppc64_init.c (ppc64_init): Use it.
746
7472005-03-17 Ulrich Drepper <drepper@redhat.com>
748
749 * eblcorenote.c (ebl_core_note): Add support for AT_SECURE.
750
7512005-02-15 Ulrich Drepper <drepper@redhat.com>
752
753 * Makefile.am (AM_CFLAGS): Add -Wformat=2.
754
7552005-02-14 Ulrich Drepper <drepper@redhat.com>
756
757 * alpha_destr.c: Add __attribute__((unused)) where needed.
758 * alpha_init.c: Likewise.
759 * alpha_symbol.c: Likewise.
760 * arm_destr.c: Likewise.
761 * arm_init.c: Likewise.
762 * arm_symbol.c: Likewise.
763 * i386_corenote.c: Likewise.
764 * i386_destr.c: Likewise.
765 * i386_init.c: Likewise.
766 * i386_symbol.c: Likewise.
767 * ia64_destr.c: Likewise.
768 * ia64_init.c: Likewise.
769 * ia64_symbol.c: Likewise.
770 * mips_destr.c: Likewise.
771 * mips_init.c: Likewise.
772 * mips_symbol.c: Likewise.
773 * ppc64_destr.c: Likewise.
774 * ppc64_init.c: Likewise.
775 * ppc64_symbol.c: Likewise.
776 * ppc_destr.c: Likewise.
777 * ppc_init.c: Likewise.
778 * ppc_symbol.c: Likewise.
779 * sh_destr.c: Likewise.
780 * sh_init.c: Likewise.
781 * sh_symbol.c: Likewise.
782 * sparc_destr.c: Likewise.
783 * sparc_init.c: Likewise.
784 * sparc_symbol.c: Likewise.
785 * x86_64_destr.c: Likewise.
786 * x86_64_init.c: Likewise.
787 * x86_64_symbol.c: Likewise.
788
789 * x86_64_symbol.c (reloc_map_table): Fix entries for R_X86_64_64
790 and R_X86_64_32..
791
7922005-02-06 Ulrich Drepper <drepper@redhat.com>
793
794 * eblstrtab.c: A few cleanups.
795
796 * eblopenbackend.c: Mark unused parameters.
797
798 * eblgstrtab.c: Cleanups a few printf format strings.
799
800 * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra.
801
8022005-02-05 Ulrich Drepper <drepper@redhat.com>
803
804 * Makefile.am: Check for text relocations in constructed DSOs.
805
806 * eblstrtab.c: Minor cleanups.
807
808 * Makefile.am (AM_CFLAGS): Add -std=gnu99 and -fmudflap for MUDFLAP.
809
8102004-08-16 Ulrich Drepper <drepper@redhat.com>
811
812 * Makefile.am (AM_CFLAGS): Add LIBSTR definition with base name of
813 the lib directory.
814 * eblopenbackend.c (openbackend): Use LIBSTR instead of hardcoded
815 lib in path to ebl modules.
816
8172004-04-01 Ulrich Drepper <drepper@redhat.com>
818
819 * Makefile.am: Add rules for ppc and ppc64 ebl module.
820 * ppc_init..c: New file.
821 * ppc_destr.c: New file.
822 * ppc_symbol.c: New file.
823 * libebl_ppc.h: New file.
824 * libebl_ppc.map: New file.
825 * ppc64_init..c: New file.
826 * ppc64_destr.c: New file.
827 * ppc64_symbol.c: New file.
828 * libebl_ppc64.h: New file.
829 * libebl_ppc64.map: New file.
830
8312004-01-20 Ulrich Drepper <drepper@redhat.com>
832
833 * Makefile.am: Support building with mudflap.
834
8352004-01-18 Ulrich Drepper <drepper@redhat.com>
836
837 * libeblP.h (_): Use elfutils domain.
838
8392004-01-16 Ulrich Drepper <drepper@redhat.com>
840
841 * eblsectionname.c: Add support for SHN_BEFORE and SHN_AFTER.
842
8432004-01-13 Ulrich Drepper <drepper@redhat.com>
844
845 * eblsegmenttypename.c ((ebl_segment_type_name): Add support for
846 PT_GNU_RELRO.
847
8482004-01-08 Ulrich Drepper <drepper@redhat.com>
849
850 * libebl.h: Remove last traces of libtool.
851
8522004-01-05 Ulrich Drepper <drepper@redhat.com>
853
854 * elf-knowledge.h: Move to libelf subdir.
855
856 * Makefile.am (EXTRA_DIST): Remove libebl.map.
857 * libebl.map: Removed.
858
8592003-12-08 Ulrich Drepper <drepper@redhat.com>
860
861 * eblsectiontypename.c (ebl_section_type_name): Add support for
862 SHT_SUNW_move, SHT_CHECKSUM, and SHT_GNU_LIBLIST.
863
8642003-11-19 Ulrich Drepper <drepper@redhat.com>
865
866 * ia64_symbol.c (ia64_dynamic_tag_name): New function.
867 * libebl_ia64.h (ia64_dynamic_tag_name): Declare.
868 * ia64_init.c (ia64_init): Register i164_dynamic_tag_name.
869
8702003-09-24 Ulrich Drepper <drepper@redhat.com>
871
872 * ia64_init.c (ia64_init): Initialize segment_type_name callback.
873 * ia64_symbol.c (ia64_segment_type_name): Define.
874 * libebl_ia64.h (ia64_segment_type_name): Declare.
875
8762003-09-22 Ulrich Drepper <drepper@redhat.com>
877
878 * Makefile.am (AM_CFLAGS): Add -fpic.
879
8802003-08-14 Ulrich Drepper <drepper@redhat.com>
881
882 * Makefile.am (install): Remove dependency on libebl.so.
883
8842003-08-13 Ulrich Drepper <drepper@redhat.com>
885
886 * eblopenbackend.c: Adjust relative path to arch-specific DSOs
887 assuming the code ends up in the application. Add second dlopen()
888 try without any path, just the filename.
889 * Makefile.in: Remove rules to build and install libebl.so.
890
8912003-08-11 Ulrich Drepper <drepper@redhat.com>
892
893 * Moved to CVS archive.