[binutils-gdb] x86: drop largely defunct gas emulations
Jan Beulich
jbeulich@sourceware.org
Fri Oct 4 07:43:00 GMT 2024
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=46f44aa70060d2c4a35bb70e6a74ccee8330a05e
commit 46f44aa70060d2c4a35bb70e6a74ccee8330a05e
Author: Jan Beulich <jbeulich@suse.com>
Date: Fri Oct 4 09:41:38 2024 +0200
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.
Diff:
---
gas/Makefile.am | 3 ---
gas/Makefile.in | 12 ------------
gas/NEWS | 2 ++
gas/config/e-i386aout.c | 28 ----------------------------
gas/config/e-i386coff.c | 28 ----------------------------
gas/config/e-i386elf.c | 28 ----------------------------
gas/configure | 41 -----------------------------------------
gas/configure.ac | 41 -----------------------------------------
gas/emul.h | 1 -
gas/po/POTFILES.in | 3 ---
10 files changed, 2 insertions(+), 185 deletions(-)
diff --git a/gas/Makefile.am b/gas/Makefile.am
index b9b9e18be03..d025b759875 100644
--- a/gas/Makefile.am
+++ b/gas/Makefile.am
@@ -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 = \
diff --git a/gas/Makefile.in b/gas/Makefile.in
index b57516369d7..fde7aa7d2c3 100644
--- a/gas/Makefile.in
+++ b/gas/Makefile.in
@@ -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@
diff --git a/gas/NEWS b/gas/NEWS
index 0083c871200..d64330143b0 100644
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -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.
diff --git a/gas/config/e-i386aout.c b/gas/config/e-i386aout.c
deleted file mode 100644
index 52f6fa543dd..00000000000
--- a/gas/config/e-i386aout.c
+++ /dev/null
@@ -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"
diff --git a/gas/config/e-i386coff.c b/gas/config/e-i386coff.c
deleted file mode 100644
index f767a13ea6a..00000000000
--- a/gas/config/e-i386coff.c
+++ /dev/null
@@ -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"
diff --git a/gas/config/e-i386elf.c b/gas/config/e-i386elf.c
deleted file mode 100644
index 5a6ed4ba408..00000000000
--- a/gas/config/e-i386elf.c
+++ /dev/null
@@ -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"
diff --git a/gas/configure b/gas/configure
index be37f31e1af..47c43c034c7 100755
--- a/gas/configure
+++ b/gas/configure
@@ -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="" ;;
diff --git a/gas/configure.ac b/gas/configure.ac
index bf3f9b5b6fa..ab1d0e04e2f 100644
--- a/gas/configure.ac
+++ b/gas/configure.ac
@@ -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="" ;;
diff --git a/gas/emul.h b/gas/emul.h
index d2ca8f5765a..355a7001211 100644
--- a/gas/emul.h
+++ b/gas/emul.h
@@ -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);
diff --git a/gas/po/POTFILES.in b/gas/po/POTFILES.in
index 5281cbbf6b1..820b7cd7193 100644
--- a/gas/po/POTFILES.in
+++ b/gas/po/POTFILES.in
@@ -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
More information about the Binutils-cvs
mailing list