x86: drop largely defunct gas emulations

Both ELF and COFF have various sub-flavors, each of which would then
require its own emulation: Right now when configuring a COFF/PE
secondary target (with perhaps an ELF primary one), one gets plain COFF
emulation rather than COFF/PE one.

As such a multitude of emulations would be unwieldy (and likely fragile)
drop gas emulations altogether instead.
This commit is contained in:
Jan Beulich 2024-10-04 09:41:38 +02:00
parent 87d2a20152
commit 46f44aa700
10 changed files with 2 additions and 185 deletions

View File

@ -362,9 +362,6 @@ TARG_ENV_CFILES = \
MULTI_CFILES = \
config/e-crisaout.c \
config/e-criself.c \
config/e-i386aout.c \
config/e-i386coff.c \
config/e-i386elf.c \
config/e-mipself.c
CONFIG_ATOF_CFILES = \

View File

@ -861,9 +861,6 @@ TARG_ENV_CFILES = \
MULTI_CFILES = \
config/e-crisaout.c \
config/e-criself.c \
config/e-i386aout.c \
config/e-i386coff.c \
config/e-i386elf.c \
config/e-mipself.c
CONFIG_ATOF_CFILES = \
@ -1284,12 +1281,6 @@ config/e-crisaout.$(OBJEXT): config/$(am__dirstamp) \
config/$(DEPDIR)/$(am__dirstamp)
config/e-criself.$(OBJEXT): config/$(am__dirstamp) \
config/$(DEPDIR)/$(am__dirstamp)
config/e-i386aout.$(OBJEXT): config/$(am__dirstamp) \
config/$(DEPDIR)/$(am__dirstamp)
config/e-i386coff.$(OBJEXT): config/$(am__dirstamp) \
config/$(DEPDIR)/$(am__dirstamp)
config/e-i386elf.$(OBJEXT): config/$(am__dirstamp) \
config/$(DEPDIR)/$(am__dirstamp)
config/e-mipself.$(OBJEXT): config/$(am__dirstamp) \
config/$(DEPDIR)/$(am__dirstamp)
config/m68k-parse.$(OBJEXT): config/$(am__dirstamp) \
@ -1369,9 +1360,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/bfin-parse.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/e-crisaout.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/e-criself.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/e-i386aout.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/e-i386coff.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/e-i386elf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/e-mipself.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/kvx-parse.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@config/$(DEPDIR)/loongarch-lex.Po@am__quote@

View File

@ -1,5 +1,7 @@
-*- text -*-
* On x86 emulation support (for secondary targets) was dropped.
* Add support for RISC-V Zcmp (cm.mva01s, cm.mvsa01), Smrnmi and CORE-V
(xcvbitmanip, xcvsimd) extensions with version 1.0.

View File

@ -1,28 +0,0 @@
/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
GAS 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, or (at your option)
any later version.
GAS 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 GAS; see the file COPYING. If not, write to the Free
Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
02110-1301, USA. */
#include "as.h"
#include "emul.h"
#define emul_format &aout_format_ops
#define emul_name "i386aout"
#define emul_struct_name i386aout
#define emul_default_endian 0
#include "emul-target.h"

View File

@ -1,28 +0,0 @@
/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
GAS 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, or (at your option)
any later version.
GAS 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 GAS; see the file COPYING. If not, write to the Free
Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
02110-1301, USA. */
#include "as.h"
#include "emul.h"
#define emul_format &coff_format_ops
#define emul_name "i386coff"
#define emul_struct_name i386coff
#define emul_default_endian 0
#include "emul-target.h"

View File

@ -1,28 +0,0 @@
/* Copyright (C) 2007-2024 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
GAS 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, or (at your option)
any later version.
GAS 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 GAS; see the file COPYING. If not, write to the Free
Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
02110-1301, USA. */
#include "as.h"
#include "emul.h"
#define emul_format &elf_format_ops
#define emul_name "i386elf"
#define emul_struct_name i386elf
#define emul_default_endian 0
#include "emul-target.h"

