2021-02-22 11:29:34 +08:00
|
|
|
|
2021-02-22 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Remove BFD_RELOC_16.
|
|
|
|
|
* coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
|
|
|
|
|
|
2021-01-26 18:02:38 +08:00
|
|
|
|
2021-02-19 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
PR 27158
|
|
|
|
|
* elfnn-riscv.c (perform_relocation): Updated encoding macros.
|
|
|
|
|
(_bfd_riscv_relax_call): Likewise.
|
|
|
|
|
(_bfd_riscv_relax_lui): Likewise.
|
|
|
|
|
* elfxx-riscv.c (howto_table): Likewise.
|
|
|
|
|
|
2021-01-28 10:45:56 +08:00
|
|
|
|
2021-02-18 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.am: Added cpu-riscv.h.
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
* po/SRC-POTFILES.in: Regenerated.
|
|
|
|
|
* cpu-riscv.h: Added to support spec versions controlling.
|
|
|
|
|
Also added extern arrays and functions for cpu-riscv.c.
|
|
|
|
|
(enum riscv_spec_class): Define all spec classes here uniformly.
|
|
|
|
|
(struct riscv_spec): Added for all specs.
|
|
|
|
|
(RISCV_GET_SPEC_CLASS): Added to reduce repeated code.
|
|
|
|
|
(RISCV_GET_SPEC_NAME): Likewise.
|
|
|
|
|
(RISCV_GET_ISA_SPEC_CLASS): Added to get ISA spec class.
|
|
|
|
|
(RISCV_GET_PRIV_SPEC_CLASS): Added to get privileged spec class.
|
|
|
|
|
(RISCV_GET_PRIV_SPEC_NAME): Added to get privileged spec name.
|
|
|
|
|
* cpu-riscv.c (struct priv_spec_t): Replaced with struct riscv_spec.
|
|
|
|
|
(riscv_get_priv_spec_class): Replaced with RISCV_GET_PRIV_SPEC_CLASS.
|
|
|
|
|
(riscv_get_priv_spec_name): Replaced with RISCV_GET_PRIV_SPEC_NAME.
|
|
|
|
|
(riscv_priv_specs): Moved below.
|
|
|
|
|
(riscv_get_priv_spec_class_from_numbers): Likewise, updated.
|
|
|
|
|
(riscv_isa_specs): Moved from include/opcode/riscv.h.
|
|
|
|
|
* elfnn-riscv.c: Included cpu-riscv.h.
|
|
|
|
|
(riscv_merge_attributes): Initialize in_priv_spec and out_priv_spec.
|
|
|
|
|
* elfxx-riscv.c: Included cpu-riscv.h and opcode/riscv.h.
|
|
|
|
|
(RISCV_UNKNOWN_VERSION): Moved from include/opcode/riscv.h.
|
|
|
|
|
* elfxx-riscv.h: Removed extern functions to cpu-riscv.h.
|
|
|
|
|
|
read_leb128 overflow checking
There is a tiny error left in dwarf.c:read_leb128 after Nick fixed the
signed overflow problem in code I wrote. It's to do with sleb128
values that have unnecessary excess bytes. For example, -1 is
represented as 0x7f, the most efficient encoding, but also as
0xff,0x7f or 0xff,0xff,0x7f and so on. None of these sequences
overflow any size signed value, but read_leb128 will report an
overflow given enough excess bytes. This patch fixes that problem,
and since the proper test for signed values with excess bytes can
easily be adapted to also test a sleb byte with just some bits that
overflow the result, I changed the code to not use signed right
shifts. (The C standard ISO/IEC 9899:1999 6.5.7 says signed right
shifts of negative values have an implementation defined value. A
long time ago I even used a C compiler for a certain microprocessor
that always did unsigned right shifts. Mind you, it is very unlikely
to be compiling binutils with such a compiler.)
bfd/
* wasm-module.c: Guard include of limits.h.
(CHAR_BIT): Provide backup define.
(wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
Correct signed overflow checking.
opcodes/
* wasm32-dis.c: Include limits.h.
(CHAR_BIT): Provide backup define.
(wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
Correct signed overflow checking.
binutils/
* dwarf.c: Include limits.h.
(CHAR_BIT): Provide backup define.
(read_leb128): Use CHAR_BIT to size "result" in bits. Correct
signed overflow checking.
* testsuite/binutils-all/pr26548.s,
* testsuite/binutils-all/pr26548.d,
* testsuite/binutils-all/pr26548e.d: New tests.
* testsuite/binutils-all/readelf.exp: Run them.
(readelf_test): Drop unused "xfails" parameter. Update all uses.
2021-02-16 21:16:40 +08:00
|
|
|
|
2021-02-17 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* wasm-module.c: Guard include of limits.h.
|
|
|
|
|
(CHAR_BIT): Provide backup define.
|
|
|
|
|
(wasm_read_leb128): Use CHAR_BIT to size "result" in bits.
|
|
|
|
|
Correct signed overflow checking.
|
|
|
|
|
|
RISC-V: PR27200, allow the first input non-ABI binary to be linked with any one.
RISC-V only defines two float ABIs, soft-float and double-float, and the
value of soft-float is 0x0. But 0x0 usually means unknown/default setting
for many targets, and the non-ABI binary, which is generated by "ld/objcopy
-b binary", also has the 0x0 elf header flags, this may be confused.
We probably can define a new unknown/default ABI value to make them more
clear, but that will need more bits in the elf header flags, and also need
to discuss in the riscv psabi spec.
Training linker have a default ABI setting, and can be changed by ld
options or configure options is another solution, like what assemblr
usually do. So all objects, including the binary files, will have
explicit ABI setting. But the binary files will no longer be linked
with any object, users need to recompile them with the exactly ABI
they want. It may be inconvenience sometimes. Besides, I think linker
doesn't need to know the default arch/abi so far, just set them according
to the linked objects should be enough.
Therefore, without changing the riscv psabi, and keep the non-ABI binary
can be linked with any object, we don't check the ABI flags if no code
section in the PR24389. Just that we find the first input non-ABI binary
still cannot be linked with others in the PR27200. This patch fixs the
problem by delaying the elf_flags_init(obfd) check, since the flags of
non-ABI object with no code cannot be copyed to output BFD, we should
skip it, even if it is the first linked object.
However, there is a strange "break" at the end of loop in the PR24389.
The "break" cause the ld testcase "Link with zlib-gabi compressed debug
output 1" fails for rv64gc-linux toolchain, after applying the above
change. The root cause is that - the "break" make linker only checks
the "first" section of input BFD rather than the entire sections.
I have checked that AARCH64 and ARM both have the "break" at the end
of loop, but ARC doesn't. I suppose we should remove the "break" like
what ARC do, or use a pair of braces for the if statement.
I have passed the elf/linux toolchain regressions, so the change should
be fine.
bfd/
PR 27200
* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
copying the elf flags from input BFD to output BFD, until we have
checked if the input BFD has no code section or not. Also fix the
problem that we only check the first section rather than the entire
sections for input BFD.
2021-01-22 10:16:12 +08:00
|
|
|
|
2021-02-17 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
PR 27200
|
|
|
|
|
* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Delay
|
|
|
|
|
copying the elf flags from input BFD to output BFD, until we have
|
|
|
|
|
checked if the input BFD has no code section or not. Also fix the
|
|
|
|
|
problem that we only check the first section rather than the entire
|
|
|
|
|
sections for input BFD.
|
|
|
|
|
|
2021-02-16 16:57:24 +08:00
|
|
|
|
2021-02-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* libbfd.c (_bfd_read_unsigned_leb128): Avoid excessive shift.
|
|
|
|
|
(_bfd_safe_read_leb128, _bfd_read_signed_leb128): Likewise.
|
|
|
|
|
|
2021-02-15 19:10:41 +08:00
|
|
|
|
2021-02-15 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* doc/Makefile.am: Replace "cp -p" by "$(LN_S)".
|
|
|
|
|
* doc/Makefile.in: Re-generate.
|
|
|
|
|
|
2021-02-15 07:18:50 +08:00
|
|
|
|
2021-02-15 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-nds32.c (nds32_get_section_contents): Replace
|
|
|
|
|
bfd_malloc_and_get_section with bfd_get_full_section_contents.
|
|
|
|
|
(nds32_elf_relax_delete_blanks): Init contents.
|
|
|
|
|
(nds32_elf_relax_section, nds32_relax_fp_as_gp): Likewise.
|
|
|
|
|
|
2021-02-15 09:30:48 +08:00
|
|
|
|
2021-02-15 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* coff-alpha.c (alpha_ecoff_get_relocated_section_contents): Use
|
|
|
|
|
bfd_get_full_section_contents.
|
|
|
|
|
|
2021-02-14 17:27:05 +08:00
|
|
|
|
2021-02-14 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents): Apply
|
|
|
|
|
all fixes to bfd_generic_get_relocated_section_contents since this
|
|
|
|
|
function was split out.
|
|
|
|
|
|
2021-02-11 19:55:02 +08:00
|
|
|
|
2021-02-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config.bfd: Remove ia64 from obsolete list.
|
|
|
|
|
|
2021-02-11 19:53:45 +08:00
|
|
|
|
2021-02-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR ld/22269
|
|
|
|
|
* elfnn-ia64.c: Revert 2017-10-14 git commit db41f6eb5234.
|
|
|
|
|
|
2021-02-11 14:26:22 +08:00
|
|
|
|
2021-02-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27294
|
|
|
|
|
* elf32-avr.c (avr_elf32_load_records_from_section): Use
|
|
|
|
|
bfd_malloc_and_get_section. Use bfd_byte* vars and remove then
|
|
|
|
|
unnecessary casts.
|
|
|
|
|
|
2021-02-11 07:23:17 +08:00
|
|
|
|
2021-02-11 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27291
|
|
|
|
|
* section.c (bfd_get_section_contents): Avoid possible overflow
|
|
|
|
|
when range checking offset and count.
|
|
|
|
|
(bfd_set_section_contents): Likewise.
|
|
|
|
|
|
2021-02-04 02:42:06 +08:00
|
|
|
|
2021-02-03 Nick Alcock <nick.alcock@oracle.com>
|
|
|
|
|
|
|
|
|
|
* configure.ac (SHARED_LIBADD): Remove explicit -lintl population in
|
|
|
|
|
favour of LIBINTL.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2021-02-08 18:36:17 +08:00
|
|
|
|
2021-02-09 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config.bfd (arm*-*-symbianelf*): Move from obsolete to removed.
|
|
|
|
|
* configure.ac: Delete symbian entries.
|
|
|
|
|
* elf-bfd.h (enum elf_target_os): Delete is_symbian.
|
|
|
|
|
* elf32-arm.c: Remove symbian support. Formatting.
|
|
|
|
|
* targets.c: Delete symbian entries.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2021-02-04 22:02:13 +08:00
|
|
|
|
2021-02-04 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/19609
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Provide more
|
|
|
|
|
info when failed to convert GOTPCREL relocation.
|
|
|
|
|
|
2021-02-04 16:15:03 +08:00
|
|
|
|
2021-02-04 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfxx-riscv.c (riscv_parse_prefixed_ext): Removed zb*.
|
|
|
|
|
|
2021-02-04 11:26:34 +08:00
|
|
|
|
2021-02-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27311
|
|
|
|
|
* elflink.c (elf_link_add_object_symbols): Don't pull in as-needed
|
|
|
|
|
libraries for IR references on pass over libraries after LTO
|
|
|
|
|
recompilation.
|
|
|
|
|
|
2021-02-03 13:27:35 +08:00
|
|
|
|
2021-02-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27311
|
|
|
|
|
* elflink.c (_bfd_elf_add_default_symbol): Revert last two changes.
|
|
|
|
|
(elf_link_add_object_symbols): Here too. Don't pull in as-needed
|
|
|
|
|
libraries when H is an indirect symbol after calling
|
|
|
|
|
_bfd_elf_add_default_symbol.
|
|
|
|
|
|
2021-02-03 08:27:12 +08:00
|
|
|
|
2021-02-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27311
|
|
|
|
|
* elflink.c (_bfd_elf_add_default_symbol): Clear override when
|
|
|
|
|
undecorated symbol will have a different version.
|
|
|
|
|
|
2021-02-02 12:35:14 +08:00
|
|
|
|
2021-02-02 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27311
|
|
|
|
|
* elflink.c (_bfd_elf_add_default_symbol): Add override parameter.
|
|
|
|
|
Use when handling default versioned symbol. Rename existing
|
|
|
|
|
override variable to nondef_override and use for non-default
|
|
|
|
|
versioned symbol.
|
|
|
|
|
(elf_link_add_object_symbols): Adjust call to suit. Don't
|
|
|
|
|
pull in as-needed libraries when override is set.
|
|
|
|
|
|
2021-02-02 01:31:47 +08:00
|
|
|
|
2021-02-01 Emery Hemingway <ehmry@posteo.net>
|
|
|
|
|
|
|
|
|
|
* config.bfd: Add *-*-genode* as a target for AArch64 and x86.
|
|
|
|
|
|
2021-02-02 00:44:32 +08:00
|
|
|
|
2021-02-01 Egor Vishnyakov <lenvampir@yandex.ru>
|
|
|
|
|
|
|
|
|
|
PR 27254
|
|
|
|
|
* elf32-rl78.c (rl78_elf_relocate_section): Fix calculation of
|
|
|
|
|
offset for the R_RL78_RH_SADDR relocation.
|
|
|
|
|
|
2021-01-29 08:27:48 +08:00
|
|
|
|
2021-01-29 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27271
|
|
|
|
|
* elflink.c (bfd_elf_link_record_dynamic_symbol): Don't segfault
|
|
|
|
|
on symbols defined in absolute or other special sections.
|
|
|
|
|
|
2021-01-28 08:00:36 +08:00
|
|
|
|
2021-01-28 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27259
|
|
|
|
|
* elflink.c (_bfd_elf_gc_mark_extra_sections): Use linker_mark to
|
|
|
|
|
prevent endless looping of linked-to sections.
|
|
|
|
|
|
2020-12-17 03:36:15 +08:00
|
|
|
|
2020-12-17 Mihails Strasuns <mihails.strasuns@intel.com>
|
|
|
|
|
|
|
|
|
|
* bfd-elf.h (elfcore_write_file_note): New function.
|
|
|
|
|
* elf.c (elfcore_write_file_note): New function.
|
|
|
|
|
|
2021-01-25 12:47:15 +08:00
|
|
|
|
2021-01-26 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-ft32.c (ft32_reloc_type_lookup): Don't miss ft32_reloc_map[0].
|
|
|
|
|
|
2021-01-24 23:00:34 +08:00
|
|
|
|
2021-01-24 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/27231
|
|
|
|
|
* dwarf2.c (read_rnglists): Ignore empty range when parsing line
|
|
|
|
|
number tables.
|
|
|
|
|
|
2021-01-24 10:17:37 +08:00
|
|
|
|
2021-01-23 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/27231
|
|
|
|
|
* dwarf2.c (read_rnglists): Advance rngs_ptr after
|
|
|
|
|
_bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
|
|
|
|
|
|
2021-01-20 13:25:46 +08:00
|
|
|
|
2021-01-20 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-ppc.c: Delete outdated comment.
|
|
|
|
|
(TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
|
|
|
|
|
* elf64-ppc.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): Define.
|
|
|
|
|
|
2021-01-20 13:30:58 +08:00
|
|
|
|
2021-01-20 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf64-ppc.c (ppc64_elf_get_synthetic_symtab): Don't assume
|
|
|
|
|
section symbols are present.
|
|
|
|
|
|
2021-01-19 16:56:11 +08:00
|
|
|
|
2021-01-19 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf64-ppc.c (elf_hash_entry): New inline function. Use
|
|
|
|
|
throughout to replace casts.
|
|
|
|
|
(branch_reloc_hash_match): Remove const from params.
|
|
|
|
|
(use_local_plt): New function.
|
|
|
|
|
(allocate_dynrelocs, ppc_build_one_stub, ppc_size_one_stub),
|
|
|
|
|
(build_global_entry_stubs_and_plt, ppc64_elf_relocate_section):
|
|
|
|
|
Use use_local_plt.
|
|
|
|
|
* elf32-ppc.c (use_local_plt): New function.
|
|
|
|
|
(allocate_dynrelocs, ppc_elf_relocate_section),
|
|
|
|
|
(write_global_sym_plt): Use use_local_plt.
|
|
|
|
|
|
2021-01-18 12:01:16 +08:00
|
|
|
|
2021-01-17 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/27193
|
|
|
|
|
* elflink.c (elf_create_symbuf): Also ignore section symbols.
|
|
|
|
|
|
2021-01-16 23:00:09 +08:00
|
|
|
|
2021-01-16 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/23169
|
|
|
|
|
* elfxx-x86.c (_bfd_x86_elf_link_fixup_ifunc_symbol): Don't
|
|
|
|
|
check pointer_equality_needed.
|
|
|
|
|
|
2021-01-16 10:06:48 +08:00
|
|
|
|
2021-01-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf-linker-x86.h (elf_linker_x86_params): Add
|
|
|
|
|
report_relative_reloc.
|
|
|
|
|
* elf32-i386.c (elf_i386_relocate_section): Call
|
|
|
|
|
_bfd_x86_elf_link_report_relative_reloc to report relative
|
|
|
|
|
relocations for -z report-relative-reloc.
|
|
|
|
|
(elf_i386_finish_dynamic_symbol): Likewse.
|
|
|
|
|
* elf64-x86-64.c (elf_x86_64_relocate_section): Likewse.
|
|
|
|
|
(elf_x86_64_finish_dynamic_symbol): Likewse.
|
|
|
|
|
* elfxx-x86.c (_bfd_x86_elf_link_report_relative_reloc): New
|
|
|
|
|
function.
|
|
|
|
|
* elfxx-x86.h (_bfd_x86_elf_link_report_relative_reloc): New
|
|
|
|
|
prototype.
|
|
|
|
|
|
2021-01-16 07:15:09 +08:00
|
|
|
|
2021-01-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* compress.c (decompress_contents): Tidy inflateEnd result test.
|
|
|
|
|
|
2021-01-15 18:47:43 +08:00
|
|
|
|
2021-01-16 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26002
|
|
|
|
|
* elflink.c (elf_link_output_extsym): Use version 1 in
|
|
|
|
|
.gnu.version for undefined unversioned symbols.
|
|
|
|
|
|
2021-01-15 18:08:30 +08:00
|
|
|
|
2021-01-15 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfnn-riscv.c (riscv_relax_delete_bytes): Fixed the indent that
|
|
|
|
|
caused the by previous commit accidentally.
|
|
|
|
|
|
2021-01-15 09:36:51 +08:00
|
|
|
|
2021-01-15 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfnn-riscv.c: Indent, labels and GNU coding standards tidy,
|
|
|
|
|
also aligned the code.
|
|
|
|
|
|
2021-01-13 16:52:14 +08:00
|
|
|
|
2021-01-15 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfnn-riscv.c (riscv_merge_attributes): Fix typos of messages.
|
|
|
|
|
|
2021-01-13 10:05:48 +08:00
|
|
|
|
2021-01-15 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfnn-riscv.c: Comments tidy and improvement.
|
|
|
|
|
* elfxx-riscv.c: Likewise.
|
|
|
|
|
* elfxx-riscv.h: Likewise.
|
|
|
|
|
|
2021-01-14 21:23:58 +08:00
|
|
|
|
2021-01-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/26688
|
|
|
|
|
* elf32-bfin.c (bfinfdpic_relocate_section): Skip non SEC_ALLOC
|
|
|
|
|
section for R_BFIN_FUNCDESC.
|
|
|
|
|
|
2021-01-14 17:15:13 +08:00
|
|
|
|
2021-01-14 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* elf.c (elfcore_grok_win32pstatus): Check for a note type of 0.
|
|
|
|
|
|
2021-01-13 16:43:23 +08:00
|
|
|
|
2021-01-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* doc/Makefile.in: Regenerate.
|
|
|
|
|
|
2021-01-13 11:03:34 +08:00
|
|
|
|
2021-01-13 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 27160
|
|
|
|
|
* section.c (struct bfd_section): Remove pattern field.
|
|
|
|
|
(BFD_FAKE_SECTION): Adjust to suit.
|
|
|
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
|
* elflink.c (compare_link_order, elf_fixup_link_order): Delete.
|
|
|
|
|
(bfd_elf_final_link): Don't call elf_fixup_link_order.
|
|
|
|
|
|
2021-01-12 21:45:28 +08:00
|
|
|
|
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/26792
|
|
|
|
|
* configure.ac: Use GNU_MAKE_JOBSERVER.
|
|
|
|
|
* aclocal.m4: Regenerated.
|
|
|
|
|
* configure: Likewise.
|
|
|
|
|
|
2021-01-12 21:10:58 +08:00
|
|
|
|
2021-01-12 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/27171
|
|
|
|
|
* reloc.c (bfd_perform_relocation): Adjust R_AMD64_DIR64 and
|
|
|
|
|
R_AMD64_DIR32 relocations for PE/x86-64 inputs.
|
|
|
|
|
|
2021-01-12 08:29:31 +08:00
|
|
|
|
2021-01-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/27173
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2021-01-11 20:55:33 +08:00
|
|
|
|
2021-01-11 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/fr.po: Updated French translation.
|
|
|
|
|
* po/pt.po: Updated Portuguese translation.
|
|
|
|
|
* po/sr.po: Updated Serbian translation.
|
|
|
|
|
* po/uk.po: Updated Ukranian translation.
|
|
|
|
|
|
2021-01-09 22:47:58 +08:00
|
|
|
|
2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2021-01-09 22:11:06 +08:00
|
|
|
|
2021-01-09 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/27166
|
|
|
|
|
* elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Handle
|
|
|
|
|
-z lam-u48 and -z lam-u57.
|
|
|
|
|
|
2021-01-09 19:01:01 +08:00
|
|
|
|
2021-01-09 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* version.m4: Change to 2.36.50.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* po/bfd.pot: Regenerate.
|
|
|
|
|
|
2021-01-09 18:40:28 +08:00
|
|
|
|
2021-01-09 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* 2.36 release branch crated.
|
|
|
|
|
|
2021-01-09 13:51:38 +08:00
|
|
|
|
2021-01-08 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Also set
|
|
|
|
|
LAM_U57 when setting LAM_U48.
|
|
|
|
|
|
2021-01-09 13:38:39 +08:00
|
|
|
|
2021-01-08 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/26256
|
|
|
|
|
PR ld/27160
|
|
|
|
|
* elflink.c (elf_fixup_link_order): Verify that fixing up
|
|
|
|
|
SHF_LINK_ORDER doesn't increase the output section size.
|
|
|
|
|
|
2021-01-09 08:33:29 +08:00
|
|
|
|
2021-01-09 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2021-01-08 00:47:36 +08:00
|
|
|
|
2021-01-07 Samuel Thibault <samuel.thibault@gnu.org>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2021-01-07 22:42:00 +08:00
|
|
|
|
2021-01-07 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR 27109
|
|
|
|
|
* aix386-core.c (core_aix386_vec): Initialize
|
|
|
|
|
keep_unused_section_symbol to TARGET_KEEP_UNUSED_SECTION_SYMBOLS.
|
|
|
|
|
* aout-target.h (MY (vec)): Likewise.
|
|
|
|
|
* binary.c (binary_vec): Likewise.
|
|
|
|
|
* cisco-core.c (core_cisco_be_vec): Likewise.
|
|
|
|
|
(core_cisco_le_vec): Likewise.
|
|
|
|
|
* coff-alpha.c (alpha_ecoff_le_vec): Likewise.
|
|
|
|
|
* coff-i386.c (TARGET_SYM): Likewise.
|
|
|
|
|
(TARGET_SYM_BIG): Likewise.
|
|
|
|
|
* coff-ia64.c (TARGET_SYM): Likewise.
|
|
|
|
|
* coff-mips.c (mips_ecoff_le_vec): Likewise.
|
|
|
|
|
(mips_ecoff_be_vec): Likewise.
|
|
|
|
|
(mips_ecoff_bele_vec): Likewise.
|
|
|
|
|
* coff-rs6000.c (rs6000_xcoff_vec): Likewise.
|
|
|
|
|
(powerpc_xcoff_vec): Likewise.
|
|
|
|
|
* coff-sh.c (sh_coff_small_vec): Likewise.
|
|
|
|
|
(sh_coff_small_le_vec): Likewise.
|
|
|
|
|
* coff-tic30.c (tic30_coff_vec): Likewise.
|
|
|
|
|
* coff-tic54x.c (tic54x_coff0_vec): Likewise.
|
|
|
|
|
(tic54x_coff0_beh_vec): Likewise.
|
|
|
|
|
(tic54x_coff1_vec): Likewise.
|
|
|
|
|
(tic54x_coff1_beh_vec): Likewise.
|
|
|
|
|
(tic54x_coff2_vec): Likewise.
|
|
|
|
|
(tic54x_coff2_beh_vec): Likewise.
|
|
|
|
|
* coff-x86_64.c (TARGET_SYM): Likewise.
|
|
|
|
|
(TARGET_SYM_BIG): Likewise.
|
|
|
|
|
* coff64-rs6000.c (rs6000_xcoff64_vec): Likewise.
|
|
|
|
|
(rs6000_xcoff64_aix_vec): Likewise.
|
|
|
|
|
* coffcode.h (CREATE_BIG_COFF_TARGET_VEC): Likewise.
|
|
|
|
|
(CREATE_BIGHDR_COFF_TARGET_VEC): Likewise.
|
|
|
|
|
(CREATE_LITTLE_COFF_TARGET_VEC): Likewise.
|
|
|
|
|
* elfxx-target.h (TARGET_BIG_SYM): Likewise.
|
|
|
|
|
(TARGET_LITTLE_SYM): Likewise.
|
|
|
|
|
* hppabsd-core.c (core_hppabsd_vec): Likewise.
|
|
|
|
|
* hpux-core.c (core_hpux_vec): Likewise.
|
|
|
|
|
* i386msdos.c (i386_msdos_vec): Likewise.
|
|
|
|
|
* ihex.c (ihex_vec): Likewise.
|
|
|
|
|
* irix-core.c (core_irix_vec): Likewise.
|
|
|
|
|
* mach-o-target.c (TARGET_NAME): Likewise.
|
|
|
|
|
* mmo.c (mmix_mmo_vec): Likewise.
|
|
|
|
|
* netbsd-core.c (core_netbsd_vec): Likewise.
|
|
|
|
|
* osf-core.c (core_osf_vec): Likewise.
|
|
|
|
|
* pdp11.c (MY (vec)): Likewise.
|
|
|
|
|
* pef.c (pef_vec): Likewise.
|
|
|
|
|
(pef_xlib_vec): Likewise.
|
|
|
|
|
* plugin.c (plugin_vec): Likewise.
|
|
|
|
|
* ppcboot.c (powerpc_boot_vec): Likewise.
|
|
|
|
|
* ptrace-core.c (core_ptrace_vec): Likewise.
|
|
|
|
|
* sco5-core.c (core_sco5_vec): Likewise.
|
|
|
|
|
* som.c (hppa_som_vec): Likewise.
|
|
|
|
|
* srec.c (srec_vec): Likewise.
|
|
|
|
|
(symbolsrec_vec): Likewise.
|
|
|
|
|
* tekhex.c (tekhex_vec): Likewise.
|
|
|
|
|
* trad-core.c (core_trad_vec): Likewise.
|
|
|
|
|
* verilog.c (verilog_vec): Likewise.
|
|
|
|
|
* vms-alpha.c (alpha_vms_vec): Likewise.
|
|
|
|
|
* vms-lib.c (alpha_vms_lib_txt_vec): Likewise.
|
|
|
|
|
* wasm-module.c (wasm_vec): Likewise.
|
|
|
|
|
* xsym.c (sym_vec): Likewise.
|
|
|
|
|
* elf.c (ignore_section_sym): Return TRUE if BSF_SECTION_SYM_USED
|
|
|
|
|
isn't set.
|
|
|
|
|
(elf_map_symbols): Don't include ignored section symbols.
|
|
|
|
|
* elfcode.h (elf_slurp_symbol_table): Also set
|
|
|
|
|
BSF_SECTION_SYM_USED on STT_SECTION symbols.
|
|
|
|
|
* elflink.c (bfd_elf_final_link): Generated section symbols only
|
|
|
|
|
when emitting relocations or reqired.
|
|
|
|
|
* elfxx-x86.h (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
|
|
|
|
|
* syms.c (BSF_SECTION_SYM_USED): New.
|
|
|
|
|
* targets.c (TARGET_KEEP_UNUSED_SECTION_SYMBOLS): New.
|
|
|
|
|
(bfd_target): Add keep_unused_section_symbols.
|
|
|
|
|
(bfd_keep_unused_section_symbols): New.
|
|
|
|
|
* bfd-in2.h: Regenerated.
|
|
|
|
|
|
2021-01-07 20:04:15 +08:00
|
|
|
|
2021-01-07 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 25713
|
|
|
|
|
* bfdio.c (_bfd_real_fopen): For Win32 convert relative paths to
|
|
|
|
|
absolute paths and check to see if they are longer than MAX_PATH.
|
|
|
|
|
|
2021-01-07 15:53:25 +08:00
|
|
|
|
2021-01-07 Philipp Tomsich <prt@gnu.org>
|
|
|
|
|
|
|
|
|
|
* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zihintpause.
|
|
|
|
|
|
2020-12-15 23:11:03 +08:00
|
|
|
|
2021-01-07 Claire Xenia Wolf <claire@symbioticeda.com>
|
|
|
|
|
Jim Wilson <jimw@sifive.com>
|
|
|
|
|
Andrew Waterman <andrew@sifive.com>
|
|
|
|
|
Maxim Blinov <maxim.blinov@embecosm.com>
|
|
|
|
|
Kito Cheng <kito.cheng@sifive.com>
|
|
|
|
|
Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfxx-riscv.c (riscv_std_z_ext_strtab): Added zba, zbb and zbc.
|
|
|
|
|
|
2020-12-30 02:41:51 +08:00
|
|
|
|
2021-01-06 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* elf32-bfin.c (bfin_check_relocs): Check bfd_link_hash_indirect.
|
|
|
|
|
(bfinfdpic_check_relocs): Likewise.
|
|
|
|
|
|
2021-01-06 14:10:31 +08:00
|
|
|
|
2021-01-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-score.c (s3_bfd_score_info_to_howto): Report an error
|
|
|
|
|
on unknown r_type.
|
|
|
|
|
* elf32-score7.c (s7_bfd_score_info_to_howto): Likewise.
|
|
|
|
|
|
2021-01-06 09:31:10 +08:00
|
|
|
|
2021-01-06 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* config.bfd (sparc-*-solaris2*): Add sparc_elf32_vec.
|
|
|
|
|
(sparc64-*-solaris2*): Add sparc_elf64_vec and
|
|
|
|
|
sparc_elf32_vec.
|
|
|
|
|
|
RISC-V: Implement support for big endian targets.
RISC-V instruction/code is always little endian, but data might be
big-endian. Therefore, we can not use the original bfd_get/bfd_put
to get/put the code for big endian targets. Add new riscv_get_insn
and riscv_put_insn to always get/put code as little endian can resolve
the problem. Just remember to update them once we have supported
the 48-bit/128-bit instructions in the future patches.
bfd/
* config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec.
* configure.ac: Handle riscv_elf[32|64]_be_vec.
* configure: Regenerate.
* elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
riscv_is_insn_reloc.
(riscv_get_insn): RISC-V instructions are always little endian, but
bfd_get may be used for big-endian, so add new riscv_get_insn to handle
the insturctions.
(riscv_put_insn): Likewsie.
(riscv_is_insn_reloc): Check if we are relocaing an instruction.
(perform_relocation): Call riscv_is_insn_reloc to decide if we should
use riscv_[get|put]_insn or bfd_[get|put].
(riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
or bfd_[get|put]l16 for code.
(riscv_elf_relocate_section): Likewise.
(riscv_elf_finish_dynamic_symbol): Likewise.
(riscv_elf_finish_dynamic_sections): Likewise.
(_bfd_riscv_relax_call): Likewise.
(_bfd_riscv_relax_lui): Likewise.
(_bfd_riscv_relax_align): Likewise.
(_bfd_riscv_relax_pc): Likewise.
(riscv_elf_object_p): Handled for big endian.
(TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
* targets.c: Add riscv_elf[32|64]_be_vec.
(_bfd_target_vector): Likewise.
gas/
* config/tc-riscv.c (riscv_target_format): Add elf64-bigriscv and
elf32-bigriscv.
(install_insn): Always write instructions as little endian.
(riscv_make_nops): Likewise.
(md_convert_frag_branch): Likewise.
(md_number_to_chars): Write data in target endianness.
(options, md_longopts): Add -mbig-endian and -mlittle-endian options.
(md_parse_option): Handle the endian options.
* config/tc-riscv.h: Only define TARGET_BYTES_BIG_ENDIAN if not
already defined.
* configure.tgt: Added riscv64be*, riscv32be*, riscvbe*.
ld/
* configure.tgt: Added riscvbe-*-*, riscv32be*-*-*, riscv64be*-*-*,
riscv32be*-*-linux*, and riscv64be*-*-linux*.
* Makefile.am: Added eelf32briscv.c, eelf32briscv_ilp32f.c and
eelf32briscv_ilp32.c.
* Makefile.in: Regenerate.
* emulparams/elf32briscv.sh: Added.
* emulparams/elf32briscv_ilp32.sh: Likewise.
* emulparams/elf32briscv_ilp32f.sh: Likewise.
* emulparams/elf64briscv.sh: Likewise.
* emulparams/elf64briscv_lp64.sh: Likewise.
* emulparams/elf64briscv_lp64f.sh: Likewise.
2021-01-06 05:50:32 +08:00
|
|
|
|
2021-01-06 Marcus Comstedt <marcus@mc.pp.se>
|
|
|
|
|
|
|
|
|
|
* config.bfd: Added targets riscv64be*-*-*, riscv32be*-*-* and
|
|
|
|
|
riscvbe*-*-*. Also added riscv_elf[32|64]_be_vec.
|
|
|
|
|
* configure.ac: Handle riscv_elf[32|64]_be_vec.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* elfnn-riscv.c: Include <limits.h> and define CHAR_BIT for
|
|
|
|
|
riscv_is_insn_reloc.
|
|
|
|
|
(riscv_get_insn): RISC-V instructions are always little endian, but
|
|
|
|
|
bfd_get may be used for big-endian, so add new riscv_get_insn to handle
|
|
|
|
|
the insturctions.
|
|
|
|
|
(riscv_put_insn): Likewsie.
|
|
|
|
|
(riscv_is_insn_reloc): Check if we are relocaing an instruction.
|
|
|
|
|
(perform_relocation): Call riscv_is_insn_reloc to decide if we should
|
|
|
|
|
use riscv_[get|put]_insn or bfd_[get|put].
|
|
|
|
|
(riscv_zero_pcrel_hi_reloc): Use riscv_[get|put]_insn, bfd_[get|put]l32
|
|
|
|
|
or bfd_[get|put]l16 for code.
|
|
|
|
|
(riscv_elf_relocate_section): Likewise.
|
|
|
|
|
(riscv_elf_finish_dynamic_symbol): Likewise.
|
|
|
|
|
(riscv_elf_finish_dynamic_sections): Likewise.
|
|
|
|
|
(_bfd_riscv_relax_call): Likewise.
|
|
|
|
|
(_bfd_riscv_relax_lui): Likewise.
|
|
|
|
|
(_bfd_riscv_relax_align): Likewise.
|
|
|
|
|
(_bfd_riscv_relax_pc): Likewise.
|
|
|
|
|
(riscv_elf_object_p): Handled for big endian.
|
|
|
|
|
(TARGET_BIG_SYM, TARGET_BIG_NAME): Defined.
|
|
|
|
|
* targets.c: Add riscv_elf[32|64]_be_vec.
|
|
|
|
|
(_bfd_target_vector): Likewise.
|
|
|
|
|
|
2021-01-05 20:21:42 +08:00
|
|
|
|
2021-01-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elflink.c (bfd_elf_link_record_dynamic_symbol): Handle no_export
|
|
|
|
|
for relocatable executable.
|
|
|
|
|
|
2021-01-05 10:47:24 +08:00
|
|
|
|
2021-01-05 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* vms-alpha.c (_bfd_vms_slurp_egsd): Read flags after size check.
|
|
|
|
|
|
RISC-V: Ouput __global_pointer$ as dynamic symbol when generating dynamic PDE.
When the ifunc resolver is in the executable, we may relax the variables
to gp-relative access instruction in the ifunc resolver, or in other functions
that called by the ifunc resolver. But this will cause the uninitialized
gp problem since the ifunc need to be resolved at the early runtime, that
is at the pre-load stage, but we set the gp until the startup code.
At first, we try to add a new dynamic tag, DT_RISCV_GP, to stroe the gp value
and let ld.so can init the gp register early, before the pre-load stage. But
we need to extend the ABI if we want to add a new dynamic tag. Therefore,
in the psabi discussion, we try another solution, which was suggested by the
lld and FreeBSD linker experts, to let ld.so set the gp earlier - make sure
__global_pointer$ is output as a dynamic symbol when we are generating pde,
since we only do the relaxation for it. Afterwards, ld.so can search the
DT_SYMTAB to get the gp value, and set the gp register before resolving ifunc.
bfd/
* elfnn-riscv.c (allocate_dynrelocs): When we are generating pde, make
sure gp symbol is output as a dynamic symbol.
2020-12-16 11:03:34 +08:00
|
|
|
|
2021-01-05 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfnn-riscv.c (allocate_dynrelocs): When we are generating pde,
|
|
|
|
|
make sure gp symbol is output as a dynamic symbol.
|
|
|
|
|
|
2021-01-05 04:37:49 +08:00
|
|
|
|
2021-01-04 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR ld/26256
|
|
|
|
|
* elflink.c (compare_link_order): Place unordered sections before
|
|
|
|
|
ordered sections.
|
|
|
|
|
(elf_fixup_link_order): Add a link info argument. Allow mixed
|
|
|
|
|
ordered and unordered input sections for non-relocatable link.
|
|
|
|
|
Sort the consecutive bfd_indirect_link_order sections with the
|
|
|
|
|
same pattern. Change the offsets of the bfd_indirect_link_order
|
|
|
|
|
sections only.
|
|
|
|
|
(bfd_elf_final_link): Pass info to elf_fixup_link_order.
|
|
|
|
|
* section.c (bfd_section): Add pattern.
|
|
|
|
|
(BFD_FAKE_SECTION): Initialize pattern to NULL.
|
|
|
|
|
* bfd-in2.h: Regenerated.
|
|
|
|
|
|
2021-01-04 23:13:57 +08:00
|
|
|
|
2021-01-04 Alexander Fedotov <alfedotov@gmail.com>
|
|
|
|
|
|
|
|
|
|
* elf32-arm.c (elf32_arm_print_private_bfd_data): Prefix hex value
|
|
|
|
|
of private flags with 0x.
|
|
|
|
|
* elfnn-aarch64.c (elfNN_aarch64_print_private_bfd_data): Likewise.
|
|
|
|
|
|
2021-01-04 14:43:51 +08:00
|
|
|
|
2021-01-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26822
|
|
|
|
|
* elflink.c (elf_link_input_bfd): Use the file base name in
|
|
|
|
|
linker generated STT_FILE symbols.
|
|
|
|
|
|
2021-01-04 10:12:45 +08:00
|
|
|
|
2021-01-04 Nelson Chu <nelson.chu@sifive.com>
|
|
|
|
|
|
|
|
|
|
* elfxx-riscv.c (riscv_compare_subsets): Removed static.
|
|
|
|
|
* elfxx-riscv.h: Add declaration.
|
|
|
|
|
* elfnn-riscv.c (riscv_merge_multi_letter_ext): Use
|
|
|
|
|
riscv_compare_subsets to check the orders.
|
|
|
|
|
(riscv_skip_prefix): Removed.
|
|
|
|
|
(riscv_prefix_cmp): Removed.
|
|
|
|
|
|
2021-01-04 07:49:14 +08:00
|
|
|
|
2021-01-04 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR 26741
|
|
|
|
|
* elfxx-riscv.c (riscv_parse_prefixed_ext): Free subset after
|
|
|
|
|
calculating subset version length.
|
|
|
|
|
|
2021-01-01 11:51:52 +08:00
|
|
|
|
2021-01-01 Nicolas Boulenguez <nicolas@debian.org>
|
|
|
|
|
|
|
|
|
|
* xcofflink.c: Correct spelling in comments.
|
|
|
|
|
|
2021-01-01 06:58:58 +08:00
|
|
|
|
2021-01-01 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
Update year range in copyright notice of all files.
|
|
|
|
|
|
2021-01-01 06:47:13 +08:00
|
|
|
|
For older changes see ChangeLog-2020
|
2016-01-01 18:44:31 +08:00
|
|
|
|
|
2021-01-01 06:47:13 +08:00
|
|
|
|
Copyright (C) 2021 Free Software Foundation, Inc.
|
2016-01-01 18:44:31 +08:00
|
|
|
|
|
|
|
|
|
Copying and distribution of this file, with or without modification,
|
|
|
|
|
are permitted in any medium without royalty provided the copyright
|
|
|
|
|
notice and this notice are preserved.
|
|
|
|
|
|
|
|
|
|
Local Variables:
|
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
|
|
|
|
version-control: never
|
|
|
|
|
End:
|