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