1 2016-01-09 Mark Wielaard <mjw (a] redhat.com> 2 3 * eblobjnote.c (ebl_object_note): Add brackets around if statement 4 body. 5 6 2015-12-18 Mark Wielaard <mjw (a] redhat.com> 7 8 * eblopenbackend.c (default_debugscn_p): Also match .zdebug sections. 9 10 2015-12-08 Jose E. Marchesi <jose.marchesi (a] oracle.com> 11 12 * libebl.h: Prototype for ebl_ra_offset. 13 * eblabicfi.c (ebl_ra_offset): New function. 14 * libeblP.h (struct ebl): new field ra_offset; 15 16 2015-09-24 Jose E. Marchesi <jose.marchesi (a] oracle.com> 17 18 * Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid 19 relocation overflows in some platforms. 20 21 2015-09-22 Mark Wielaard <mjw (a] redhat.com> 22 23 * *.c: Remove old-style function definitions. 24 25 2015-09-09 Chih-Hung Hsieh <chh (a] google.com> 26 27 * ebldwarftoregno.c (ebl_dwarf_to_regno): Remove redundant NULL tests 28 on parameters declared with __nonnull_attribute__. 29 * eblinitreg.c (ebl_frame_nregs): Likewise. 30 * eblnormalizepc.c (ebl_normalize_pc): Likewise. 31 * eblunwind.c (ebl_unwind): Likewise. 32 33 2015-09-04 Chih-Hung Hsieh <chh (a] google.com> 34 35 * eblopenbackend.c (ebl_openbackend_machine): Replace K&R function 36 definition with ansi-C definitions. 37 * eblstother.c (ebl_check_st_other_bits): Likewise. 38 39 2015-06-12 Mark Wielaard <mjw (a] redhat.com> 40 41 * eblcheckreloctargettype.c (ebl_check_reloc_target_type): Allow 42 SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY. 43 44 2015-05-17 Mark Wielaard <mjw (a] redhat.com> 45 46 * eblobjnote.c (ebl_object_note): If allocation buf is large, then 47 allocate it with malloc. 48 49 2015-05-17 Mark Wielaard <mjw (a] redhat.com> 50 51 * eblopenbackend.c (MAX_PREFIX_LEN): New define (16). 52 (openbackend): Stack allocate symname array using MAX_PREFIX_LEN. 53 54 2015-01-27 Mark Wielaard <mjw (a] redhat.com> 55 56 * libebl.h: Add comment from README that this is completely 57 UNSUPPORTED. 58 59 2014-11-22 Mark Wielaard <mjw (a] redhat.com> 60 61 * ebl-hooks.h (bss_plt_p): Remove ehdr argument. 62 * eblbsspltp.c (ebl_bss_plt_p): Likewise. 63 * eblopenbackend.c (default_bss_plt_p): Likewise. 64 * libebl.h (ebl_bss_plt_p): Likewise. 65 66 2014-11-17 Mark Wielaard <mjw (a] redhat.com> 67 68 * ebldebugscnp.c (ebl_debugscn_p): Check name is not NULL. 69 70 2014-06-17 Mark Wielaard <mjw (a] redhat.com> 71 72 * eblinitreg.c (ebl_func_addr_mask): New function. 73 * libebl.h (ebl_func_addr_mask): Define. 74 * libeblP.h (struct ebl): Add func_addr_mask. 75 76 2014-05-19 Mark Wielaard <mjw (a] redhat.com> 77 78 * Makefile.am (gen_SOURCES): Add eblcheckreloctargettype.c. 79 * eblcheckreloctargettype.c: New file. 80 * ebl-hooks.h (check_reloc_target_type): New hook. 81 * eblopenbackend.c (default_check_reloc_target_type): New function. 82 (fill_defaults): Assign default_check_reloc_target_type to 83 check_reloc_target_type. 84 * libebl.h (ebl_check_reloc_target_type): New function definition. 85 86 2013-12-18 Mark Wielaard <mjw (a] redhat.com> 87 88 * Makefile.am (gen_SOURCES): Add eblresolvesym.c. 89 * ebl-hooks.h (resolve_sym_value): New entry. 90 * eblresolvesym.c: New file. 91 * libebl.h (ebl_resolve_sym_value): New definition. 92 * libeblP.h (fd_addr): New field. 93 (fd_data): Likewise. 94 95 2013-12-18 Jan Kratochvil <jan.kratochvil (a] redhat.com> 96 97 unwinder: s390 and s390x 98 * Makefile.am (gen_SOURCES): Add eblnormalizepc.c and eblunwind.c. 99 * ebl-hooks.h (normalize_pc, unwind): New. 100 * eblnormalizepc.c: New file. 101 * eblunwind.c: New file. 102 * libebl.h (Ebl_Register_Location): Add field pc_register. 103 (ebl_normalize_pc): New declaration. 104 (ebl_tid_registers_get_t, ebl_pid_memory_read_t): New definitions. 105 (ebl_unwind): New declaration. 106 107 2013-12-15 Jan Kratochvil <jan.kratochvil (a] redhat.com> 108 109 unwinder: ppc and ppc64 110 * Makefile.am (gen_SOURCES): Add ebldwarftoregno.c. 111 * ebl-hooks.h (dwarf_to_regno): New. 112 * ebldwarftoregno.c: New file. 113 * libebl.h (Ebl_Core_Item): New field pc_register. 114 (ebl_tid_registers_t): Add FIRSTREG -1 to the comment. 115 (ebl_dwarf_to_regno): New. 116 117 2013-11-25 Petr Machata <pmachata (a] redhat.com> 118 119 * eblopenbackend.c (machines): Add entry for AArch64. 120 121 2013-11-14 Jan Kratochvil <jan.kratochvil (a] redhat.com> 122 123 Code cleanup: Remove const in prototype 124 * libebl.h (ebl_tid_registers_t): Remove const from firstreg. 125 126 2013-11-07 Jan Kratochvil <jan.kratochvil (a] redhat.com> 127 Mark Wielaard <mjw (a] redhat.com> 128 129 * Makefile.am (gen_SOURCES): Add eblinitreg.c. 130 * ebl-hooks.h (set_initial_registers_tid): New entry. 131 * eblinitreg.c: New file. 132 * libebl.h (ebl_tid_registers_t): New definition. 133 (ebl_set_initial_registers_tid, ebl_frame_nregs): New declarations. 134 * libeblP.h (struct ebl): New entry frame_nregs. 135 136 2013-10-06 Mark Wielaard <mjw (a] redhat.com> 137 138 * libebl.h (ebl_abi_cfi): Document restrictions using register 139 rules. 140 141 2013-09-26 Petr Machata <pmachata (a] redhat.com> 142 143 * eblcorenotetypename.c: Handle NT_ARM_TLS, NT_ARM_HW_BREAK, 144 NT_ARM_HW_WATCH, NT_SIGINFO, NT_FILE. 145 146 2013-09-25 Mark Wielaard <mjw (a] redhat.com> 147 148 * eblsectionstripp.c (ebl_section_strip_p): Check shdr_l is not NULL. 149 150 2013-04-24 Mark Wielaard <mjw (a] redhat.com> 151 152 * Makefile.am: Use AM_CPPFLAGS instead of INCLUDES. 153 154 2012-10-12 Jan Kratochvil <jan.kratochvil (a] redhat.com> 155 156 * ebl-hooks.h (abi_cfi): Extend its comment for return value. 157 * eblopenbackend.c (default_abi_cfi): Return -1. 158 * libebl.h (ebl_abi_cfi): Extend its comment for return value. 159 160 2012-08-30 Petr Machata <pmachata (a] redhat.com> 161 162 * eblcorenotetypename.c: Handle PPC_VSX, X86_XSTATE, 163 S390_HIGH_GPRS, S390_TIMER, S390_TODCMP, S390_TODPREG, S390_CTRS, 164 S390_PREFIX, S390_LAST_BREAK, S390_SYSTEM_CALL, and ARM_VFP. 165 166 2012-08-22 Jeff Kenton <jkenton (a] tilera.com> 167 168 * eblopenbackend.c (machines): Add tilegx. 169 170 2011-06-26 Mark Wielaard <mjw (a] redhat.com> 171 172 * eblopenbackend.c (default_debugscn_p): Add .debug_macro. 173 174 2011-04-26 Mark Wielaard <mjw (a] redhat.com> 175 176 * libebl.h (ebl_object_note_type_name): Add const char *name arg. 177 * eblhooks.h (object_note_type_name): Likewise. 178 * eblopenbackend.c (default_object_note_type_name): Likewise. 179 * eblobjnotetypename.c (ebl_object_note_type_name): Likewise. 180 And print version if name is "stapsdt". 181 * eblobjnote.c (ebl_object_note): Add output for "stapsdt" notes. 182 183 2011-03-21 Marek Polacek <mpolacek (a] redhat.com> 184 185 * ebldynamictagname.c: Fix typo in TLSDESC_GOT. 186 187 2011-03-10 Mark Wielaard <mjw (a] redhat.com> 188 189 * Makefile.am (gen_SOURCES): Add eblstother.c. 190 * eblstother.c: New file. 191 * ebl-hooks.h: Add check_st_other_bits hook. 192 * eblopenbackend.c (default_check_st_other_bits): New function. 193 (fill_defaults): Hook default_check_st_other_bits. 194 * libebl.h (ebl_check_st_other_bits): New prototype. 195 196 2010-07-07 Roland McGrath <roland (a] redhat.com> 197 198 * eblopenbackend.c (default_debugscn_p): Match .gdb_index section. 199 200 2010-02-15 Roland McGrath <roland (a] redhat.com> 201 202 * Makefile.am: Use config/eu.am for common stuff. 203 204 2010-01-04 Roland McGrath <roland (a] redhat.com> 205 206 * eblcorenote.c (ebl_core_note): Take GElf_Nhdr * and name data 207 pointer instead of only n_type and n_descsz. 208 * libebl.h: Update declaration. 209 * ebl-hooks.h: Update core_note hook signature. 210 * eblopenbackend.c (default_core_note): Likewise. 211 212 2009-10-14 Roland McGrath <roland (a] redhat.com> 213 214 * eblobjnote.c (ebl_object_note): Clean up NT_GNU_GOLD_VERSION printing. 215 216 2009-10-05 Roland McGrath <roland (a] redhat.com> 217 218 * eblopenbackend.c (default_debugscn_p): Match .debug_pubtypes and 219 .debug_types too. 220 221 2009-09-02 Petr Machata <pmachata (a] redhat.com> 222 223 * libebl/eblstrtab.c (morememory): Allocate memory in multiples of 224 pagesize. 225 226 2009-08-06 Petr Machata <pmachata (a] redhat.com> 227 228 * libebl/eblstrtab.c (ebl_strtabfinalize): Only call copystrings 229 if we have any strings to copy. 230 231 2009-07-26 Mark Wielaard <mjw (a] redhat.com> 232 233 * eblobjnote.c (ebl_object_note): Handle NT_GNU_GOLD_VERSION. 234 235 * eblobjnotetypename.c (ebl_object_note_type_name): Recognize 236 NT_GNU_GOLD_VERSION. 237 238 2009-07-08 Roland McGrath <roland (a] redhat.com> 239 240 * ebl-hooks.h: Add abi_cfi hook. 241 * eblopenbackend.c (default_abi_cfi): New function. 242 (fill_defaults): Add initializer. 243 * eblabicfi.c: New file. 244 * Makefile.am (gen_SOURCES): Add it. 245 * libebl.h: Declare ebl_abi_cfi. 246 247 2009-07-08 Ulrich Drepper <drepper (a] redhat.com> 248 249 * eblsymbolbindingname.c (ebl_symbol_binding_name): Handle 250 STB_GNU_UNIQUE. 251 252 * eblsymboltypename.c (ebl_symbol_type_name): Only handle STT_GNU_IFUNC 253 if the binary is marked as being for Linux. 254 255 2009-04-01 Roland McGrath <roland (a] redhat.com> 256 257 * eblsymboltypename.c (ebl_symbol_type_name): Add STT_GNU_IFUNC. 258 259 * eblauxvinfo.c (AUXV_TYPES): Add RANDOM and BASE_PLATFORM. 260 261 2009-02-01 Ulrich Drepper <drepper (a] redhat.com> 262 263 * eblreloctypename.c (ebl_reloc_type_name): Return "<INVALID RELOC>" 264 instead of "???" for invalid relocations. 265 266 2008-08-01 Roland McGrath <roland (a] redhat.com> 267 268 * eblcorenotetypename.c: Handle NT_386_IOPERM. 269 270 2008-07-28 Roland McGrath <roland (a] redhat.com> 271 272 * eblauxvinfo.c (AUXV_TYPES): Add EXECFN. 273 274 * eblauxvinfo.c (ebl_auxv_info): Handle missing elements of standard 275 table. 276 277 2008-07-04 Roland McGrath <roland (a] redhat.com> 278 279 * libebl.h: Declare ebl_syscall_abi. 280 * ebl_syscall_abi.c: New file. 281 * Makefile.am (gen_SOURCES): Add it. 282 * ebl-hooks.h: New hook syscall_abi. 283 * eblopenbackend.c (default_syscall_abi): New function. 284 (fill_defaults): Use it. 285 286 2008-03-31 Roland McGrath <roland (a] redhat.com> 287 288 * ebldynamictagname.c (ebl_dynamic_tag_name): Use hex for unknown tag. 289 290 * ebl-hooks.h: Add check_special_section hook. 291 * eblopenbackend.c (fill_defaults): Set new hook to ... 292 (default_check_special_section): ... this, new function. 293 * ebl_check_special_section.c: New file. 294 * Makefile.am (gen_SOURCES): Add it. 295 * libebl.h: Declare it. 296 297 2008-02-20 Roland McGrath <roland (a] redhat.com> 298 299 * libebl.h: Declare ebl_check_object_attribute. 300 * eblcheckobjattr.c: New file. 301 * Makefile.am (gen_SOURCES): Add it. 302 * ebl-hooks.h: Add check_object_attribute hook. 303 * eblopenbackend.c (default_check_object_attribute): New function. 304 (fill_defaults): Initialize pointer to it. 305 306 2008-02-19 Roland McGrath <roland (a] redhat.com> 307 308 * eblsectiontypename.c (ebl_section_type_name): 309 Handle SHT_GNU_ATTRIBUTES. 310 311 2008-02-08 Roland McGrath <roland (a] redhat.com> 312 313 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_SPE. 314 315 2008-01-30 Roland McGrath <roland (a] redhat.com> 316 317 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_386_TLS. 318 319 2007-10-18 Roland McGrath <roland (a] redhat.com> 320 321 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PPC_VMX. 322 323 2007-10-11 Roland McGrath <roland (a] redhat.com> 324 325 * eblobjnote.c (ebl_object_note): Translate target format (byte-swap) 326 for NT_GNU_ABI_TAG contents. 327 328 2007-08-22 Roland McGrath <roland (a] redhat.com> 329 330 * libebl.h (Ebl_Core_Item): New member `group'. 331 332 2007-08-19 Roland McGrath <roland (a] redhat.com> 333 334 * ebl-hooks.h: Add new hook auxv_info. 335 * eblopenbackend.c (default_auxv_info): New function. 336 (fill_defaults): Initialize auxv_info hook. 337 * eblauxvinfo.c : New file. 338 * Makefile.am (gen_SOURCES): Add it. 339 * libebl.h: Declare ebl_auxv_info. 340 341 * eblcorenote.c: Rewritten with new signature. 342 * Makefile.am (gen_SOURCES): Add it. 343 * libebl.h (Ebl_Register_Location, Ebl_Core_Item): New types. 344 (ebl_core_note_info): Completely revamp signature. 345 * ebl-hooks.h: Update decl. 346 * eblopenbackend.c (default_core_note): Update signature. 347 348 2007-07-09 Roland McGrath <roland (a] redhat.com> 349 350 * eblobjnotetypename.c (ebl_object_note_type_name): Handle 351 NT_GNU_HWCAP, NT_GNU_BUILD_ID. 352 353 * eblobjnote.c (ebl_object_note): Handle NT_GNU_BUILD_ID. 354 355 2007-04-22 Roland McGrath <roland (a] redhat.com> 356 357 * eblcorenotetypename.c (ebl_core_note_type_name): Handle NT_PRXFPREG. 358 359 2007-03-10 Roland McGrath <roland (a] redhat.com> 360 361 * eblcorenote.c (ebl_core_note): For normally-zero types, 362 print in hex if not zero. 363 364 2007-01-11 Roland McGrath <roland (a] redhat.com> 365 366 * ebl-hooks.h (machine_section_flag_check): New hook. 367 * libebl.h: Declare ebl_machine_section_flag_check. 368 * eblmachinesectionflagcheck.c: New file. 369 * Makefile.am (gen_SOURCES): Add it. 370 * eblopenbackend.c (default_machine_section_flag_check): New function. 371 (fill_defaults): Use it. 372 373 2006-09-04 Roland McGrath <roland (a] redhat.com> 374 375 * ebl-hooks.h: Replace register_name hook with register_info. 376 Also yield natural bit width and base type encoding. 377 * eblopenbackend.c (default_register_name): Renamed 378 default_register_info, new args added. 379 (fill_defaults): Update initialization. 380 * eblregname.c: File renamed ... 381 * eblreginfo.c: ... to this. 382 (ebl_register_name): Renamed to ebl_register_info, new args added. 383 * libebl.h: Update decl. 384 385 * Makefile.am (gen_SOURCES): Update list. 386 387 2006-07-06 Ulrich Drepper <drepper (a] redhat.com> 388 389 * ebldynamictagname.c: Add support for DT_GNU_HASH. 390 * ebldynamictagcheck.c: Likewise. 391 * eblsectiontypename.c: Add support for SHT_GNU_HASH. 392 393 2006-07-05 Ulrich Drepper <drepper (a] redhat.com> 394 395 * Makefile.am (gen_SOURCES): Add eblsysvhashentrysize.c. 396 * libeblP.h (struct ebl): Add sysvhash_entrysize element. 397 * eblopenbackend.c (fill_defaults): Initialize sysvhash_entrysize. 398 399 * eblopenbackend.c (openbackend): If possible, fill machine, class, 400 and data values in from the ELF file. 401 402 2006-07-04 Ulrich Drepper <drepper (a] redhat.com> 403 404 * Makefile.am (gen_SOURCES): Add eblrelativerelocp.c. 405 * eblrelativerelocp.c: New file. 406 * ebl-hooks.c: Add relative_reloc_p. 407 * eblopenbackend.c (default_relative_reloc_p): New function. 408 (fill_defaults): Hook it up. 409 * libebl.h: Declare ebl_relative_reloc_p. 410 411 2006-06-12 Ulrich Drepper <drepper (a] redhat.com> 412 413 * Makefile.am (gen_SOURCES): Add eblnonerelocp.c. 414 * eblnonerelocp.c: New file. 415 * ebl-hooks.c: Add none_reloc_p. 416 * eblopenbackend.c (default_none_reloc_p): New function. 417 (fill_defaults): Hook it up. 418 * libebl.h: Declare ebl_none_reloc_p. 419 420 2006-05-27 Ulrich Drepper <drepper (a] redhat.com> 421 422 * libebl.h: Add extern "C". 423 424 2005-11-25 Roland McGrath <roland (a] redhat.com> 425 426 * eblregname.c: New file. 427 * Makefile.am (gen_SOURCES): Add it. 428 * ebl-hooks.h: Declare register_name hook. 429 * libebl.h: Declare ebl_register_name. 430 * eblopenbackend.c (default_register_name): New function. 431 (fill_defaults): Use it. 432 433 2005-11-16 Roland McGrath <roland (a] redhat.com> 434 435 * libebl.h: Use "" for elf-knowledge.h, not <>. 436 437 2005-11-15 Roland McGrath <roland (a] redhat.com> 438 439 * Makefile.am: Removed everything for building libebl_*.so modules, 440 now in ../backends/Makefile.am instead. 441 * alpha_init.c: Moved to ../backends. 442 * alpha_reloc.def: Likewise. 443 * alpha_retval.c: Likewise. 444 * alpha_symbol.c: Likewise. 445 * arm_init.c: Likewise. 446 * arm_reloc.def: Likewise. 447 * arm_symbol.c: Likewise. 448 * common-reloc.c: Likewise. 449 * i386_corenote.c: Likewise. 450 * i386_init.c: Likewise. 451 * i386_reloc.def: Likewise. 452 * i386_retval.c: Likewise. 453 * i386_symbol.c: Likewise. 454 * ia64_init.c: Likewise. 455 * ia64_reloc.def: Likewise. 456 * ia64_symbol.c: Likewise. 457 * libebl_CPU.h: Likewise. 458 * ppc64_init.c: Likewise. 459 * ppc64_reloc.def: Likewise. 460 * ppc64_retval.c: Likewise. 461 * ppc64_symbol.c: Likewise. 462 * ppc_init.c: Likewise. 463 * ppc_reloc.def: Likewise. 464 * ppc_retval.c: Likewise. 465 * ppc_symbol.c: Likewise. 466 * s390_init.c: Likewise. 467 * s390_reloc.def: Likewise. 468 * s390_symbol.c: Likewise. 469 * sh_init.c: Likewise. 470 * sh_reloc.def: Likewise. 471 * sh_symbol.c: Likewise. 472 * sparc_init.c: Likewise. 473 * sparc_reloc.def: Likewise. 474 * sparc_symbol.c: Likewise. 475 * x86_64_corenote.c: Likewise. 476 * x86_64_init.c: Likewise. 477 * x86_64_reloc.def: Likewise. 478 * x86_64_retval.c: Likewise. 479 * x86_64_symbol.c: Likewise. 480 481 * libebl.h: Comment fixes. 482 483 * alpha_retval.c: New file. 484 * Makefile.am (alpha_SRCS): Add it. 485 * alpha_init.c (alpha_init): Initialize return_value_location hook. 486 487 * ppc64_retval.c: New file. 488 * Makefile.am (ppc64_SRCS): Add it. 489 * ppc64_init.c (ppc64_init): Initialize return_value_location hook. 490 491 * ppc_retval.c: New file. 492 * Makefile.am (ppc_SRCS): Add it. 493 * ppc_init.c (ppc_init): Initialize return_value_location hook. 494 495 2005-11-14 Roland McGrath <roland (a] redhat.com> 496 497 * ia64_init.c (ia64_init): Initialize EH->reloc_simple_type. 498 * sh_init.c (sh_init): Likewise. 499 * x86_64_init.c (x86_64_init): Likewise. 500 501 * sparc_symbol.c (sparc_reloc_simple_type): New function. 502 * sparc_init.c (sparc_init): Use it. 503 504 * arm_symbol.c (arm_reloc_simple_type): New function. 505 * arm_init.c (arm_init): Use it. 506 507 * alpha_symbol.c (alpha_reloc_simple_type): New function. 508 * alpha_init.c (alpha_init): Use it. 509 510 * ia64_reloc.def: Update bits per H. J. Lu <hjl (a] lucon.org>. 511 512 * arm_reloc.def: Update bits per Daniel Jacobowitz <drow (a] false.org>. 513 514 * alpha_reloc.def: Update bits per Richard Henderson <rth (a] redhat.com>. 515 516 2005-11-13 Roland McGrath <roland (a] redhat.com> 517 518 * x86_64_retval.c: New file. 519 * Makefile.am (x86_64_SRCS): Add it. 520 * x86_64_init.c (x86_64_init): Use x86_64_return_value_location. 521 522 * i386_retval.c: New file. 523 * Makefile.am (i386_SRCS): Add it. 524 (libdw): New variable. 525 (libebl_%.so): Use $(libdw) in link; use --as-needed. 526 * i386_init.c (i386_init): Use i386_return_value_location. 527 528 * eblretval.c: New file. 529 * Makefile.am (gen_SOURCES): Add it. 530 (INCLUDES): Search in libdw. 531 * libebl.h: Include <libdw.h>. Declare ebl_return_value_location. 532 * ebl-hooks.h: Declare return_value_location hook. 533 * eblopenbackend.c (default_return_value_location): New function. 534 (fill_defaults): Use it. 535 536 2005-11-10 Roland McGrath <roland (a] redhat.com> 537 538 * s390_init.c: New file. 539 * s390_reloc.def: New file. 540 * s390_symbol.c: New file. 541 * Makefile.am (modules, libebl_pic): Add s390. 542 (s390_SRCS, libebl_s390_pic_a_SOURCES): New variables. 543 (am_libebl_s390_pic_a_OBJECTS): New variable. 544 545 * ppc64_init.c: Use common-reloc.c. 546 * ppc64_symbol.c (ppc64_backend_name): Removed. 547 (ppc64_reloc_type_check, ppc64_reloc_type_name): Likewise. 548 (ppc64_copy_reloc_p, ppc64_reloc_valid_use): Likewise. 549 550 * ppc_init.c: Use common-reloc.c. 551 * ppc_symbol.c (ppc_backend_name): Removed. 552 (ppc_reloc_type_name, ppc_reloc_type_check): Likewise. 553 (ppc_reloc_valid_use, ppc_copy_reloc_p): Likewise. 554 555 * sparc_init.c: Use common-reloc.c. 556 * sparc_symbol.c (sparc_backend_name): Removed. 557 (sparc_reloc_type_name, sparc_reloc_type_check): Likewise. 558 (sparc_copy_reloc_p): Likewise. 559 560 * arm_init.c: Use common-reloc.c. 561 * arm_symbol.c (arm_backend_name): Removed. 562 (arm_reloc_type_name, arm_reloc_type_check, arm_copy_reloc_p): Removed. 563 564 * alpha_init.c: Use common-reloc.c. 565 * alpha_symbol.c (alpha_backend_name): Removed. 566 (alpha_reloc_type_name, alpha_reloc_type_check): Likewise. 567 (alpha_copy_reloc_p): Likewise. 568 569 * ia64_symbol.c (ia64_backend_name): Removed. 570 (ia64_reloc_type_name, ia64_reloc_type_check): Likewise. 571 (ia64_copy_reloc_p): Likewise. 572 573 * x86_64_init.c: Use common-reloc.c. 574 * x86_64_symbol.c (x86_64_backend_name): Removed. 575 (x86_64_copy_reloc_p, x86_64_reloc_valid_use): Likewise. 576 (x86_64_reloc_type_check, x86_64_reloc_type_name): Likewise. 577 578 * sh_init.c: Use common-reloc.c. 579 * sh_symbol.c: All functions removed. 580 (sh_reloc_simple_type): New function. 581 (sh_gotpc_reloc_check): New function. 582 583 * common-reloc.c: New file. 584 * Makefile.am (noinst_HEADERS): Add it. 585 * i386_init.c: Include it. 586 587 * sh_reloc.def: New file. 588 * i386_reloc.def: New file. 589 * alpha_reloc.def: New file. 590 * arm_reloc.def: New file. 591 * i386_reloc.def: New file. 592 * ia64_reloc.def: New file. 593 * ppc64_reloc.def: New file. 594 * ppc_reloc.def: New file. 595 * sh_reloc.def: New file. 596 * sparc_reloc.def: New file. 597 * x86_64_reloc.def: New file. 598 * Makefile.am (EXTRA_DIST): Add $(modules:=_reloc.def). 599 600 * libebl_alpha.map: Removed. 601 * libebl_ia64.map: Removed. 602 * libebl_ppc.map: Removed. 603 * libebl_sparc.map: Removed. 604 * libebl_arm.map: Removed. 605 * libebl_i386.map: Removed. 606 * libebl_ppc64.map: Removed. 607 * libebl_sh.map: Removed. 608 * libebl_x86_64.map: Removed. 609 * Makefile.am (EXTRA_DIST): Remove them. 610 (libebl_%.map, libebl_%.so): New pattern rules. 611 612 * libebl_alpha.h: Removed. 613 * libebl_ia64.h: Removed. 614 * libebl_ppc.h: Removed. 615 * libebl_sparc.h: Removed. 616 * libebl_arm.h: Removed. 617 * libebl_i386.h: Removed. 618 * libebl_ppc64.h: Removed. 619 * libebl_sh.h: Removed. 620 * libebl_x86_64.h: Removed. 621 * Makefile.am (noinst_HEADERS): Remove them. 622 623 * x86_64_corenote.c: Use libebl_CPU.h instead. 624 * x86_64_symbol.c: Likewise. 625 * i386_corenote.c: Likewise. 626 627 2005-11-09 Roland McGrath <roland (a] redhat.com> 628 629 * ia64_symbol.c (ia64_reloc_simple_type): New function. 630 631 * ebl-hooks.h (reloc_simple_type): Take the Ebl handle, not Elf handle. 632 * eblrelocsimpletype.c (ebl_reloc_simple_type): Update caller. 633 * eblopenbackend.c (default_reloc_simple_type): Update signature. 634 * i386_symbol.c (i386_reloc_simple_type): Likewise. 635 * ppc64_symbol.c (ppc64_reloc_simple_type): Likewise. 636 * ppc_symbol.c (ppc_reloc_simple_type): Likewise. 637 * x86_64_symbol.c (x86_64_reloc_simple_type): Likewise. 638 639 * i386_symbol.c (i386_backend_name): Removed. 640 (i386_reloc_type_name, i386_reloc_type_check): Likewise. 641 (i386_reloc_valid_use): Removed. 642 (i386_copy_reloc_p): Removed. 643 644 * alpha_destr.c: Removed. 645 * arm_destr.c: Removed. 646 * i386_destr.c: Removed. 647 * ia64_destr.c: Removed. 648 * ppc64_destr.c: Removed. 649 * ppc_destr.c: Removed. 650 * sh_destr.c: Removed. 651 * sparc_destr.c: Removed. 652 * x86_64_destr.c: Removed. 653 654 * ebl-hooks.h: New file, broken out of ... 655 * libeblP.h (struct ebl): ... here. #include that for hook 656 declarations, after defining EBLHOOK macro. 657 * libebl_CPU.h: New file. 658 * Makefile.am (noinst_HEADERS): Add them. 659 660 * libeblP.h (struct ebl): Use uint_fast16_t for machine, 661 and uint_fast8_t for class and data. 662 663 2005-08-14 Roland McGrath <roland (a] redhat.com> 664 665 * ia64_symbol.c (ia64_section_type_name): New function. 666 (ia64_dynamic_tag_check): New function. 667 (ia64_reloc_valid_use): New function. 668 * libebl_ia64.h: Declare them. 669 * ia64_init.c (ia64_init): Use them. 670 * Makefile.am (libebl_ia64.so): Link with libelf. 671 672 2005-08-28 Ulrich Drepper <drepper (a] redhat.com> 673 674 * Makefile.am: Use $(LINK) not $(CC) when creating DSOs. 675 676 2005-08-13 Roland McGrath <roland (a] redhat.com> 677 678 * ia64_symbol.c (ia64_machine_flag_check): New function. 679 * libebl_ia64.h: Declare it. 680 * ia64_init.c (ia64_init): Use it. 681 682 2005-08-13 Ulrich Drepper <drepper (a] redhat.com> 683 684 * libebl.h: Add ehdr parameter to ebl_bss_plt_p and 685 ebl_check_special_symbol. 686 * libeblP.h (struct ebl): Adjust callback functions. 687 * eblopenbackend.c: Adjust dummy functions. 688 * ebl_check_special_symbol.c: Add parameter and pass it on. 689 * eblbsspltp.c: Likewise. 690 * ppc_symbol.c (find_dyn_got): With ehdr passed, simplify search for 691 the dynamic section entry. 692 (ppc_check_special_symbol): Add ehdr parameter. 693 (ppc_bss_plt_p): Likewise. 694 * libebl_ppc.h: Adjust prototypes. 695 * ppc64_symbol.c (ppc_check_special_symbol): Add ehdr parameter. 696 (ppc_bss_plt_p): Likewise. 697 * libebl_ppc64.h: Adjust prototypes. 698 699 2005-08-12 Roland McGrath <roland (a] redhat.com> 700 701 * ppc_symbol.c (find_dyn_got): New function, broken out of ... 702 (ppc_bss_plt_p): ... here. Call that. 703 (ppc_check_special_symbol): Use find_dyn_got to fetch value to check 704 against _GLOBAL_OFFSET_TABLE_. 705 706 * libeblP.h (struct ebl): Add bss_plt_p hook. 707 * eblopenbackend.c (default_bss_plt_p): New function. 708 (fill_defaults): Use it. 709 * eblbsspltp.c: New file. 710 * Makefile.am (gen_SOURCES): Add it. 711 * libebl.h: Declare ebl_bss_plt_p. 712 * ppc_symbol.c (ppc_bss_plt_p): New function. 713 * libebl_ppc.h: Declare it. 714 * ppc_init.c (ppc_init): Use it. 715 * ppc64_symbol.c (ppc64_bss_plt_p): New function. 716 * libebl_ppc64.h: Declare it. 717 * ppc64_init.c (ppc64_init): Use it. 718 719 * ebl_check_special_symbol.c: New file. 720 * Makefile.am (gen_SOURCES): Add it. 721 * libebl.h: Declare ebl_check_special_symbol. 722 * libeblP.h (struct ebl): Add check_special_symbol hook. 723 * eblopenbackend.c (default_check_special_symbol): New function. 724 (fill_defaults): Use it. 725 * ppc_symbol.c (ppc_check_special_symbol): New function. 726 * libebl_ppc.h: Add prototype. 727 * ppc_init.c (ppc_init): Use it. 728 * ppc64_symbol.c (ppc64_check_special_symbol): New function. 729 * libebl_ppc64.h: Add prototype. 730 * ppc64_init.c (ppc64_init): Use it. 731 732 2005-08-07 Ulrich Drepper <drepper (a] redhat.com> 733 734 * ppc_init.c: Add support for new DT_PPC_* and R_PPC_* values. 735 * ppc_symbol.c: Likewise. 736 * libebl_ppc.h: Likewise. 737 * ppc64_init.c: There is now also a dynamic_tag_check functions 738 * ppc64_symbol.c: Add dynamic_tag_check. 739 * libebl_ppc64.h: Add prototype. 740 * alpha_init.c: Add support for new DT_ALPHA_* value. 741 * alpha_symbol.c: Likewise. 742 * libebl_alpha.h: Likewise. 743 744 2005-08-03 Ulrich Drepper <drepper (a] redhat.com> 745 746 * libebl_alpha.map: Remove unnecessary exports. 747 * libebl_arm.map: Likewise. 748 * libebl_i386.map: Likewise. 749 * libebl_ia64.map: Likewise. 750 * libebl_ppc.map: Likewise. 751 * libebl_ppc64.map: Likewise. 752 * libebl_sh.map: Likewise. 753 * libebl_sparc.map: Likewise. 754 * libebl_x86_64.map: Likewise. 755 756 2005-08-02 Ulrich Drepper <drepper (a] redhat.com> 757 758 * Makefile.am (libebl_a_SOURCES): Add eblelfclass.c, eblelfdata.c, 759 and eblelfmachine.c. 760 * elbopenbackend.c (machines): Add class and data fields. Initialize 761 them. 762 (ebl_openbackend): Initialize machine, class, data fields in result. 763 * libebl.h: Declare Add eblelfclass, eblelfdata, and eblelfmachine. 764 * libeblP.h (Ebl): Add machine, class, data fields. 765 766 2005-07-23 Ulrich Drepper <drepper (a] redhat.com> 767 768 * eblsectionstripp.c: New file. 769 * Makefile.am (gen_SOURCES): Add eblsectionstripp.c. 770 * i386_init.c (i386_init): Install specific debugscn_p callback. 771 * i386_symbol.c (i386_debugscn_p): New function. 772 * libebl.h: Declare ebl_section_strip_p. 773 * libebl_i386.h: Declare i386_debugscn_p. 774 775 * libebl.h: Move Ebl definition to... 776 * libeblP.h: ...here. 777 778 2005-07-21 Roland McGrath <roland (a] redhat.com> 779 780 * Makefile.am (install-ebl-modules): New target, commands from ... 781 (install): ... here. Make this depend on it. 782 (LIBEBL_SUBDIR): New variable, substituted by configure. 783 (install-ebl-modules): Install in $(libdir)/$(LIBEBL_SUBDIR). 784 * eblopenbackend.c (openbackend): Use LIBEBL_SUBDIR in module name. 785 786 2005-07-21 Ulrich Drepper <drepper (a] redhat.com> 787 788 * eblcopyrelocp.c: New file. 789 * Makefile.am (gen_SOURCES): Add eblcopyrelocp.c. 790 * libebl.h: Declare ebl_copy_reloc_p. 791 * eblopenbackend.c (fill_defaults): Fill in copy_reloc_p. 792 (default_copy_reloc_p): New function. 793 * alpha_init.c: Define and use arch-specific copy_reloc_p function. 794 * alpha_symbol.c: Likewise. 795 * arm_init.c: Likewise. 796 * arm_symbol.c: Likewise. 797 * i386_init.c: Likewise. 798 * i386_symbol.c: Likewise. 799 * ia64_init.c: Likewise. 800 * ia64_symbol.c: Likewise. 801 * ppc64_init.c: Likewise. 802 * ppc64_symbol.c: Likewise. 803 * ppc_init.c: Likewise. 804 * ppc_symbol.c: Likewise. 805 * sh_init.c: Likewise. 806 * sh_symbol.c: Likewise. 807 * sparc_init.c: Likewise. 808 * sparc_symbol.c: Likewise. 809 * x86_64_init.c: Likewise. 810 * x86_64_symbol.c: Likewise. 811 * libebl_alpha.h: Declare the copy_reloc_p function. 812 * libebl_arm.h: Likewise. 813 * libebl_i386.h: Likewise. 814 * libebl_ia64.h: Likewise. 815 * libebl_ppc.h: Likewise. 816 * libebl_ppc64.h: Likewise. 817 * libebl_sh.h: Likewise. 818 * libebl_sparc.h: Likewise. 819 * libebl_x86_64.h: Likewise. 820 821 2005-05-31 Roland McGrath <roland (a] redhat.com> 822 823 * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency 824 tracking works right. 825 826 2005-05-21 Ulrich Drepper <drepper (a] redhat.com> 827 828 * libebl_x86_64.map: Add x86_64_core_note. 829 830 2005-05-19 Roland McGrath <roland (a] redhat.com> 831 832 * libebl_i386.map: Add i386_reloc_valid_use, i386_reloc_simple_type. 833 * libebl_ppc.map: Add ppc_reloc_simple_type. 834 * libebl_ppc64.map: Add ppc64_reloc_simple_type. 835 * libebl_x86_64.map: Add x86_64_reloc_simple_type. 836 837 2005-05-11 Ulrich Drepper <drepper (a] redhat.com> 838 839 * eblcorenote.c: Handle new AT_* values and files with different 840 endianess. 841 * Makefile.am (x86_64_SRCS): Add x86_64_corenote.c. 842 * x86-64_corenote.c: New file. 843 * x86_64_init.c: Hook in x86_64_corenote. 844 * i386_corenote.c: Make file usable on 64-bit platforms. 845 846 * eblopenbackend.c: If modules version comparison fails, reinitialize 847 hooks. 848 849 2005-05-10 Ulrich Drepper <drepper (a] redhat.com> 850 851 * eblopenbackend.c: Require the init function to return a string. 852 Compare it with MODVERSION from config.h. 853 * alpha_init.c: Change return type. Return MODVERSION or NULL. 854 * arm_init.c: Likewise. 855 * eblopenbackend.c: Likewise. 856 * i386_init.c: Likewise. 857 * ia64_init.c: Likewise. 858 * ppc64_init.c: Likewise. 859 * ppc_init.c: Likewise. 860 * sh_init.c: Likewise. 861 * sparc_init.c: Likewise. 862 * x86_64_init.c: Likewise. 863 * libeblP.h: Adjust ebl_bhinit_t. 864 * libebl_alpha.h: Adjust init function prototype. 865 * libebl_arm.h: Likewise. 866 * libebl_i386.h: Likewise. 867 * libebl_ia64.h: Likewise. 868 * libebl_ppc.h: Likewise. 869 * libebl_ppc64.h: Likewise. 870 * libebl_sh.h: Likewise. 871 * libebl_sparc.h: Likewise. 872 * libebl_x86_64.h: Likewise. 873 874 * mips_destr.c: Removed. 875 * mips_init.c: Removed. 876 * mips_symbol.c: Removed. 877 * libebl_mips.h: Removed. 878 * libebl_mips.map: Removed. 879 880 2005-05-03 Roland McGrath <roland (a] redhat.com> 881 882 * libebl.h (Ebl): Add `reloc_simple_type' member. 883 * eblopenbackend.c (default_reloc_simple_type): New function. 884 (openbackend): Use that as default reloc_simple_type callback. 885 * eblrelocsimpletype.c: New file. 886 * Makefile.am (gen_SOURCES): Add it. 887 * i386_symbol.c (i386_reloc_simple_type): New function. 888 * libebl_i386.h: Declare it. 889 * i386_init.c (i386_init): Use it. 890 * x86_64_symbol.c (x86_64_reloc_simple_type): New function. 891 * libebl_x86_64.h: Declare it. 892 * x86_64_init.c (x86_64_init): Use it. 893 * ppc_symbol.c (ppc_reloc_simple_type): New function. 894 * libebl_ppc.h: Declare it. 895 * ppc_init.c (ppc_init): Use it. 896 * ppc64_symbol.c (ppc64_reloc_simple_type): New function. 897 * libebl_ppc64.h: Declare it. 898 * ppc64_init.c (ppc64_init): Use it. 899 900 2005-03-17 Ulrich Drepper <drepper (a] redhat.com> 901 902 * eblcorenote.c (ebl_core_note): Add support for AT_SECURE. 903 904 2005-02-15 Ulrich Drepper <drepper (a] redhat.com> 905 906 * Makefile.am (AM_CFLAGS): Add -Wformat=2. 907 908 2005-02-14 Ulrich Drepper <drepper (a] redhat.com> 909 910 * alpha_destr.c: Add __attribute__((unused)) where needed. 911 * alpha_init.c: Likewise. 912 * alpha_symbol.c: Likewise. 913 * arm_destr.c: Likewise. 914 * arm_init.c: Likewise. 915 * arm_symbol.c: Likewise. 916 * i386_corenote.c: Likewise. 917 * i386_destr.c: Likewise. 918 * i386_init.c: Likewise. 919 * i386_symbol.c: Likewise. 920 * ia64_destr.c: Likewise. 921 * ia64_init.c: Likewise. 922 * ia64_symbol.c: Likewise. 923 * mips_destr.c: Likewise. 924 * mips_init.c: Likewise. 925 * mips_symbol.c: Likewise. 926 * ppc64_destr.c: Likewise. 927 * ppc64_init.c: Likewise. 928 * ppc64_symbol.c: Likewise. 929 * ppc_destr.c: Likewise. 930 * ppc_init.c: Likewise. 931 * ppc_symbol.c: Likewise. 932 * sh_destr.c: Likewise. 933 * sh_init.c: Likewise. 934 * sh_symbol.c: Likewise. 935 * sparc_destr.c: Likewise. 936 * sparc_init.c: Likewise. 937 * sparc_symbol.c: Likewise. 938 * x86_64_destr.c: Likewise. 939 * x86_64_init.c: Likewise. 940 * x86_64_symbol.c: Likewise. 941 942 * x86_64_symbol.c (reloc_map_table): Fix entries for R_X86_64_64 943 and R_X86_64_32.. 944 945 2005-02-06 Ulrich Drepper <drepper (a] redhat.com> 946 947 * eblstrtab.c: A few cleanups. 948 949 * eblopenbackend.c: Mark unused parameters. 950 951 * eblgstrtab.c: Cleanups a few printf format strings. 952 953 * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra. 954 955 2005-02-05 Ulrich Drepper <drepper (a] redhat.com> 956 957 * Makefile.am: Check for text relocations in constructed DSOs. 958 959 * eblstrtab.c: Minor cleanups. 960 961 * Makefile.am (AM_CFLAGS): Add -std=gnu99 and -fmudflap for MUDFLAP. 962 963 2004-08-16 Ulrich Drepper <drepper (a] redhat.com> 964 965 * Makefile.am (AM_CFLAGS): Add LIBSTR definition with base name of 966 the lib directory. 967 * eblopenbackend.c (openbackend): Use LIBSTR instead of hardcoded 968 lib in path to ebl modules. 969 970 2004-04-01 Ulrich Drepper <drepper (a] redhat.com> 971 972 * Makefile.am: Add rules for ppc and ppc64 ebl module. 973 * ppc_init..c: New file. 974 * ppc_destr.c: New file. 975 * ppc_symbol.c: New file. 976 * libebl_ppc.h: New file. 977 * libebl_ppc.map: New file. 978 * ppc64_init..c: New file. 979 * ppc64_destr.c: New file. 980 * ppc64_symbol.c: New file. 981 * libebl_ppc64.h: New file. 982 * libebl_ppc64.map: New file. 983 984 2004-01-20 Ulrich Drepper <drepper (a] redhat.com> 985 986 * Makefile.am: Support building with mudflap. 987 988 2004-01-18 Ulrich Drepper <drepper (a] redhat.com> 989 990 * libeblP.h (_): Use elfutils domain. 991 992 2004-01-16 Ulrich Drepper <drepper (a] redhat.com> 993 994 * eblsectionname.c: Add support for SHN_BEFORE and SHN_AFTER. 995 996 2004-01-13 Ulrich Drepper <drepper (a] redhat.com> 997 998 * eblsegmenttypename.c ((ebl_segment_type_name): Add support for 999 PT_GNU_RELRO. 1000 1001 2004-01-08 Ulrich Drepper <drepper (a] redhat.com> 1002 1003 * libebl.h: Remove last traces of libtool. 1004 1005 2004-01-05 Ulrich Drepper <drepper (a] redhat.com> 1006 1007 * elf-knowledge.h: Move to libelf subdir. 1008 1009 * Makefile.am (EXTRA_DIST): Remove libebl.map. 1010 * libebl.map: Removed. 1011 1012 2003-12-08 Ulrich Drepper <drepper (a] redhat.com> 1013 1014 * eblsectiontypename.c (ebl_section_type_name): Add support for 1015 SHT_SUNW_move, SHT_CHECKSUM, and SHT_GNU_LIBLIST. 1016 1017 2003-11-19 Ulrich Drepper <drepper (a] redhat.com> 1018 1019 * ia64_symbol.c (ia64_dynamic_tag_name): New function. 1020 * libebl_ia64.h (ia64_dynamic_tag_name): Declare. 1021 * ia64_init.c (ia64_init): Register i164_dynamic_tag_name. 1022 1023 2003-09-24 Ulrich Drepper <drepper (a] redhat.com> 1024 1025 * ia64_init.c (ia64_init): Initialize segment_type_name callback. 1026 * ia64_symbol.c (ia64_segment_type_name): Define. 1027 * libebl_ia64.h (ia64_segment_type_name): Declare. 1028 1029 2003-09-22 Ulrich Drepper <drepper (a] redhat.com> 1030 1031 * Makefile.am (AM_CFLAGS): Add -fpic. 1032 1033 2003-08-14 Ulrich Drepper <drepper (a] redhat.com> 1034 1035 * Makefile.am (install): Remove dependency on libebl.so. 1036 1037 2003-08-13 Ulrich Drepper <drepper (a] redhat.com> 1038 1039 * eblopenbackend.c: Adjust relative path to arch-specific DSOs 1040 assuming the code ends up in the application. Add second dlopen() 1041 try without any path, just the filename. 1042 * Makefile.in: Remove rules to build and install libebl.so. 1043 1044 2003-08-11 Ulrich Drepper <drepper (a] redhat.com> 1045 1046 * Moved to CVS archive. 1047