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