blob: c4411e701da39841f7de877499bb8aabd16b8a3b [file] [log] [blame]
Roland McGrathf80c9072009-10-14 12:35:47 -070012009-10-14 Roland McGrath <roland@redhat.com>
2
3 * eblobjnote.c (ebl_object_note): Clean up NT_GNU_GOLD_VERSION printing.
4
Roland McGratha14b4eb2009-10-05 11:32:26 -070052009-10-05 Roland McGrath <roland@redhat.com>
6
7 * eblopenbackend.c (default_debugscn_p): Match .debug_pubtypes and
8 .debug_types too.
9
Petr Machatad3a8b2d2009-09-02 20:46:08 +0200102009-09-02 Petr Machata <pmachata@redhat.com>
11
12 * libebl/eblstrtab.c (morememory): Allocate memory in multiples of
13 pagesize.
14
Petr Machata077a7082009-08-06 18:45:08 +0200152009-08-06 Petr Machata <pmachata@redhat.com>
16
17 * libebl/eblstrtab.c (ebl_strtabfinalize): Only call copystrings
18 if we have any strings to copy.
19
Mark Wielaardbc1b92e2009-07-26 08:33:18 -0700202009-07-26 Mark Wielaard <mjw@redhat.com>
21
Mark Wielaard2f5b79e2009-07-26 14:49:26 -070022 * eblobjnote.c (ebl_object_note): Handle NT_GNU_GOLD_VERSION.
23
Mark Wielaardbc1b92e2009-07-26 08:33:18 -070024 * eblobjnotetypename.c (ebl_object_note_type_name): Recognize
25 NT_GNU_GOLD_VERSION.
26
Roland McGrath3c84db32009-06-24 17:41:40 -0700272009-07-08 Roland McGrath <roland@redhat.com>
28
29 * ebl-hooks.h: Add abi_cfi hook.
30 * eblopenbackend.c (default_abi_cfi): New function.
31 (fill_defaults): Add initializer.
32 * eblabicfi.c: New file.
33 * Makefile.am (gen_SOURCES): Add it.
34 * libebl.h: Declare ebl_abi_cfi.
35
Ulrich Drepper70c442c2009-07-08 00:53:24 -0700362009-07-08 Ulrich Drepper <drepper@redhat.com>
37
38 * eblsymbolbindingname.c (ebl_symbol_binding_name): Handle
39 STB_GNU_UNIQUE.
40
41 * eblsymboltypename.c (ebl_symbol_type_name): Only handle STT_GNU_IFUNC
42 if the binary is marked as being for Linux.
43
Roland McGrathd5ff6672009-04-01 18:28:41 -0700442009-04-01 Roland McGrath <roland@redhat.com>
45
46 * eblsymboltypename.c (ebl_symbol_type_name): Add STT_GNU_IFUNC.
47
48 * eblauxvinfo.c (AUXV_TYPES): Add RANDOM and BASE_PLATFORM.
49
Ulrich Drepper95fa15e2009-02-01 19:06:10 -0800502009-02-01 Ulrich Drepper <drepper@redhat.com>
51
52 * eblreloctypename.c (ebl_reloc_type_name): Return "<INVALID RELOC>"
53 instead of "???" for invalid relocations.
54
Roland McGratha845f682008-12-03 03:41:58 +0000552008-08-01 Roland McGrath <roland@redhat.com>
56
57 * eblcorenotetypename.c: Handle NT_386_IOPERM.
58
Roland McGrath1d8bb252008-08-07 08:39:41 +0000592008-07-28 Roland McGrath <roland@redhat.com>
60
61 * eblauxvinfo.c (AUXV_TYPES): Add EXECFN.
62
63 * eblauxvinfo.c (ebl_auxv_info): Handle missing elements of standard
64 table.
65
662008-07-04 Roland McGrath <roland@redhat.com>
67
68 * libebl.h: Declare ebl_syscall_abi.
69 * ebl_syscall_abi.c: New file.
70 * Makefile.am (gen_SOURCES): Add it.
71 * ebl-hooks.h: New hook syscall_abi.
72 * eblopenbackend.c (default_syscall_abi): New function.
73 (fill_defaults): Use it.
74
Roland McGrath13b69602008-04-01 02:30:05 +0000752008-03-31 Roland McGrath <roland@redhat.com>
76
77 * ebldynamictagname.c (ebl_dynamic_tag_name): Use hex for unknown tag.
78
79 * ebl-hooks.h: Add check_special_section hook.
80 * eblopenbackend.c (fill_defaults): Set new hook to ...
81 (default_check_special_section): ... this, new function.
82 * ebl_check_special_section.c: New file.
83 * Makefile.am (gen_SOURCES): Add it.
84 * libebl.h: Declare it.
85
Roland McGrath059c83e2008-02-21 06:19:39 +0000862008-02-20 Roland McGrath <roland@redhat.com>
87
88 * libebl.h: Declare ebl_check_object_attribute.
89 * eblcheckobjattr.c: New file.
90 * Makefile.am (gen_SOURCES): Add it.
91 * ebl-hooks.h: Add check_object_attribute hook.
92 * eblopenbackend.c (default_check_object_attribute): New function.
93 (fill_defaults): Initialize pointer to it.
94
952008-02-19 Roland McGrath <roland@redhat.com>
96
97 * eblsectiontypename.c (ebl_section_type_name):
98 Handle SHT_GNU_ATTRIBUTES.
99
1002008-02-08 Roland McGrath <roland@redhat.com>
101
102 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_SPE.
103
1042008-01-30 Roland McGrath <roland@redhat.com>
105
106 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_386_TLS.
107
Roland McGrathe4c22ea2007-10-23 13:07:39 +00001082007-10-18 Roland McGrath <roland@redhat.com>
109
110 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_VMX.
111
Ulrich Drepperb597dfa2007-10-16 05:21:27 +00001122007-10-11 Roland McGrath <roland@redhat.com>
113
114 * eblobjnote.c (ebl_object_note): Translate target format (byte-swap)
115 for NT_GNU_ABI_TAG contents.
116
Roland McGrathcb6d8652007-08-23 08:10:54 +00001172007-08-22 Roland McGrath <roland@redhat.com>
118
119 * libebl.h (Ebl_Core_Item): New member `group'.
120
1212007-08-19 Roland McGrath <roland@redhat.com>
122
123 * ebl-hooks.h: Add new hook auxv_info.
124 * eblopenbackend.c (default_auxv_info): New function.
125 (fill_defaults): Initialize auxv_info hook.
126 * eblauxvinfo.c : New file.
127 * Makefile.am (gen_SOURCES): Add it.
128 * libebl.h: Declare ebl_auxv_info.
129
130 * eblcorenote.c: Rewritten with new signature.
131 * Makefile.am (gen_SOURCES): Add it.
132 * libebl.h (Ebl_Register_Location, Ebl_Core_Item): New types.
133 (ebl_core_note_info): Completely revamp signature.
134 * ebl-hooks.h: Update decl.
135 * eblopenbackend.c (default_core_note): Update signature.
136
Roland McGrath87d47802007-07-16 22:23:37 +00001372007-07-09 Roland McGrath <roland@redhat.com>
138
139 * eblobjnotetypename.c (ebl_object_note_type_name): Handle
140 NT_GNU_HWCAP, NT_GNU_BUILD_ID.
141
142 * eblobjnote.c (ebl_object_note): Handle NT_GNU_BUILD_ID.
143
Roland McGrath4be15242007-04-25 03:09:33 +00001442007-04-22 Roland McGrath <roland@redhat.com>
145
146 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PRXFPREG.
147
Ulrich Drepperc07fbb32007-03-30 19:14:59 +00001482007-03-10 Roland McGrath <roland@redhat.com>
149
150 * eblcorenote.c (ebl_core_note): For normally-zero types,
151 print in hex if not zero.
152
Ulrich Drepperaa915fd2007-02-05 07:25:33 +00001532007-01-11 Roland McGrath <roland@redhat.com>
154
155 * ebl-hooks.h (machine_section_flag_check): New hook.
156 * libebl.h: Declare ebl_machine_section_flag_check.
157 * eblmachinesectionflagcheck.c: New file.
158 * Makefile.am (gen_SOURCES): Add it.
159 * eblopenbackend.c (default_machine_section_flag_check): New function.
160 (fill_defaults): Use it.
161
Roland McGrathc373d852006-10-10 00:25:21 +00001622006-09-04 Roland McGrath <roland@redhat.com>
163
164 * ebl-hooks.h: Replace register_name hook with register_info.
165 Also yield natural bit width and base type encoding.
166 * eblopenbackend.c (default_register_name): Renamed
167 default_register_info, new args added.
168 (fill_defaults): Update initialization.
169 * eblregname.c: File renamed ...
170 * eblreginfo.c: ... to this.
171 (ebl_register_name): Renamed to ebl_register_info, new args added.
172 * libebl.h: Update decl.
173
174 * Makefile.am (gen_SOURCES): Update list.
175
Ulrich Drepper28ed8952006-07-07 03:43:47 +00001762006-07-06 Ulrich Drepper <drepper@redhat.com>
177
178 * ebldynamictagname.c: Add support for DT_GNU_HASH.
179 * ebldynamictagcheck.c: Likewise.
180 * eblsectiontypename.c: Add support for SHT_GNU_HASH.
181
1822006-07-05 Ulrich Drepper <drepper@redhat.com>
183
184 * Makefile.am (gen_SOURCES): Add eblsysvhashentrysize.c.
185 * libeblP.h (struct ebl): Add sysvhash_entrysize element.
186 * eblopenbackend.c (fill_defaults): Initialize sysvhash_entrysize.
187
188 * eblopenbackend.c (openbackend): If possible, fill machine, class,
189 and data values in from the ELF file.
190
1912006-07-04 Ulrich Drepper <drepper@redhat.com>
192
193 * Makefile.am (gen_SOURCES): Add eblrelativerelocp.c.
194 * eblrelativerelocp.c: New file.
195 * ebl-hooks.c: Add relative_reloc_p.
196 * eblopenbackend.c (default_relative_reloc_p): New function.
197 (fill_defaults): Hook it up.
198 * libebl.h: Declare ebl_relative_reloc_p.
199
Ulrich Drepper6ca46002006-06-12 22:40:23 +00002002006-06-12 Ulrich Drepper <drepper@redhat.com>
201
202 * Makefile.am (gen_SOURCES): Add eblnonerelocp.c.
203 * eblnonerelocp.c: New file.
204 * ebl-hooks.c: Add none_reloc_p.
205 * eblopenbackend.c (default_none_reloc_p): New function.
206 (fill_defaults): Hook it up.
207 * libebl.h: Declare ebl_none_reloc_p.
208
Ulrich Drepper41cbd762006-05-27 18:19:23 +00002092006-05-27 Ulrich Drepper <drepper@redhat.com>
210
211 * libebl.h: Add extern "C".
212
Roland McGrath994b4892005-12-05 22:46:21 +00002132005-11-25 Roland McGrath <roland@redhat.com>
214
215 * eblregname.c: New file.
216 * Makefile.am (gen_SOURCES): Add it.
217 * ebl-hooks.h: Declare register_name hook.
218 * libebl.h: Declare ebl_register_name.
219 * eblopenbackend.c (default_register_name): New function.
220 (fill_defaults): Use it.
221
Roland McGrath215c6322005-11-16 22:46:04 +00002222005-11-16 Roland McGrath <roland@redhat.com>
223
224 * libebl.h: Use "" for elf-knowledge.h, not <>.
225
Roland McGrathe47ab762005-11-17 03:16:00 +00002262005-11-15 Roland McGrath <roland@redhat.com>
227
228 * Makefile.am: Removed everything for building libebl_*.so modules,
229 now in ../backends/Makefile.am instead.
230 * alpha_init.c: Moved to ../backends.
231 * alpha_reloc.def: Likewise.
232 * alpha_retval.c: Likewise.
233 * alpha_symbol.c: Likewise.
234 * arm_init.c: Likewise.
235 * arm_reloc.def: Likewise.
236 * arm_symbol.c: Likewise.
237 * common-reloc.c: Likewise.
238 * i386_corenote.c: Likewise.
239 * i386_init.c: Likewise.
240 * i386_reloc.def: Likewise.
241 * i386_retval.c: Likewise.
242 * i386_symbol.c: Likewise.
243 * ia64_init.c: Likewise.
244 * ia64_reloc.def: Likewise.
245 * ia64_symbol.c: Likewise.
246 * libebl_CPU.h: Likewise.
247 * ppc64_init.c: Likewise.
248 * ppc64_reloc.def: Likewise.
249 * ppc64_retval.c: Likewise.
250 * ppc64_symbol.c: Likewise.
251 * ppc_init.c: Likewise.
252 * ppc_reloc.def: Likewise.
253 * ppc_retval.c: Likewise.
254 * ppc_symbol.c: Likewise.
255 * s390_init.c: Likewise.
256 * s390_reloc.def: Likewise.
257 * s390_symbol.c: Likewise.
258 * sh_init.c: Likewise.
259 * sh_reloc.def: Likewise.
260 * sh_symbol.c: Likewise.
261 * sparc_init.c: Likewise.
262 * sparc_reloc.def: Likewise.
263 * sparc_symbol.c: Likewise.
264 * x86_64_corenote.c: Likewise.
265 * x86_64_init.c: Likewise.
266 * x86_64_reloc.def: Likewise.
267 * x86_64_retval.c: Likewise.
268 * x86_64_symbol.c: Likewise.
269
270 * libebl.h: Comment fixes.
271
272 * alpha_retval.c: New file.
273 * Makefile.am (alpha_SRCS): Add it.
274 * alpha_init.c (alpha_init): Initialize return_value_location hook.
275
276 * ppc64_retval.c: New file.
277 * Makefile.am (ppc64_SRCS): Add it.
278 * ppc64_init.c (ppc64_init): Initialize return_value_location hook.
279
280 * ppc_retval.c: New file.
281 * Makefile.am (ppc_SRCS): Add it.
282 * ppc_init.c (ppc_init): Initialize return_value_location hook.
283
Roland McGrathcd60ea82005-11-16 01:57:40 +00002842005-11-14 Roland McGrath <roland@redhat.com>
285
286 * ia64_init.c (ia64_init): Initialize EH->reloc_simple_type.
287 * sh_init.c (sh_init): Likewise.
288 * x86_64_init.c (x86_64_init): Likewise.
289
290 * sparc_symbol.c (sparc_reloc_simple_type): New function.
291 * sparc_init.c (sparc_init): Use it.
292
293 * arm_symbol.c (arm_reloc_simple_type): New function.
294 * arm_init.c (arm_init): Use it.
295
296 * alpha_symbol.c (alpha_reloc_simple_type): New function.
297 * alpha_init.c (alpha_init): Use it.
298
299 * ia64_reloc.def: Update bits per H. J. Lu <hjl@lucon.org>.
300
301 * arm_reloc.def: Update bits per Daniel Jacobowitz <drow@false.org>.
302
303 * alpha_reloc.def: Update bits per Richard Henderson <rth@redhat.com>.
304
Roland McGrathe47ab762005-11-17 03:16:00 +00003052005-11-13 Roland McGrath <roland@redhat.com>
306
307 * x86_64_retval.c: New file.
308 * Makefile.am (x86_64_SRCS): Add it.
309 * x86_64_init.c (x86_64_init): Use x86_64_return_value_location.
310
311 * i386_retval.c: New file.
312 * Makefile.am (i386_SRCS): Add it.
313 (libdw): New variable.
314 (libebl_%.so): Use $(libdw) in link; use --as-needed.
315 * i386_init.c (i386_init): Use i386_return_value_location.
316
317 * eblretval.c: New file.
318 * Makefile.am (gen_SOURCES): Add it.
319 (INCLUDES): Search in libdw.
320 * libebl.h: Include <libdw.h>. Declare ebl_return_value_location.
321 * ebl-hooks.h: Declare return_value_location hook.
322 * eblopenbackend.c (default_return_value_location): New function.
323 (fill_defaults): Use it.
324
Roland McGrathcd60ea82005-11-16 01:57:40 +00003252005-11-10 Roland McGrath <roland@redhat.com>
326
327 * s390_init.c: New file.
328 * s390_reloc.def: New file.
329 * s390_symbol.c: New file.
330 * Makefile.am (modules, libebl_pic): Add s390.
331 (s390_SRCS, libebl_s390_pic_a_SOURCES): New variables.
332 (am_libebl_s390_pic_a_OBJECTS): New variable.
333
334 * ppc64_init.c: Use common-reloc.c.
335 * ppc64_symbol.c (ppc64_backend_name): Removed.
336 (ppc64_reloc_type_check, ppc64_reloc_type_name): Likewise.
337 (ppc64_copy_reloc_p, ppc64_reloc_valid_use): Likewise.
338
339 * ppc_init.c: Use common-reloc.c.
340 * ppc_symbol.c (ppc_backend_name): Removed.
341 (ppc_reloc_type_name, ppc_reloc_type_check): Likewise.
342 (ppc_reloc_valid_use, ppc_copy_reloc_p): Likewise.
343
344 * sparc_init.c: Use common-reloc.c.
345 * sparc_symbol.c (sparc_backend_name): Removed.
346 (sparc_reloc_type_name, sparc_reloc_type_check): Likewise.
347 (sparc_copy_reloc_p): Likewise.
348
349 * arm_init.c: Use common-reloc.c.
350 * arm_symbol.c (arm_backend_name): Removed.
351 (arm_reloc_type_name, arm_reloc_type_check, arm_copy_reloc_p): Removed.
352
353 * alpha_init.c: Use common-reloc.c.
354 * alpha_symbol.c (alpha_backend_name): Removed.
355 (alpha_reloc_type_name, alpha_reloc_type_check): Likewise.
356 (alpha_copy_reloc_p): Likewise.
357
358 * ia64_symbol.c (ia64_backend_name): Removed.
359 (ia64_reloc_type_name, ia64_reloc_type_check): Likewise.
360 (ia64_copy_reloc_p): Likewise.
361
362 * x86_64_init.c: Use common-reloc.c.
363 * x86_64_symbol.c (x86_64_backend_name): Removed.
364 (x86_64_copy_reloc_p, x86_64_reloc_valid_use): Likewise.
365 (x86_64_reloc_type_check, x86_64_reloc_type_name): Likewise.
366
367 * sh_init.c: Use common-reloc.c.
368 * sh_symbol.c: All functions removed.
369 (sh_reloc_simple_type): New function.
370 (sh_gotpc_reloc_check): New function.
371
372 * common-reloc.c: New file.
373 * Makefile.am (noinst_HEADERS): Add it.
374 * i386_init.c: Include it.
375
376 * sh_reloc.def: New file.
377 * i386_reloc.def: New file.
378 * alpha_reloc.def: New file.
379 * arm_reloc.def: New file.
380 * i386_reloc.def: New file.
381 * ia64_reloc.def: New file.
382 * ppc64_reloc.def: New file.
383 * ppc_reloc.def: New file.
384 * sh_reloc.def: New file.
385 * sparc_reloc.def: New file.
386 * x86_64_reloc.def: New file.
387 * Makefile.am (EXTRA_DIST): Add $(modules:=_reloc.def).
388
389 * libebl_alpha.map: Removed.
390 * libebl_ia64.map: Removed.
391 * libebl_ppc.map: Removed.
392 * libebl_sparc.map: Removed.
393 * libebl_arm.map: Removed.
394 * libebl_i386.map: Removed.
395 * libebl_ppc64.map: Removed.
396 * libebl_sh.map: Removed.
397 * libebl_x86_64.map: Removed.
398 * Makefile.am (EXTRA_DIST): Remove them.
399 (libebl_%.map, libebl_%.so): New pattern rules.
400
401 * libebl_alpha.h: Removed.
402 * libebl_ia64.h: Removed.
403 * libebl_ppc.h: Removed.
404 * libebl_sparc.h: Removed.
405 * libebl_arm.h: Removed.
406 * libebl_i386.h: Removed.
407 * libebl_ppc64.h: Removed.
408 * libebl_sh.h: Removed.
409 * libebl_x86_64.h: Removed.
410 * Makefile.am (noinst_HEADERS): Remove them.
411
412 * x86_64_corenote.c: Use libebl_CPU.h instead.
413 * x86_64_symbol.c: Likewise.
414 * i386_corenote.c: Likewise.
415
4162005-11-09 Roland McGrath <roland@redhat.com>
417
418 * ia64_symbol.c (ia64_reloc_simple_type): New function.
419
420 * ebl-hooks.h (reloc_simple_type): Take the Ebl handle, not Elf handle.
421 * eblrelocsimpletype.c (ebl_reloc_simple_type): Update caller.
422 * eblopenbackend.c (default_reloc_simple_type): Update signature.
423 * i386_symbol.c (i386_reloc_simple_type): Likewise.
424 * ppc64_symbol.c (ppc64_reloc_simple_type): Likewise.
425 * ppc_symbol.c (ppc_reloc_simple_type): Likewise.
426 * x86_64_symbol.c (x86_64_reloc_simple_type): Likewise.
427
428 * i386_symbol.c (i386_backend_name): Removed.
429 (i386_reloc_type_name, i386_reloc_type_check): Likewise.
430 (i386_reloc_valid_use): Removed.
431 (i386_copy_reloc_p): Removed.
432
433 * alpha_destr.c: Removed.
434 * arm_destr.c: Removed.
435 * i386_destr.c: Removed.
436 * ia64_destr.c: Removed.
437 * ppc64_destr.c: Removed.
438 * ppc_destr.c: Removed.
439 * sh_destr.c: Removed.
440 * sparc_destr.c: Removed.
441 * x86_64_destr.c: Removed.
442
443 * ebl-hooks.h: New file, broken out of ...
444 * libeblP.h (struct ebl): ... here. #include that for hook
445 declarations, after defining EBLHOOK macro.
446 * libebl_CPU.h: New file.
447 * Makefile.am (noinst_HEADERS): Add them.
448
449 * libeblP.h (struct ebl): Use uint_fast16_t for machine,
450 and uint_fast8_t for class and data.
451
4522005-08-14 Roland McGrath <roland@redhat.com>
453
454 * ia64_symbol.c (ia64_section_type_name): New function.
455 (ia64_dynamic_tag_check): New function.
456 (ia64_reloc_valid_use): New function.
457 * libebl_ia64.h: Declare them.
458 * ia64_init.c (ia64_init): Use them.
459 * Makefile.am (libebl_ia64.so): Link with libelf.
460
Ulrich Drepperfbe998a2005-08-29 16:27:10 +00004612005-08-28 Ulrich Drepper <drepper@redhat.com>
462
463 * Makefile.am: Use $(LINK) not $(CC) when creating DSOs.
464
Roland McGrathe53d04a2005-08-13 20:56:07 +00004652005-08-13 Roland McGrath <roland@redhat.com>
466
467 * ia64_symbol.c (ia64_machine_flag_check): New function.
468 * libebl_ia64.h: Declare it.
469 * ia64_init.c (ia64_init): Use it.
470
Ulrich Drepperc5c33a62005-08-13 17:50:47 +00004712005-08-13 Ulrich Drepper <drepper@redhat.com>
472
473 * libebl.h: Add ehdr parameter to ebl_bss_plt_p and
474 ebl_check_special_symbol.
475 * libeblP.h (struct ebl): Adjust callback functions.
476 * eblopenbackend.c: Adjust dummy functions.
477 * ebl_check_special_symbol.c: Add parameter and pass it on.
478 * eblbsspltp.c: Likewise.
479 * ppc_symbol.c (find_dyn_got): With ehdr passed, simplify search for
480 the dynamic section entry.
481 (ppc_check_special_symbol): Add ehdr parameter.
482 (ppc_bss_plt_p): Likewise.
483 * libebl_ppc.h: Adjust prototypes.
484 * ppc64_symbol.c (ppc_check_special_symbol): Add ehdr parameter.
485 (ppc_bss_plt_p): Likewise.
486 * libebl_ppc64.h: Adjust prototypes.
487
Roland McGrath653d3762005-08-13 01:59:10 +00004882005-08-12 Roland McGrath <roland@redhat.com>
489
Roland McGrathf8873cb2005-08-13 03:26:06 +0000490 * ppc_symbol.c (find_dyn_got): New function, broken out of ...
491 (ppc_bss_plt_p): ... here. Call that.
492 (ppc_check_special_symbol): Use find_dyn_got to fetch value to check
493 against _GLOBAL_OFFSET_TABLE_.
494
Roland McGrath653d3762005-08-13 01:59:10 +0000495 * libeblP.h (struct ebl): Add bss_plt_p hook.
496 * eblopenbackend.c (default_bss_plt_p): New function.
497 (fill_defaults): Use it.
498 * eblbsspltp.c: New file.
499 * Makefile.am (gen_SOURCES): Add it.
500 * libebl.h: Declare ebl_bss_plt_p.
501 * ppc_symbol.c (ppc_bss_plt_p): New function.
502 * libebl_ppc.h: Declare it.
503 * ppc_init.c (ppc_init): Use it.
504 * ppc64_symbol.c (ppc64_bss_plt_p): New function.
505 * libebl_ppc64.h: Declare it.
506 * ppc64_init.c (ppc64_init): Use it.
507
508 * ebl_check_special_symbol.c: New file.
509 * Makefile.am (gen_SOURCES): Add it.
510 * libebl.h: Declare ebl_check_special_symbol.
511 * libeblP.h (struct ebl): Add check_special_symbol hook.
512 * eblopenbackend.c (default_check_special_symbol): New function.
513 (fill_defaults): Use it.
514 * ppc_symbol.c (ppc_check_special_symbol): New function.
515 * libebl_ppc.h: Add prototype.
516 * ppc_init.c (ppc_init): Use it.
517 * ppc64_symbol.c (ppc64_check_special_symbol): New function.
518 * libebl_ppc64.h: Add prototype.
519 * ppc64_init.c (ppc64_init): Use it.
520
Ulrich Drepperb03b0572005-08-07 08:12:22 +00005212005-08-07 Ulrich Drepper <drepper@redhat.com>
522
523 * ppc_init.c: Add support for new DT_PPC_* and R_PPC_* values.
524 * ppc_symbol.c: Likewise.
525 * libebl_ppc.h: Likewise.
526 * ppc64_init.c: There is now also a dynamic_tag_check functions
527 * ppc64_symbol.c: Add dynamic_tag_check.
528 * libebl_ppc64.h: Add prototype.
529 * alpha_init.c: Add support for new DT_ALPHA_* value.
530 * alpha_symbol.c: Likewise.
531 * libebl_alpha.h: Likewise.
532
Ulrich Drepper6fcb3832005-08-03 21:10:49 +00005332005-08-03 Ulrich Drepper <drepper@redhat.com>
534
535 * libebl_alpha.map: Remove unnecessary exports.
536 * libebl_arm.map: Likewise.
537 * libebl_i386.map: Likewise.
538 * libebl_ia64.map: Likewise.
539 * libebl_ppc.map: Likewise.
540 * libebl_ppc64.map: Likewise.
541 * libebl_sh.map: Likewise.
542 * libebl_sparc.map: Likewise.
543 * libebl_x86_64.map: Likewise.
544
Ulrich Dreppera38998e2005-08-03 02:05:39 +00005452005-08-02 Ulrich Drepper <drepper@redhat.com>
546
547 * Makefile.am (libebl_a_SOURCES): Add eblelfclass.c, eblelfdata.c,
548 and eblelfmachine.c.
549 * elbopenbackend.c (machines): Add class and data fields. Initialize
550 them.
551 (ebl_openbackend): Initialize machine, class, data fields in result.
552 * libebl.h: Declare Add eblelfclass, eblelfdata, and eblelfmachine.
553 * libeblP.h (Ebl): Add machine, class, data fields.
554
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00005552005-07-23 Ulrich Drepper <drepper@redhat.com>
556
557 * eblsectionstripp.c: New file.
558 * Makefile.am (gen_SOURCES): Add eblsectionstripp.c.
559 * i386_init.c (i386_init): Install specific debugscn_p callback.
560 * i386_symbol.c (i386_debugscn_p): New function.
561 * libebl.h: Declare ebl_section_strip_p.
562 * libebl_i386.h: Declare i386_debugscn_p.
563
564 * libebl.h: Move Ebl definition to...
565 * libeblP.h: ...here.
566
5672005-07-21 Roland McGrath <roland@redhat.com>
568
569 * Makefile.am (install-ebl-modules): New target, commands from ...
570 (install): ... here. Make this depend on it.
571 (LIBEBL_SUBDIR): New variable, substituted by configure.
572 (install-ebl-modules): Install in $(libdir)/$(LIBEBL_SUBDIR).
573 * eblopenbackend.c (openbackend): Use LIBEBL_SUBDIR in module name.
574
5752005-07-21 Ulrich Drepper <drepper@redhat.com>
576
577 * eblcopyrelocp.c: New file.
578 * Makefile.am (gen_SOURCES): Add eblcopyrelocp.c.
579 * libebl.h: Declare ebl_copy_reloc_p.
580 * eblopenbackend.c (fill_defaults): Fill in copy_reloc_p.
581 (default_copy_reloc_p): New function.
582 * alpha_init.c: Define and use arch-specific copy_reloc_p function.
583 * alpha_symbol.c: Likewise.
584 * arm_init.c: Likewise.
585 * arm_symbol.c: Likewise.
586 * i386_init.c: Likewise.
587 * i386_symbol.c: Likewise.
588 * ia64_init.c: Likewise.
589 * ia64_symbol.c: Likewise.
590 * ppc64_init.c: Likewise.
591 * ppc64_symbol.c: Likewise.
592 * ppc_init.c: Likewise.
593 * ppc_symbol.c: Likewise.
594 * sh_init.c: Likewise.
595 * sh_symbol.c: Likewise.
596 * sparc_init.c: Likewise.
597 * sparc_symbol.c: Likewise.
598 * x86_64_init.c: Likewise.
599 * x86_64_symbol.c: Likewise.
600 * libebl_alpha.h: Declare the copy_reloc_p function.
601 * libebl_arm.h: Likewise.
602 * libebl_i386.h: Likewise.
603 * libebl_ia64.h: Likewise.
604 * libebl_ppc.h: Likewise.
605 * libebl_ppc64.h: Likewise.
606 * libebl_sh.h: Likewise.
607 * libebl_sparc.h: Likewise.
608 * libebl_x86_64.h: Likewise.
609
6102005-05-31 Roland McGrath <roland@redhat.com>
611
612 * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency
613 tracking works right.
614
6152005-05-21 Ulrich Drepper <drepper@redhat.com>
616
617 * libebl_x86_64.map: Add x86_64_core_note.
618
6192005-05-19 Roland McGrath <roland@redhat.com>
620
621 * libebl_i386.map: Add i386_reloc_valid_use, i386_reloc_simple_type.
622 * libebl_ppc.map: Add ppc_reloc_simple_type.
623 * libebl_ppc64.map: Add ppc64_reloc_simple_type.
624 * libebl_x86_64.map: Add x86_64_reloc_simple_type.
625
6262005-05-11 Ulrich Drepper <drepper@redhat.com>
627
628 * eblcorenote.c: Handle new AT_* values and files with different
629 endianess.
630 * Makefile.am (x86_64_SRCS): Add x86_64_corenote.c.
631 * x86-64_corenote.c: New file.
632 * x86_64_init.c: Hook in x86_64_corenote.
633 * i386_corenote.c: Make file usable on 64-bit platforms.
634
635 * eblopenbackend.c: If modules version comparison fails, reinitialize
636 hooks.
637
6382005-05-10 Ulrich Drepper <drepper@redhat.com>
639
640 * eblopenbackend.c: Require the init function to return a string.
641 Compare it with MODVERSION from config.h.
642 * alpha_init.c: Change return type. Return MODVERSION or NULL.
643 * arm_init.c: Likewise.
644 * eblopenbackend.c: Likewise.
645 * i386_init.c: Likewise.
646 * ia64_init.c: Likewise.
647 * ppc64_init.c: Likewise.
648 * ppc_init.c: Likewise.
649 * sh_init.c: Likewise.
650 * sparc_init.c: Likewise.
651 * x86_64_init.c: Likewise.
652 * libeblP.h: Adjust ebl_bhinit_t.
653 * libebl_alpha.h: Adjust init function prototype.
654 * libebl_arm.h: Likewise.
655 * libebl_i386.h: Likewise.
656 * libebl_ia64.h: Likewise.
657 * libebl_ppc.h: Likewise.
658 * libebl_ppc64.h: Likewise.
659 * libebl_sh.h: Likewise.
660 * libebl_sparc.h: Likewise.
661 * libebl_x86_64.h: Likewise.
662
663 * mips_destr.c: Removed.
664 * mips_init.c: Removed.
665 * mips_symbol.c: Removed.
666 * libebl_mips.h: Removed.
667 * libebl_mips.map: Removed.
668
6692005-05-03 Roland McGrath <roland@redhat.com>
670
671 * libebl.h (Ebl): Add `reloc_simple_type' member.
672 * eblopenbackend.c (default_reloc_simple_type): New function.
673 (openbackend): Use that as default reloc_simple_type callback.
674 * eblrelocsimpletype.c: New file.
675 * Makefile.am (gen_SOURCES): Add it.
676 * i386_symbol.c (i386_reloc_simple_type): New function.
677 * libebl_i386.h: Declare it.
678 * i386_init.c (i386_init): Use it.
679 * x86_64_symbol.c (x86_64_reloc_simple_type): New function.
680 * libebl_x86_64.h: Declare it.
681 * x86_64_init.c (x86_64_init): Use it.
682 * ppc_symbol.c (ppc_reloc_simple_type): New function.
683 * libebl_ppc.h: Declare it.
684 * ppc_init.c (ppc_init): Use it.
685 * ppc64_symbol.c (ppc64_reloc_simple_type): New function.
686 * libebl_ppc64.h: Declare it.
687 * ppc64_init.c (ppc64_init): Use it.
688
6892005-03-17 Ulrich Drepper <drepper@redhat.com>
690
691 * eblcorenote.c (ebl_core_note): Add support for AT_SECURE.
692
6932005-02-15 Ulrich Drepper <drepper@redhat.com>
694
695 * Makefile.am (AM_CFLAGS): Add -Wformat=2.
696
6972005-02-14 Ulrich Drepper <drepper@redhat.com>
698
699 * alpha_destr.c: Add __attribute__((unused)) where needed.
700 * alpha_init.c: Likewise.
701 * alpha_symbol.c: Likewise.
702 * arm_destr.c: Likewise.
703 * arm_init.c: Likewise.
704 * arm_symbol.c: Likewise.
705 * i386_corenote.c: Likewise.
706 * i386_destr.c: Likewise.
707 * i386_init.c: Likewise.
708 * i386_symbol.c: Likewise.
709 * ia64_destr.c: Likewise.
710 * ia64_init.c: Likewise.
711 * ia64_symbol.c: Likewise.
712 * mips_destr.c: Likewise.
713 * mips_init.c: Likewise.
714 * mips_symbol.c: Likewise.
715 * ppc64_destr.c: Likewise.
716 * ppc64_init.c: Likewise.
717 * ppc64_symbol.c: Likewise.
718 * ppc_destr.c: Likewise.
719 * ppc_init.c: Likewise.
720 * ppc_symbol.c: Likewise.
721 * sh_destr.c: Likewise.
722 * sh_init.c: Likewise.
723 * sh_symbol.c: Likewise.
724 * sparc_destr.c: Likewise.
725 * sparc_init.c: Likewise.
726 * sparc_symbol.c: Likewise.
727 * x86_64_destr.c: Likewise.
728 * x86_64_init.c: Likewise.
729 * x86_64_symbol.c: Likewise.
730
731 * x86_64_symbol.c (reloc_map_table): Fix entries for R_X86_64_64
732 and R_X86_64_32..
733
7342005-02-06 Ulrich Drepper <drepper@redhat.com>
735
736 * eblstrtab.c: A few cleanups.
737
738 * eblopenbackend.c: Mark unused parameters.
739
740 * eblgstrtab.c: Cleanups a few printf format strings.
741
742 * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra.
743
7442005-02-05 Ulrich Drepper <drepper@redhat.com>
745
746 * Makefile.am: Check for text relocations in constructed DSOs.
747
748 * eblstrtab.c: Minor cleanups.
749
750 * Makefile.am (AM_CFLAGS): Add -std=gnu99 and -fmudflap for MUDFLAP.
751
7522004-08-16 Ulrich Drepper <drepper@redhat.com>
753
754 * Makefile.am (AM_CFLAGS): Add LIBSTR definition with base name of
755 the lib directory.
756 * eblopenbackend.c (openbackend): Use LIBSTR instead of hardcoded
757 lib in path to ebl modules.
758
7592004-04-01 Ulrich Drepper <drepper@redhat.com>
760
761 * Makefile.am: Add rules for ppc and ppc64 ebl module.
762 * ppc_init..c: New file.
763 * ppc_destr.c: New file.
764 * ppc_symbol.c: New file.
765 * libebl_ppc.h: New file.
766 * libebl_ppc.map: New file.
767 * ppc64_init..c: New file.
768 * ppc64_destr.c: New file.
769 * ppc64_symbol.c: New file.
770 * libebl_ppc64.h: New file.
771 * libebl_ppc64.map: New file.
772
7732004-01-20 Ulrich Drepper <drepper@redhat.com>
774
775 * Makefile.am: Support building with mudflap.
776
7772004-01-18 Ulrich Drepper <drepper@redhat.com>
778
779 * libeblP.h (_): Use elfutils domain.
780
7812004-01-16 Ulrich Drepper <drepper@redhat.com>
782
783 * eblsectionname.c: Add support for SHN_BEFORE and SHN_AFTER.
784
7852004-01-13 Ulrich Drepper <drepper@redhat.com>
786
787 * eblsegmenttypename.c ((ebl_segment_type_name): Add support for
788 PT_GNU_RELRO.
789
7902004-01-08 Ulrich Drepper <drepper@redhat.com>
791
792 * libebl.h: Remove last traces of libtool.
793
7942004-01-05 Ulrich Drepper <drepper@redhat.com>
795
796 * elf-knowledge.h: Move to libelf subdir.
797
798 * Makefile.am (EXTRA_DIST): Remove libebl.map.
799 * libebl.map: Removed.
800
8012003-12-08 Ulrich Drepper <drepper@redhat.com>
802
803 * eblsectiontypename.c (ebl_section_type_name): Add support for
804 SHT_SUNW_move, SHT_CHECKSUM, and SHT_GNU_LIBLIST.
805
8062003-11-19 Ulrich Drepper <drepper@redhat.com>
807
808 * ia64_symbol.c (ia64_dynamic_tag_name): New function.
809 * libebl_ia64.h (ia64_dynamic_tag_name): Declare.
810 * ia64_init.c (ia64_init): Register i164_dynamic_tag_name.
811
8122003-09-24 Ulrich Drepper <drepper@redhat.com>
813
814 * ia64_init.c (ia64_init): Initialize segment_type_name callback.
815 * ia64_symbol.c (ia64_segment_type_name): Define.
816 * libebl_ia64.h (ia64_segment_type_name): Declare.
817
8182003-09-22 Ulrich Drepper <drepper@redhat.com>
819
820 * Makefile.am (AM_CFLAGS): Add -fpic.
821
8222003-08-14 Ulrich Drepper <drepper@redhat.com>
823
824 * Makefile.am (install): Remove dependency on libebl.so.
825
8262003-08-13 Ulrich Drepper <drepper@redhat.com>
827
828 * eblopenbackend.c: Adjust relative path to arch-specific DSOs
829 assuming the code ends up in the application. Add second dlopen()
830 try without any path, just the filename.
831 * Makefile.in: Remove rules to build and install libebl.so.
832
8332003-08-11 Ulrich Drepper <drepper@redhat.com>
834
835 * Moved to CVS archive.