41
gas/configure vendored
View File

@ -12683,15 +12683,6 @@ $as_echo "$with_priv_spec" >&6; }
big) emulation="mipsbelf mipslelf mipself" ;;
*) emulation="mipslelf mipsbelf mipself" ;;
esac ;;
# i386-pc-pe-coff != i386-pc-coff.
i386-*-pe-coff) ;;
# Uncommenting the next line will turn on support for i386 AOUT
# for the default linux configuration
# i386-*-linux*-elf) emulation="i386elf i386aout" ;;
#
i386-*-aout) emulation="i386aout" ;;
i386-*-coff) emulation="i386coff" ;;
i386-*-elf) emulation="i386elf" ;;
# Always all formats. The first stated emulation becomes the default.
cris-*-*aout*) emulation="crisaout criself" ;;
@ -12775,38 +12766,6 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
# Turn on all targets if possible
if test ${all_targets} = "yes"; then
case ${target_cpu_type} in
i386)
case ${obj_format} in
aout)
emulations="$emulations i386coff i386elf"
;;
coff)
emulations="$emulations i386aout i386elf"
;;
elf)
emulations="$emulations i386aout i386coff"
;;
esac
;;
x86_64)
case ${obj_format} in
aout)
emulations="$emulations i386coff i386elf"
;;
coff)
emulations="$emulations i386aout i386elf"
;;
elf)
emulations="$emulations i386aout i386coff"
;;
esac
;;
esac
fi
# PE code has way too many macros tweaking behaviour
case ${te_file} in
pe*) emulations="" ;;

View File

@ -722,15 +722,6 @@ changequote([,])dnl
big) emulation="mipsbelf mipslelf mipself" ;;
*) emulation="mipslelf mipsbelf mipself" ;;
esac ;;
# i386-pc-pe-coff != i386-pc-coff.
i386-*-pe-coff) ;;
# Uncommenting the next line will turn on support for i386 AOUT
# for the default linux configuration
# i386-*-linux*-elf) emulation="i386elf i386aout" ;;
#
i386-*-aout) emulation="i386aout" ;;
i386-*-coff) emulation="i386coff" ;;
i386-*-elf) emulation="i386elf" ;;
# Always all formats. The first stated emulation becomes the default.
cris-*-*aout*) emulation="crisaout criself" ;;
@ -798,38 +789,6 @@ fi
AC_DEFINE_UNQUOTED(DEFAULT_COMPRESSED_DEBUG_ALGORITHM, $ac_default_compressed_debug_sections_algorithm,
[Default compression algorithm for --enable-compressed-debug-sections.])
# Turn on all targets if possible
if test ${all_targets} = "yes"; then
case ${target_cpu_type} in
i386)
case ${obj_format} in
aout)
emulations="$emulations i386coff i386elf"
;;
coff)
emulations="$emulations i386aout i386elf"
;;
elf)
emulations="$emulations i386aout i386coff"
;;
esac
;;
x86_64)
case ${obj_format} in
aout)
emulations="$emulations i386coff i386elf"
;;
coff)
emulations="$emulations i386aout i386elf"
;;
elf)
emulations="$emulations i386aout i386coff"
;;
esac
;;
esac
fi
# PE code has way too many macros tweaking behaviour
case ${te_file} in
pe*) emulations="" ;;

View File

@ -36,7 +36,6 @@ struct emulation
COMMON struct emulation * this_emulation;
extern struct emulation mipsbelf, mipslelf, mipself;
extern struct emulation i386coff, i386elf, i386aout;
extern struct emulation crisaout, criself;
extern void common_emul_init (void);

View File

@ -17,9 +17,6 @@ config/atof-vax.c
config/bfin-lex-wrapper.c
config/e-crisaout.c
config/e-criself.c
config/e-i386aout.c
config/e-i386coff.c
config/e-i386elf.c
config/e-mipself.c
config/kvx-parse.c
config/kvx-parse.h