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