# This shell script emits a C file. -*- C -*-
# Copyright (C) 2019-2025 Free Software Foundation, Inc.
#
# This file is part of the GNU Binutils.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the license, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; see the file COPYING3. If not,
# see .
#
# This file is sourced from elf.em, and defines x86 specific routines.
#
fragment <sgot != NULL)
htab->sgot->flags |= SEC_EXCLUDE;
if (htab->sgotplt != NULL)
htab->sgotplt->flags |= SEC_EXCLUDE;
one_lang_size_sections_pass (NULL, false);
/* Restore linker created GOT setions. */
if (htab->sgot != NULL)
htab->sgot->flags &= ~SEC_EXCLUDE;
if (htab->sgotplt != NULL)
htab->sgotplt->flags &= ~SEC_EXCLUDE;
lang_reset_memory_regions ();
}
gld${EMULATION_NAME}_before_allocation ();
}
EOF
LDEMUL_BEFORE_ALLOCATION=elf_x86_64_before_allocation
;;
esac