bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/31247] Conflicts between default linker options and emulation op


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/31247] Conflicts between default linker options and emulation options
Date: Fri, 19 Jan 2024 13:35:39 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=31247

--- Comment #3 from Sourceware Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by H.J. Lu <hjl@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8d10083c23b9415a6d645b44d136104fcf8ed176

commit 8d10083c23b9415a6d645b44d136104fcf8ed176
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jan 17 07:46:37 2024 -0800

    ld: Put all emulation options in ldlex.h

    For each command line option, parse_args() calls ldemul_parse_args()
    to check if the command line option is an emulation option.  But when
    there is a conflict between the emulation option value and the default
    option value, the default command line option will be processed as if
    the emulation option is used.  Remove PARSE_AND_LIST_PROLOGUE and move
    all emulation options to ldlex.h to avoid conflicts.

            PR ld/31247
            * ldlex.h (option_values): Add all emulation options.
            * emulparams/elf32mcore.sh (PARSE_AND_LIST_PROLOGUE): Removed.
            * emulparams/plt_unwind.sh (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/aarch64elf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/alphaelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/armelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/avrelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/bfin.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/cskyelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/hppaelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/ia64elf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/m68hc1xelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/m68kelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/metagelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/mipself.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/nds32elf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/nto.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/ppc32elf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/ppc64elf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/riscvelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/rxelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/s390.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/scoreelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/spuelf.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/tic6xdsbt.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/vxworks.em (PARSE_AND_LIST_PROLOGUE): Likewise.
            * emultempl/aix.em: Include "ldlex.h".
            (OPTION_XXX): Removed.
            (gld${EMULATION_NAME}_read_file): Replace lineno with linenumber.
            * emultempl/beos.em (OPTION_XXX): Removed.
            * emultempl/elf.em: Include "ldlex.h".
            Don't check PARSE_AND_LIST_PROLOGUE.
            (OPTION_XXX): Removed.
            * emultempl/msp430.em: Include "ldlex.h".
            (OPTION_XXX): Removed.
            * emultempl/pe.em (OPTION_XXX): Removed.
            * emultempl/pep.em (OPTION_XXX): Likewise.
            * emultempl/ticoff.em: Include "ldlex.h".
            (OPTION_XXX): Removed.
            * emultempl/vms.em: Include "ldlex.h".
            (OPTION_XXX): Removed.
            * emultempl/xtensaelf.em (elf32xtensa_size_opt,
            elf32xtensa_no_literal_movement, elf32xtensa_abi): Moved out of
            PARSE_AND_LIST_PROLOGUE.
            (PARSE_AND_LIST_PROLOGUE): Removed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]