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