bfd: validate COFF and XCOFF symbol tables before the linker walks them
Harshit Kumar submits a patch to validate COFF and XCOFF symbol tables in bfd to prevent buffer overflows when the linker processes them.
Harshit Kumar submits a patch to validate COFF and XCOFF symbol tables in bfd to prevent buffer overflows when the linker processes them.
Gopi Kumar Bulusu questions whether linker defects map section start to section offset and asks about desired behavior.
Updates binutils to correctly encode TLS variable alignment in PE executables.
Improve garbage collection for Xtensa property tables to avoid bloating images with dead code.
Fixes binutils BFD to correctly handle debugging sections during relocation processing.
Adds support for the AMD GFX1103 GPU architecture to binutils.
Reviewer questions if a patch to recognize Windows targets in BFD breaks existing build configurations for 'ld'.
Fixes a double-free bug in linker's PDB generation when handling malformed symbol data.
Harshit Kumar requests guidance on obtaining Sourceware Git access to run the Binutils try builder for a submitted patch.
Debate continues on whether extremely small alignment values for .tls sections can break existing code and the interpretation of `_tls_used`.
Developer suggests basing project decisions on recent contributions and reviews, not just loud voices.
Weekly news update for the GNU toolchain, covering GDB releases, upcoming conferences, and highlighted GCC development efforts.
An audit identified 32 potential NULL pointer dereferences related to 'sreloc' across multiple ELF backends in binutils, requiring NULL checks similar to a rec…
Discussion around disabling SFrame tests in binutils, gas, and ld, with a review focusing on the unconditional setting of SFrames and the intent of specific te…
Minutes from CTI project office hours cover community items, VCS to email output, bug text to Bugzilla, and DNS/service naming for glibc.
Adjusts objdump test case for Windows to prevent path conversion issues with MSYS2.
Reminder for GNU Toolchain office hours featuring a presentation on testsuites.
Add Linux-specific header files for assembler target environment configuration.
Patch consolidates stub BFD creation logic into `ldelf.c`, simplifying code and fixing MIPS target orphan section placement.
Fix buffer overflow in _bfd_ecoff_set_section_contents by adding sanity checks.
Consolidate and clean up PE target conditional logic in BFD.
Reverts a change that caused failures on MIPS targets related to shared library BSS symbols.
Proposal to drop x86 segmentation and compatibility modes for a new PM64-only world.
Zack Weinberg asks for synchronous meetings to be discontinued due to contentiousness and lack of permanent record.
Binutils may accept AI-generated test cases if 'assisted by' is meant, aligning with other projects.
Follow-up on a previous patch to add RISC-V XXTVarith and XXTVcoder extensions.
Sourceware has successfully mitigated AI scraper bot attacks and is announcing increased corporate and individual donations, leading to doubled infrastructure…
Discussion on the correct allocation and usage of prefixes for the x86 WBINVD instruction, especially with new 'skip hints'.
Discussion regarding the naming convention for AVX10 auxiliary instructions and feedback on the ACE specification version.
Fixes a use-after-free vulnerability in BFD's archive handling related to symbol map allocation.
Business development inquiry seeking a partnership opportunity.
Adds support for the new DWARF expression DW_OP_INTEL_regval_bits, which allows accessing specific bit ranges within registers.
Georg-Johann Lay encounters '429 Too Many Requests' error when fetching binutils-gdb, suspects scraper bots or recent Anubis updates.
Weekly news roundup: GCC 16.2.0 released, GCC 14.5.0 planned, GDB 18 branch created, conference reminders, and new maintainer appointments.
Support for the AMD GPU 'gfx1103' architecture has been added to BFD and binutils.
A series of patches refactors binutils' dynamic object handling, introducing a stub BFD for dynobj and improving various ELF linking routines.
Enables binutils to recognize 32-bit core dump file formats on AIX 7.3.
RFC: Should the linker warn about or control the automatic propagation of audit libraries?
Weekly news digest for GNU toolchain, including glibc and binutils releases, conference reminders, and Sourceware.org updates.
Announces the release of GNU Binutils version 2.47, highlighting new features and bug fixes.
Introduces support for the nanoMIPS architecture across binutils components.
Enables binutils to generate FDPIC binaries for the Renesas RX architecture, confirmed to work with BusyBox.
Jan Beulich states he is working on a patch to separate AVX10.1-aux from AVX10.2.
Identifies a bug in older ld versions where GOTPCRELX on 'push' is incorrectly converted to 'call', causing crashes, and proposes a workaround.
A new Malay translation file for the 'bfd' component of binutils has been submitted.
Jens Remus informs that the deprecation of s390 32-bit targets has been committed for Binutils 2.47.
Evgeny Karpov submits v11 of a patch series to implement SEH on AArch64, including big-endian host support and fixes.
Fixes a SIGSEGV in libctf by adding sanity checks for variable length record bytes against type section length.
Fixes signed integer overflow in `libiberty`'s C++ demangler.
David Faust committed a fix to objdump to use portable print formatters for 64-bit integers when dumping BTF info.
Corrects truncation of import table output for PE32+ (64-bit) executables, particularly on AArch64.
Adds support for Thread-Local Storage (TLS) descriptors to the RISC-V toolchain.
Refactors RISC-V relax passes into a table for better extensibility and maintainability.
Patch fixes the RISC-V fmv.x testcase to explicitly use -march=rv32i, preventing failures with non-default --with-arch configurations.
Patch adding RISC-V Sspmp extension support has been merged.
Enable shared library and PIE support for RISC-V ELF targets to facilitate UEFI application development.
Patch to define elf_backend_dtrel_excludes_plt for RISC-V has been committed.
Introduces new RISC-V relocation types for efficient global array access with dynamic indices.
RISC-V binutils patch defines elf_backend_dtrel_excludes_plt to correctly handle DT_RELASZ, preventing double processing by tools like llvm-bolt.
Adds support for the RISC-V Zama16b extension to binutils, fixing an assembler error.
Ethan Liang proposes a two-part patch series to fix memory leaks and add checks for conflicting RISC-V extensions during linker arch attribute merges.
Adds support for the .insn i pseudo-mnemonic in the s390 assembler and updates the svc instruction to use the new I_U format.
Deprecates the 32-bit s390 target in binutils, aligning with removal in Linux kernel, glibc, and GCC.
Enables GAS to accept oversized sequences in .bundle_lock directives for flexible alignment.
A discussion on removing a GCC extension for variable argument lists (`__VA_ARGS__`) from gas's SFrame warning macro to improve portability.
Adds support for .previous, .pushsection, and .popsection pseudo-ops to the COFF target in gas.
Patch enforces zero addends for specific AArch64 GOT-entry relocations as required by AAELF.
Patch adds WORKING_DOT_WORD to PDP-11 GAS configuration to fix .WORD directive issues.
Patch removes a stray form feed character from gas/as.c to clean up the source code.
Reviewer Christophe Lyon requests additional comments on Brendan Fletcher's patch for Thumb-2 IT instruction handling.
Patch allows unconditional instructions within IT AL blocks in GAS for Thumb-2, fixing incorrect rejection.
Reviewer questions a resubmitted patch for AArch64 SEH support due to an existing, similar patch.
Fixes a memory leak in gas/gen-sframe.c that could lead to a segmentation fault by properly cleaning up context structures.
Adds support for .pushsection/.popsection to the COFF object file format in GAS.
Adds an option to control GAS's conversion of local symbols to section symbols for ELF relocations.
Discussion on using UD0/UD2 versus LFENCE/INT3 as speculation barriers after indirect jumps in PLT entries.
Adds a new relocation type R_X86_64_PLT32 to binutils for specific PIC scenarios involving PLT entries.
Ensures LoongArch relocations are emitted even when relaxation is disabled.
Alan Modra questions the necessity of using local anchors for relocatable section symbols in LoongArch, suggesting the relaxation code should be fixed instead.
Patch corrects .got.plt addressing in LoongArch static position-dependent executables.
Fixes an issue where static Position-Dependent Executables (PDEs) on LoongArch incorrectly offset .got.plt entries due to miscalculation of reserved slots.
Enables correct relocation generation for symbolic subtraction expressions.
Discusses a regression in LoongArch GOT relocations; the proposer acknowledges Xi Ruoyao's critique and plans to bisect.
Patch adds FROM and TO symbol parameters to DWARF2_USE_FIXED_ADVANCE_PC macro for LoongArch for finer DWARF debug info control.
Fixes LoongArch linker behavior when using `ld -r` to avoid inserting align sections unnecessarily, preventing kernel module loading issues.
Improves SH core file support by prioritizing targets that correctly handle core note information.
Increases PDB block size to 4096 bytes to support larger files and align with MSVC.
Adds an --btf option to objdump for displaying BTF section contents in a text format compatible with bpftool.
Extends PE linker support for undefined symbol directives and DEF module-definition files.
Updates S/390 opcode definitions for `cksm` to enforce that R2 must be an even-numbered register forming a pair.
Adds the addr_space_cast BPF instruction to gas for supporting BPF arenas.
BPF gas `gotol` instruction now correctly assembles signed offsets, resolving libbpf load-time failures.
Questions the use of custom path handling for Zstd in configure scripts when pkg-config might suffice.
Adds assembler and disassembler support for the x86 ACE V1 (AI Compute Extensions) instructions.
Enables ACE_V1 architecture support in binutils, reusing AMX instructions for tile management and operations.
Adds support for the -Ofast optimization flag in the x86 assembler, analogous to GCC's option, allowing potentially unsafe floating-point optimizations.
Adds warnings for x86 instructions that might silently fall back to unintended encodings (e.g., AVX512VL) when specific features are disabled.
H.J. Lu confirms the necessity and correctness of generating R_X86_64_PLT32 for specific directives to resolve PC32 relocations against function symbols.
Adds support for generating PLT32 relocations for x86 and x86-64, mirroring LLVM assembler's behavior for directives like '.long foo@PLT - .L4'.
Fixes assembler logic that incorrectly bypassed operand size checks for instructions implicitly using AVX512VL.
Suggests using pseudo-prefix or directives to prevent XCHG to MOV optimization for same-register forms.
Fixes corruption in PE bigobj files created by objcopy.
Adds a test case to verify debug info compression and decompression in Binutils.
Gentle ping for review of v2 patch series for PowerPC SFrame support.
Discusses the need for SFrame support in PowerPC64 ELF ABI to address stale LR values and missing caller information during profiling.
Adds a new ld option --prune-vectab for AVR targets to remove unused vector table entries and simplify relaxation.
Adds .gnu_attribute support to binutils for AVR to encode double/long double sizes, enabling ABI compatibility checks.
Binutils gains support for a new .gnu_attribute to specify AVR vtable address spaces, enabling ABI-aware vtable placement.
Discussion on sorting .text sections in AVR binutils: maintainer suggests a better approach than originally proposed patch.
Fixes a typo and trailing whitespace in a comment within the AVR opcode header file.
Adds support for a new ELF attribute to tag AVR object files with virtual table address space information.
A patch aligning the PDB DBI source-info substream size to a multiple of 4 and zeroing padding has been committed.
Align PDB DBI source-info substream to 4 bytes and fix integer type in alignment calculation.
Discusses proper linking of PE binaries on bare-metal targets vs. enabling PIE/shared lib for UEFI.
Fix committed to ld testsuite to restore the CC_FOR_TARGET variable when exiting early during LTO tests, preventing potential issues if a non-Clang compiler wa…
Patch modifies GNU ld to default section alignment for aarch64pe to 64K, ensuring compatibility with 16K page sizes on ARM64 hosts.
Adds a missing bounds check to microblaze ELF relaxation to prevent an out-of-bounds read that corrupts relocation addends.
Ensures the linker (`ld`) properly handles errors returned by `bfd_gc_sections`, specifically when `bfd_error_bad_value` is set.
Prevents linker garbage collection of `_tls_used` and `_load_config_used` symbols on Windows, fixing broken executables.
Patch prevents linker garbage collection of `_tls_used` and `_load_config_used` symbols for mingw-w64 PE targets.
Uses `asm` keyword to make C identifier to symbol mapping target-independent in linker tests.
Patch to stop the PE linker from emitting a reference to the _pei386_runtime_relocator function, simplifying Cygwin runtime and preparing for future architectu…
Fixes binutils linker bug on alpha where merging .got subsections after GPREL relocs are created leads to relocation errors.
Adds support for GNU_IFUNC symbol type to the Alpha linker, enabling indirect function resolution.
Fixes a bug where alpha GOT subsections can grow during relaxation, causing buffer overflows and crashes when not reallocated.
The Sourceware project has successfully raised significant funds through its recent fundraiser, exceeding expectations for the quarter.
Announcement of a Sourceware Open Office meeting to discuss buildbot, patchwork, bugspray, funding, and CI/CD.
Adds support for 8-bit and 16-bit relocations in MicroBlaze's `md_apply_fix` function.
Patch corrects GNU ld for MicroBlaze by neutralizing relocations against symbols in discarded sections, fixing garbage in debug sections.
Patch fixes an out-of-bounds read in microblaze ELF relaxation by adding a missing bounds check.
Adds a new 32-bit absolute address relocation type (R_XTENSA_32_ABS) for Xtensa, compatible with LLVM and allowing coexistence with existing R_XTENSA_32 reloca…
Optimize Xtensa assembler by returning fragment range from branch target checks.
A review is requested for a patch adding a new relocation type for Xtensa DWARF debugging information.
Increase MAX_ISTACK in Xtensa gas to 16 to accommodate loopgtz relaxation.
Introduces a new relocation type for Xtensa to better handle DWARF 5 uleb128 differences, enabling linker relaxation for functions with debug info.
Gentle ping for review of a patch adding PowerPC Dense Math Registers (DMR) support to BFD and readelf.
Discussion regarding a patch to hide DT_INIT and DT_FINI functions in ELF binaries.
H.J. Lu proposes hiding _init/_fini symbols and using function sizes from regular objects to improve linker behavior with ELF objects.
Developer pings for a review of a patch adding support for NT_PPC_DMR core file notes on PowerPC.
Fixes binutils linker to correctly handle non-allocated code sections, preventing crashes.
Proposer pings for review of a patch adding support for new PowerPC Dense Math Registers in core files.
Patch fixes a GDB crash when reading DW_FORM_addrx debug info with a 2-byte address size, discovered while investigating AVR binaries.
Change is invalid due to file duplication and incorrect commit message, and requires test invocation.
Fixes addr2line to use DIE offset for tie-breaking, improving consistency.
Patch adds a handler for the PRSTATUS note in SPARC ELF32 coredumps to GDB.
Adds a handler for SPARC ELF32 PRSTATUS notes in GDB to correctly parse core dumps.
Patch accepted: RISC-V assembler now ignores attributes in empty input files.
Optimizes AArch64 ADRP/ADD sequences by relaxing them into NOP/ADR when possible.
Adds aarch64-pc-cygwin target to binutils, based on existing Windows on Arm toolchain patches.
Adds assembler and disassembler support for AArch64's FEAT_PAuth_LR feature, including new instructions and a feature option.
Reviewer flags that optimizing ADD instructions to MOV/NOP when relocations resolve to zero is invalid if the linker still emits relocations, as it breaks idem…
Implements auto-import for AArch64 on MinGW/Cygwin by avoiding pseudo-relocations.
Binutils patch changes how relocation types are handled for aarch64 targets to avoid overwriting and breaking other relocation logic.
Srinath Parvathaneni proposes a fix for an assembler internal error related to %dtprel relocations on AArch64.
Addresses review comments for a patch implementing SEH on AArch64, clarifying field names and exception handling logic.
Patch reposted to add H8/300 simulator testsuite change for USER_LABEL_PREFIX.
Ensures the h8300-elf linker uses the USER_LABEL_PREFIX, aligning with GCC's convention for symbol names and preventing potential weak symbol issues.
Fixes incorrect byte encoding for ARM Secure Gateway stubs in BE8 mode.
Alan Modra fixes an uninitialized variable issue in binutils' ARM gas assembler.
Fixes a stray backslash in an ARM build warning message in binutils.
Fixes H8/300 test case by ensuring objdump uses the correct architecture.
Sets H8/300H as the default architecture for the H8 family in binutils.
Readelf now supports displaying new RISC-V note types for vector, tagged address control, and user CFI.
Suggestion to generalize readelf error handling beyond just the GOT section.
Refactors readelf.c to reduce `#ifdef` complexity and potentially improve code structure.
Improves error handling and fixes a buffer overflow in binutils' readelf tool.
Improves readelf's handling of dynamic tags and section information, preventing crashes and providing better warnings for invalid data.
Patch to fix gmon.out file offset generation in gprofng is approved.
Patch corrects gprofng's map file generation by using the correct file offset from core_text_sect.
Patch refines the printing of REX2 prefixes in the x86 disassembler to be more concise.
H. Peter Anvin adds missing 'const' to a pointer in tc-z80.c to fix a build error with newer GCC/glibc versions.
Fixes a buffer overflow in PE resource section parsing by using a dynamic string buffer.
Kito Cheng is added to the MAINTAINERS file as a RISC-V maintainer.
Maciej W. Rozycki has been appointed as a global maintainer for binutils.
Fixes a bug in GDB's `add-symbol-file` command where section addresses are incorrectly mapped when using both `-o` and `-s` options.
Patch to prevent the linker from checking the format of an IR dummy file during LTO processing, fixing PR ld/34572.
Add a null check for the encoded_size argument in sframe_encoder_write to prevent potential crashes.
Patch allows the AVR linker, with -mrelax, to elide RJMP instructions with a zero offset targeting global symbols.
Patch to fix failing test cases in ld-unique/unique.exp on the H8 target due to assembler diagnostics and undefined references.
Patch removes $LDFLAGS from linker test suite invocations, correcting a regression that caused flags to be duplicated.
Patch adds remote execution capabilities to ld-cdtest, enabling tests on both native and cross-compiled targets.
Fixes a build issue in ld/Makefile.am where genscripts.sh runs before the ldscripts/ directory is created, causing build failures.
Corrects a bug in C6000 stack unwinding instructions to handle larger cfa_offset values.
Fixes a memory leak in the archive processing logic that could lead to a crash or denial of service.
RFC proposes a fix for a use-after-free bug in GNU ld (CVE-2026-19548) by storing a copy of a pointer to avoid dereferencing a freed structure.
Discussion continues on the AArch64 disassembler's heuristic for annotating undefined instructions, with concerns about accuracy and user interpretation.
Patch fixes an out-of-bounds read in microblaze ELF relaxation by adding a missing bounds check.
Sync binutils' texi2pod.pl script with GCC's, adding @option and @table @option support.
Binutils' texi2pod.pl script updated by importing changes from GCC, including improved @option and @table support, with necessary local adjustments.
Patch to sanity check AT_sibling in DWARF version 1 to prevent infinite loops from fuzzed object files.
Discussion on correct ordering of RISC-V extensions in binutils, specifically concerning 'zve32x' implication.
Warn about and normalize non-boolean values for the RISC-V unaligned-access attribute.
Align RISC-V assembler's .attribute directive handling with .insn instructions.
Patch extends exclusion of kfreebsd-gnu targets from STB_GNU_UNIQUE tests to improve consistency with BFD target handling.
Discussion on the specification and implementation of GNU's non-standard DW_AT_GNU_locviews attribute in DWARF debugging information.
Patch to safely increase the maximum number of sections in PE/COFF files from 32767 to 65279 is reviewed positively.
Safely increases the maximum number of sections allowed in PE/COFF files processed by binutils.
Fixes build breakage in frv and lm32 opcode files for binutils.
Fixes readelf to correctly display location views for indexed bounded loclist entries.
Comments on the patch submission regarding ChangeLog format and indentation.
Fixes a bug in binutils' DWARF processing that caused an assertion failure when encountering DW_TAG_member without a proper struct/union parent.
Adds support for reading and dumping NT_ARM_POE information from core files.