PR ld/10956
commit32bc6679e47debef140f201fc533f219617e156d
authorNick Clifton <nickc@redhat.com>
Thu, 26 Nov 2009 13:45:24 +0000 (26 13:45 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 26 Nov 2009 13:45:24 +0000 (26 13:45 +0000)
treefe597e10601b66b315e3d71bcbfb249428b050f9
parent603e77d7542349398bf79fe670a7ecda130e7cc0
    PR ld/10956
        * ld.h (struct args_type): Rename 'relax' field to
        'disable_target_specific_optimizations' and turn it into a
        tri-state variable.
        (RELAXATION_DISABLED_BY_DEFAULT): New macro.
        (RELAXATION_DISABLED_BY_USER): New macro.
        (RELAXATION_ENABLED): New macro.
        (DISABLE_RELAXATION): New macro.
        (ENABLE_RELAXATION): New macro.
        * lexsup (enum option_values): Add OPTION_NO_RELAX.
        (struct ld_options): Add --no-relax.
        (parse_args): Handle OPTION_NO_RELAX.  Use DISABLE_RELAXATION and
        ENABLE_RELAXATION macros.
        * ldlang.c (lang_relax_sections): Use RELAXATION_ENABLED macro.
        (lang_process): Likewise.
        * ldmain.c (main): Initialise
        disable_target_specific_optimizations field.
        (multiple_definition): Use RELAXATION_ENABLED macro.
        * ld.texinfo: Document new command line option.
        * emultempl/alphaelf.em: Remove --no-relax option.
        (before_allocation): Test RELAXATION_DISABLED_BY_USER macro.
        Use ENABLE_RELAXATION macro.
        * emultempl/avrelf.em: (after_allocation): Test RELAXATION_ENABLED
        macro.
        * emultempl/cr16elf.em: Remove --no-relax option.
        (before_allocation): Test RELAXATION_DISABLED_BY_USER macro.
        Use ENABLE_RELAXATION macro.
        * emultempl/crxelf.em: Remove --no-relax option.
        (before_allocation): Test RELAXATION_DISABLED_BY_USER macro.
        Use ENABLE_RELAXATION macro.
        * emultempl/mmix-elfnmmo.em: (before_allocation): Use
        ENABLE_RELAXATION macro.
        * emultempl/needrelax.em: (before_allocation): Use
        ENABLE_RELAXATION macro.
        * emultempl/ppc32elf.em: (before_allocation): Test
        RELAXATION_DISABLED_BY_DEFAULT macro. Use
        ENABLE_RELAXATION macro.
        * emultempl/sh64elf.em: (before_allocation): Test
        RELAXATION_ENABLED macro. Use DISABLE_RELAXATION macro.
        * emultempl/xtensaelf.em: Remove --no-relax option.
        (before_allocation): Test RELAXATION_ENABLED macro.
        Use ENABLE_RELAXATION macro.
15 files changed:
ld/ChangeLog
ld/emultempl/alphaelf.em
ld/emultempl/avrelf.em
ld/emultempl/cr16elf.em
ld/emultempl/crxelf.em
ld/emultempl/mmix-elfnmmo.em
ld/emultempl/needrelax.em
ld/emultempl/ppc32elf.em
ld/emultempl/sh64elf.em
ld/emultempl/xtensaelf.em
ld/ld.h
ld/ld.texinfo
ld/ldlang.c
ld/ldmain.c
ld/lexsup.c