+2018-04-16 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am: Remove arm-epoc-pe support.
+ * coff-arm.c: Likewise.
+ * config.bfd: Likewise.
+ * configure.ac: Likewise.
+ * targets.c: Likewise.
+ * epoc-pe-arm.c: Delete.
+ * epoc-pei-arm.c: Delete.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+ * po/SRC-POTFILES.in: Regenerate.
+
2018-04-16 Alan Modra <amodra@gmail.com>
* Makefile.am: Remove sparc-aout and sparc-coff support.
elflink.lo \
elfxx-sparc.lo \
elfxx-tilegx.lo \
- epoc-pe-arm.lo \
- epoc-pei-arm.lo \
i386aout.lo \
i386bsd.lo \
i386dynix.lo \
elflink.c \
elfxx-sparc.c \
elfxx-tilegx.c \
- epoc-pe-arm.c \
- epoc-pei-arm.c \
i386aout.c \
i386bsd.c \
i386dynix.c \
elflink.lo \
elfxx-sparc.lo \
elfxx-tilegx.lo \
- epoc-pe-arm.lo \
- epoc-pei-arm.lo \
i386aout.lo \
i386bsd.lo \
i386dynix.lo \
elflink.c \
elfxx-sparc.c \
elfxx-tilegx.c \
- epoc-pe-arm.c \
- epoc-pei-arm.c \
i386aout.c \
i386bsd.c \
i386dynix.c \
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-sparc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-tilegx.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elfxx-x86.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epoc-pe-arm.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/epoc-pei-arm.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/format.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hpux-core.Plo@am__quote@
continue;
/* FIXME - it is not clear which targets need this next test
and which do not. It is known that it is needed for the
- VxWorks and EPOC-PE targets, but it is also known that it
- was suppressed for other ARM targets. This ought to be
- sorted out one day. */
+ VxWorks targets but it is also known that it was suppressed
+ for other ARM targets. This ought to be sorted out one day. */
#ifdef ARM_COFF_BUGFIX
/* We must not ignore the symbol value. If the symbol is
within the same section, the relocation should have already
mips*-*-irix5* | mips*-*-irix6*)
# Not obsolete
;;
- arm-epoc-pe* | \
arm*-*-aout | \
arm*-*-coff | \
i[3-7]86-*-sco3.2v5*coff | \
*-*-rtemscoff* | \
a29k-* | \
arm-*-oabi | \
+ arm-epoc-pe* | \
h8300*-*-coff | \
h8500*-*-coff | \
hppa*-*-rtems* | \
arm-*-riscix*)
targ_defvec=arm_aout_riscix_vec
;;
- arm-epoc-pe*)
- targ_defvec=arm_pe_epoc_le_vec
- targ_selvecs="arm_pe_epoc_le_vec arm_pe_epoc_be_vec arm_pei_epoc_le_vec arm_pei_epoc_be_vec"
- targ_underscore=no
- targ_cflags=-DARM_COFF_BUGFIX
- ;;
arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*)
targ_defvec=arm_pe_wince_le_vec
targ_selvecs="arm_pe_wince_le_vec arm_pe_wince_be_vec arm_pei_wince_le_vec arm_pei_wince_be_vec"
arm_elf32_vxworks_le_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
arm_pe_be_vec) tb="$tb pe-arm.lo peigen.lo $coff" ;;
arm_pe_le_vec) tb="$tb pe-arm.lo peigen.lo $coff" ;;
- arm_pe_epoc_be_vec) tb="$tb epoc-pe-arm.lo peigen.lo $coff" ;;
- arm_pe_epoc_le_vec) tb="$tb epoc-pe-arm.lo peigen.lo $coff" ;;
arm_pe_wince_be_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo $coff" ;;
arm_pe_wince_le_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo $coff" ;;
arm_pei_be_vec) tb="$tb pei-arm.lo peigen.lo $coff" ;;
arm_pei_le_vec) tb="$tb pei-arm.lo peigen.lo $coff" ;;
- arm_pei_epoc_be_vec) tb="$tb epoc-pei-arm.lo peigen.lo $coff" ;;
- arm_pei_epoc_le_vec) tb="$tb epoc-pei-arm.lo peigen.lo $coff" ;;
arm_pei_wince_be_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo $coff" ;;
arm_pei_wince_le_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo $coff" ;;
arm_mach_o_vec) tb="$tb mach-o-arm.lo" ;;
arm_elf32_vxworks_le_vec) tb="$tb elf32-arm.lo elf32.lo elf-nacl.lo elf-vxworks.lo $elf" ;;
arm_pe_be_vec) tb="$tb pe-arm.lo peigen.lo $coff" ;;
arm_pe_le_vec) tb="$tb pe-arm.lo peigen.lo $coff" ;;
- arm_pe_epoc_be_vec) tb="$tb epoc-pe-arm.lo peigen.lo $coff" ;;
- arm_pe_epoc_le_vec) tb="$tb epoc-pe-arm.lo peigen.lo $coff" ;;
arm_pe_wince_be_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo $coff" ;;
arm_pe_wince_le_vec) tb="$tb pe-arm-wince.lo pe-arm.lo peigen.lo $coff" ;;
arm_pei_be_vec) tb="$tb pei-arm.lo peigen.lo $coff" ;;
arm_pei_le_vec) tb="$tb pei-arm.lo peigen.lo $coff" ;;
- arm_pei_epoc_be_vec) tb="$tb epoc-pei-arm.lo peigen.lo $coff" ;;
- arm_pei_epoc_le_vec) tb="$tb epoc-pei-arm.lo peigen.lo $coff" ;;
arm_pei_wince_be_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo $coff" ;;
arm_pei_wince_le_vec) tb="$tb pei-arm-wince.lo pei-arm.lo peigen.lo $coff" ;;
arm_mach_o_vec) tb="$tb mach-o-arm.lo" ;;
+++ /dev/null
-/* BFD back-end for ARM EPOC PE files.
- Copyright (C) 1999-2018 Free Software Foundation, Inc.
-
- This file is part of BFD, the Binary File Descriptor library.
-
- 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; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
- MA 02110-1301, USA. */
-
-#define TARGET_UNDERSCORE 0
-#define USER_LABEL_PREFIX ""
-
-#define TARGET_LITTLE_SYM arm_pe_epoc_le_vec
-#define TARGET_LITTLE_NAME "epoc-pe-arm-little"
-#define TARGET_BIG_SYM arm_pe_epoc_be_vec
-#define TARGET_BIG_NAME "epoc-pe-arm-big"
-
-#define bfd_arm_allocate_interworking_sections \
- bfd_arm_epoc_pe_allocate_interworking_sections
-#define bfd_arm_get_bfd_for_interworking \
- bfd_arm_epoc_pe_get_bfd_for_interworking
-#define bfd_arm_process_before_allocation \
- bfd_arm_epoc_pe_process_before_allocation
-
-#define EXTRA_S_FLAGS (SEC_LINK_ONCE | SEC_LINK_DUPLICATES | SEC_CODE | SEC_READONLY | SEC_DATA)
-
-#include "pe-arm.c"
+++ /dev/null
-/* BFD back-end for ARM EPOC PE IMAGE COFF files.
- Copyright (C) 1999-2018 Free Software Foundation, Inc.
-
- This file is part of BFD, the Binary File Descriptor library.
-
- 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; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
- MA 02110-1301, USA. */
-
-#define TARGET_UNDERSCORE 0
-#define USER_LABEL_PREFIX ""
-
-#define TARGET_LITTLE_SYM arm_pei_epoc_le_vec
-#define TARGET_LITTLE_NAME "epoc-pei-arm-little"
-#define TARGET_BIG_SYM arm_pei_epoc_be_vec
-#define TARGET_BIG_NAME "epoc-pei-arm-big"
-
-#define EXTRA_S_FLAGS (SEC_CODE | SEC_READONLY | SEC_DATA)
-
-#include "pei-arm.c"
elfxx-tilegx.c
elfxx-x86.c
elfxx-x86.c
-epoc-pe-arm.c
-epoc-pei-arm.c
format.c
freebsd.h
genlink.h
extern const bfd_target arm_mach_o_vec;
extern const bfd_target arm_pe_be_vec;
extern const bfd_target arm_pe_le_vec;
-extern const bfd_target arm_pe_epoc_be_vec;
-extern const bfd_target arm_pe_epoc_le_vec;
extern const bfd_target arm_pe_wince_be_vec;
extern const bfd_target arm_pe_wince_le_vec;
extern const bfd_target arm_pei_be_vec;
extern const bfd_target arm_pei_le_vec;
-extern const bfd_target arm_pei_epoc_be_vec;
-extern const bfd_target arm_pei_epoc_le_vec;
extern const bfd_target arm_pei_wince_be_vec;
extern const bfd_target arm_pei_wince_le_vec;
extern const bfd_target avr_elf32_vec;
&arm_mach_o_vec,
&arm_pe_be_vec,
&arm_pe_le_vec,
- &arm_pe_epoc_be_vec,
- &arm_pe_epoc_le_vec,
&arm_pe_wince_be_vec,
&arm_pe_wince_le_vec,
&arm_pei_be_vec,
&arm_pei_le_vec,
- &arm_pei_epoc_be_vec,
- &arm_pei_epoc_le_vec,
&arm_pei_wince_be_vec,
&arm_pei_wince_le_vec,
+2018-04-16 Alan Modra <amodra@gmail.com>
+
+ * configure.ac: Remove arm-epoc-pe support.
+ * dlltool.c: Likewise.
+ * configure: Regenerate.
+
2018-04-16 Alan Modra <amodra@gmail.com>
* testsuite/lib/binutils-common.exp: Remove sparc-aout and
esac
case $targ in
- arm-epoc-pe*)
- BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)'
- if test -z "$DLLTOOL_DEFAULT"; then
- DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_EPOC"
- fi
- DLLTOOL_DEFS="$DLLTOOL_DEFS -DDLLTOOL_ARM_EPOC -DDLLTOOL_ARM"
- BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)'
- BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)'
- ;;
arm-wince-pe* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*)
BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)'
if test -z "$DLLTOOL_DEFAULT"; then
esac
case $targ in
- arm-epoc-pe*)
- BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)'
- if test -z "$DLLTOOL_DEFAULT"; then
- DLLTOOL_DEFAULT="-DDLLTOOL_DEFAULT_ARM_EPOC"
- fi
- DLLTOOL_DEFS="$DLLTOOL_DEFS -DDLLTOOL_ARM_EPOC -DDLLTOOL_ARM"
- BUILD_WINDRES='$(WINDRES_PROG)$(EXEEXT)'
- BUILD_WINDMC='$(WINDMC_PROG)$(EXEEXT)'
- ;;
arm-wince-pe* | arm-*-wince | arm*-*-cegcc* | arm*-*-mingw32ce*)
BUILD_DLLTOOL='$(DLLTOOL_PROG)$(EXEEXT)'
if test -z "$DLLTOOL_DEFAULT"; then
static const char *mname = "arm";
#endif
-#ifdef DLLTOOL_DEFAULT_ARM_EPOC
-static const char *mname = "arm-epoc";
-#endif
-
#ifdef DLLTOOL_DEFAULT_ARM_WINCE
static const char *mname = "arm-wince";
#endif
}
,
{
-#define MARM_EPOC 9
- "arm-epoc", ".byte", ".short", ".long", ".asciz", "@",
- "ldr\tip,[pc]\n\tldr\tpc,[ip]\n\t.long",
- ".global", ".space", ".align\t2",".align\t4", "",
- "epoc-pe-arm-little", bfd_arch_arm,
- arm_jtab, sizeof (arm_jtab), 8,
- 0, 0, 0, 0, 0, 0
- }
- ,
- {
-#define MARM_WINCE 10
+#define MARM_WINCE 9
"arm-wince", ".byte", ".short", ".long", ".asciz", "@",
"ldr\tip,[pc]\n\tldr\tpc,[ip]\n\t.long",
".global", ".space", ".align\t2",".align\t4", "-mapcs-32",
}
,
{
-#define MX86 11
+#define MX86 10
"i386:x86-64", ".byte", ".short", ".long", ".asciz", "#",
"jmp *", ".global", ".space", ".align\t2",".align\t4", "",
"pe-x86-64",bfd_arch_i386,
case MMCORE_LE:
case MMCORE_ELF:
case MMCORE_ELF_LE:
- case MARM_EPOC:
case MARM_WINCE:
break;
default:
case MMCORE_LE:
case MMCORE_ELF:
case MMCORE_ELF_LE:
- case MARM_EPOC:
case MARM_WINCE:
return ".rva\t";
default:
case MMCORE_LE:
case MMCORE_ELF:
case MMCORE_ELF_LE:
- case MARM_EPOC:
case MARM_WINCE:
break;
case M386:
+2018-04-16 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am: Remove arm-epoc-pe support.
+ * config/tc-arm.h: Likewise.
+ * configure.tgt: Likewise.
+ * testsuite/gas/all/gas.exp: Likewise.
+ * testsuite/gas/arm/local_label_coff.d: Likewise.
+ * testsuite/gas/arm/undefined.d: Likewise.
+ * testsuite/gas/arm/undefined_coff.d: Likewise.
+ * config/te-epoc-pe.h: Delete.
+ * Makefile.in: Regenerate.
+ * po/POTFILES.in: Regenerate.
+
2018-04-16 Alan Modra <amodra@gmail.com>
* Makefile.am: Remove sparc-aout and sparc-coff support.
config/te-armfbsdvfp.h \
config/te-armlinuxeabi.h \
config/te-dynix.h \
- config/te-epoc-pe.h \
config/te-freebsd.h \
config/te-generic.h \
config/te-gnu.h \
config/te-armfbsdvfp.h \
config/te-armlinuxeabi.h \
config/te-dynix.h \
- config/te-epoc-pe.h \
config/te-freebsd.h \
config/te-generic.h \
config/te-gnu.h \
#elif defined OBJ_COFF
# define ARM_BI_ENDIAN
# if defined TE_PE
-# if defined TE_EPOC
-# define TARGET_FORMAT (target_big_endian ? "epoc-pe-arm-big" : "epoc-pe-arm-little")
-# elif defined TE_WINCE
+# if defined TE_WINCE
# define TARGET_FORMAT (target_big_endian ? "pe-arm-wince-big" : "pe-arm-wince-little")
# else
# define TARGET_FORMAT (target_big_endian ? "pe-arm-big" : "pe-arm-little")
+++ /dev/null
-/* Copyright (C) 2007-2018 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. */
-
-#define TE_PE
-#define TE_EPOC
-#define LEX_AT 1 /* can have @'s inside labels */
-
-/* The PE format supports long section names. */
-#define COFF_LONG_SECTION_NAMES
-
-#include "obj-format.h"
arm-*-netbsdelf*) fmt=elf em=nbsd ;;
arm-*-*n*bsd*) fmt=aout em=nbsd ;;
arm-*-nto*) fmt=elf ;;
- arm-epoc-pe) fmt=coff em=epoc-pe ;;
arm-wince-pe | arm-*-wince | arm*-*-mingw32ce* | arm*-*-cegcc*)
fmt=coff em=wince-pe ;;
arm-*-pe) fmt=coff em=pe ;;
config/te-armfbsdvfp.h
config/te-armlinuxeabi.h
config/te-dynix.h
-config/te-epoc-pe.h
config/te-freebsd.h
config/te-generic.h
config/te-gnu.h
{ z80-*-* } { }
default {
run_dump_test redef
- setup_xfail "arm-epoc-pe*"
# These targets fail redef2 because they disallow redefined
# symbols on relocs.
setup_xfail "m68hc1*-*-*" "m6811-*-*" "m6812-*-*" "rl78-*-*"
#name: ARM local label relocs to section symbol relocs (COFF)
# This test is only valid on COFF based targets, except Windows CE.
# There are ELF and Windows CE versions of this test.
-#not-skip: *-unknown-pe *-epoc-pe *-*-*coff
+#not-skip: *-unknown-pe *-*-*coff
# Check if relocations against local symbols are converted to
# relocations against section symbols.
#name: Undefined local label error
# COFF and aout based ports, except Windows CE,
# use a different naming convention for local labels.
-#skip: *-*-*coff *-unknown-pe *-epoc-pe *-*-*aout* *-*-netbsd *-*-riscix* *-*-vxworks
+#skip: *-*-*coff *-unknown-pe *-*-*aout* *-*-netbsd *-*-riscix* *-*-vxworks
#error-output: undefined.l
#name: Undefined local label error
# COFF and aout based ports, except Windows CE,
# use a different naming convention for local labels.
-#not-skip: *-*-*coff *-unknown-pe *-epoc-pe *-*-*aout* *-*-netbsd *-*-riscix*
+#not-skip: *-*-*coff *-unknown-pe *-*-*aout* *-*-netbsd *-*-riscix*
#error-output: undefined_coff.l
+2018-04-16 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am: Remove arm-epoc-pe support.
+ * configure.tgt: Likewise.
+ * emultempl/pe.em: Likewise.
+ * pe-dll.c: Likewise.
+ * testsuite/ld-scripts/fill.d: Likewise.
+ * testsuite/ld-scripts/fill16.d: Likewise.
+ * emulparams/arm_epoc_pe.sh: Delete.
+ * scripttempl/epocpe.sc: Delete.
+ * Makefile.in: Regenerate.
+ * po/BLD-POTFILES.in: Regenerate.
+
2018-04-16 Alan Modra <amodra@gmail.com>
* Makefile.am: Remove sparc-aout and sparc-coff support.
earclinux.c \
earclinux_nps.c \
earclinux_prof.c \
- earm_epoc_pe.c \
earm_wince_pe.c \
earmaoutb.c \
earmaoutl.c \
$(ELF_DEPS) $(srcdir)/emultempl/arclinux.em \
$(srcdir)/scripttempl/arclinux.sc ${GEN_DEPENDS}
-earm_epoc_pe.c: $(srcdir)/emulparams/arm_epoc_pe.sh \
- $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/epocpe.sc ${GEN_DEPENDS}
-
earm_wince_pe.c: $(srcdir)/emulparams/arm_wince_pe.sh \
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
earclinux.c \
earclinux_nps.c \
earclinux_prof.c \
- earm_epoc_pe.c \
earm_wince_pe.c \
earmaoutb.c \
earmaoutl.c \
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earclinux_prof.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earcv2elf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earcv2elfx.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earm_epoc_pe.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earm_wince_pe.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmaoutb.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmaoutl.Po@am__quote@
$(ELF_DEPS) $(srcdir)/emultempl/arclinux.em \
$(srcdir)/scripttempl/arclinux.sc ${GEN_DEPENDS}
-earm_epoc_pe.c: $(srcdir)/emulparams/arm_epoc_pe.sh \
- $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/epocpe.sc ${GEN_DEPENDS}
-
earm_wince_pe.c: $(srcdir)/emulparams/arm_wince_pe.sh \
$(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/pe.sc ${GEN_DEPENDS}
esac
targ_extra_emuls="${targ_extra_emuls} arclinux_prof arcelf arcelf_prof arcv2elf arcv2elfx"
;;
-arm-epoc-pe) targ_emul=arm_epoc_pe ; targ_extra_ofiles="deffilep.o pe-dll.o" ;;
arm*-*-cegcc*) targ_emul=arm_wince_pe ; targ_extra_ofiles="deffilep.o pe-dll.o"
LIB_PATH='${tooldir}/lib/w32api' ;;
arm-wince-pe | arm-*-wince | arm*-*-mingw32ce*)
+++ /dev/null
-ARCH=arm
-SCRIPT_NAME=epocpe
-OUTPUT_FORMAT="epoc-pei-arm-little"
-LITTLE_OUTPUT_FORMAT="epoc-pei-arm-little"
-BIG_OUTPUT_FORMAT="epoc-pei-arm-big"
-TEMPLATE_NAME=pe
-SUBSYSTEM=PE_DEF_SUBSYSTEM
-INITIAL_SYMBOL_CHAR=\"_\"
-TARGET_PAGE_SIZE=0x1000
/* Do this before including bfd.h, so we prototype the right functions. */
#if defined(TARGET_IS_armpe) \
- || defined(TARGET_IS_arm_epoc_pe) \
|| defined(TARGET_IS_arm_wince_pe)
#define bfd_arm_allocate_interworking_sections \
bfd_${EMULATION_NAME}_allocate_interworking_sections
#if defined(TARGET_IS_i386pe) \
|| defined(TARGET_IS_shpe) \
|| defined(TARGET_IS_armpe) \
- || defined(TARGET_IS_arm_epoc_pe) \
|| defined(TARGET_IS_arm_wince_pe)
#define DLL_SUPPORT
#endif
#if defined (TARGET_IS_i386pe) \
|| defined (TARGET_IS_armpe) \
- || defined (TARGET_IS_arm_epoc_pe) \
|| defined (TARGET_IS_arm_wince_pe)
if (!bfd_link_relocatable (&link_info))
pe_dll_build_sections (link_info.output_bfd, &link_info);
#endif
#endif /* DLL_SUPPORT */
-#if defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_epoc_pe) || defined(TARGET_IS_arm_wince_pe)
+#if defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_wince_pe)
if (strstr (bfd_get_target (link_info.output_bfd), "arm") == NULL)
{
/* The arm backend needs special fields in the output hash structure.
ppc_allocate_toc_section (&link_info);
#endif /* TARGET_IS_ppcpe */
-#if defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_epoc_pe) || defined(TARGET_IS_arm_wince_pe)
+#if defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_wince_pe)
/* FIXME: we should be able to set the size of the interworking stub
section.
/* We have seen it all. Allocate it, and carry on. */
bfd_arm_allocate_interworking_sections (& link_info);
-#endif /* TARGET_IS_armpe || TARGET_IS_arm_epoc_pe || TARGET_IS_arm_wince_pe */
+#endif /* TARGET_IS_armpe || TARGET_IS_arm_wince_pe */
before_allocation_default ();
}
#ifdef TARGET_IS_armpe
pe_dll_id_target ("pei-arm-little");
#endif
-#ifdef TARGET_IS_arm_epoc_pe
- pe_dll_id_target ("epoc-pei-arm-little");
-#endif
#ifdef TARGET_IS_arm_wince_pe
pe_dll_id_target ("pei-arm-wince-little");
#endif
static void
gld_${EMULATION_NAME}_finish (void)
{
-#if defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_epoc_pe) || defined(TARGET_IS_arm_wince_pe)
+#if defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_wince_pe)
struct bfd_link_hash_entry * h;
if (thumb_entry_symbol != NULL)
else
einfo (_("%P: warning: cannot find thumb start symbol %s\n"), thumb_entry_symbol);
}
-#endif /* defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_epoc_pe) || defined(TARGET_IS_arm_wince_pe) */
+#endif /* defined(TARGET_IS_armpe) || defined(TARGET_IS_arm_wince_pe) */
finish_default ();
#define PE_ARCH_sh 2
#define PE_ARCH_mips 3
#define PE_ARCH_arm 4
-#define PE_ARCH_arm_epoc 5
-#define PE_ARCH_arm_wince 6
+#define PE_ARCH_arm_wince 5
/* Don't make it constant as underscore mode gets possibly overriden
by target or -(no-)leading-underscore option. */
TRUE,
autofilter_symbollist_generic
},
- {
- "epoc-pei-arm-little",
- "epoc-pe-arm-little",
- 11 /* ARM_RVA32 */,
- PE_ARCH_arm_epoc,
- bfd_arch_arm,
- FALSE,
- autofilter_symbollist_generic
- },
{
"pei-arm-wince-little",
"pe-arm-wince-little",
jmp_byte_count = sizeof (jmp_mips_bytes);
break;
case PE_ARCH_arm:
- case PE_ARCH_arm_epoc:
case PE_ARCH_arm_wince:
jmp_bytes = jmp_arm_bytes;
jmp_byte_count = sizeof (jmp_arm_bytes);
quick_reloc (abfd, 4, BFD_RELOC_LO16, 2);
break;
case PE_ARCH_arm:
- case PE_ARCH_arm_epoc:
case PE_ARCH_arm_wince:
quick_reloc (abfd, 8, BFD_RELOC_32, 2);
break;
earclinux_prof.c
earcv2elf.c
earcv2elfx.c
-earm_epoc_pe.c
earm_wince_pe.c
earmaoutb.c
earmaoutl.c
+++ /dev/null
-# Linker script for PE.
-#
-# Copyright (C) 2014-2018 Free Software Foundation, Inc.
-#
-# Copying and distribution of this file, with or without modification,
-# are permitted in any medium without royalty provided the copyright
-# notice and this notice are preserved.
-
-if test -z "${RELOCATEABLE_OUTPUT_FORMAT}"; then
- RELOCATEABLE_OUTPUT_FORMAT=${OUTPUT_FORMAT}
-fi
-
-# We can't easily and portably get an unquoted $ in a shell
-# substitution, so we do this instead.
-# Sorting of the .foo$* sections is required by the definition of
-# grouped sections in PE.
-# Sorting of the file names in R_IDATA is required by the
-# current implementation of dlltool (this could probably be changed to
-# use grouped sections instead).
-if test "${RELOCATING}"; then
- R_TEXT='*(SORT(.text$*))'
- R_DATA='*(SORT(.data$*))'
- R_RDATA='*(SORT(.rdata$*))'
- R_IDATA='
- SORT(*)(.idata$2)
- SORT(*)(.idata$3)
- /* These zeroes mark the end of the import list. */
- LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);
- SORT(*)(.idata$4)
- SORT(*)(.idata$5)
- SORT(*)(.idata$6)
- SORT(*)(.idata$7)'
- R_CRT='*(SORT(.CRT$*))'
- R_RSRC='*(SORT(.rsrc$*))'
-else
- R_TEXT=
- R_DATA=
- R_RDATA=
- R_IDATA=
- R_CRT=
- R_RSRC=
-fi
-
-cat <<EOF
-/* Copyright (C) 2014-2018 Free Software Foundation, Inc.
-
- Copying and distribution of this script, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. */
-
-${RELOCATING+OUTPUT_FORMAT(${OUTPUT_FORMAT})}
-${RELOCATING-OUTPUT_FORMAT(${RELOCATEABLE_OUTPUT_FORMAT})}
-
-${LIB_SEARCH_DIRS}
-
-${RELOCATING+ENTRY (_mainCRTStartup)}
-
-SECTIONS
-{
- .text ${RELOCATING+ __image_base__ + __section_alignment__ } :
- {
- ${RELOCATING+ *(.init)}
- *(.text)
- ${R_TEXT}
- *(.glue_7t)
- *(.glue_7)
- ${RELOCATING+ *(.text.*)}
- ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ;
- LONG (-1); *(.ctors); *(.ctor); LONG (0); }
- ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ;
- LONG (-1); *(.dtors); *(.dtor); LONG (0); }
- ${RELOCATING+ *(.fini)}
- /* ??? Why is .gcc_exc here? */
- ${RELOCATING+ *(.gcc_exc)}
- ${RELOCATING+ etext = .;}
- *(.gcc_except_table)
-
- /* For EPOC the read only data is located at the end of the .text
- section */
- *(.rdata)
- ${R_RDATA}
- *(.eh_frame)
- }
-
- /* The Cygwin32 library uses a section to avoid copying certain data
- on fork. This used to be named ".data$nocopy". The linker used
- to include this between __data_start__ and __data_end__, but that
- breaks building the cygwin32 dll. Instead, we name the section
- ".data_cygwin_nocopy" and explicitly include it after __data_end__. */
-
- .data ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- ${RELOCATING+__data_start__ = . ;}
- *(.data)
- *(.data2)
- ${R_DATA}
- ${RELOCATING+__data_end__ = . ;}
- ${RELOCATING+*(.data_cygwin_nocopy)}
- }
-
- .bss ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- ${RELOCATING+__bss_start__ = . ;}
- *(.bss)
- *(COMMON)
- ${RELOCATING+__bss_end__ = . ;}
- }
-
- .edata ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- *(.edata)
- }
-
- /DISCARD/ :
- {
- *(.debug\$S)
- *(.debug\$T)
- *(.debug\$F)
- *(.drectve)
- }
-
- .idata ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- /* This cannot currently be handled with grouped sections.
- See pe.em:sort_sections. */
- ${R_IDATA}
- }
-
- .CRT ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- ${R_CRT}
- }
-
- .endjunk ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- /* end is deprecated, don't use it */
- ${RELOCATING+ end = .;}
- ${RELOCATING+ _end = .;}
- ${RELOCATING+ __end__ = .;}
- }
-
- .reloc ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- *(.reloc)
- }
-
- .rsrc ${RELOCATING+BLOCK(__section_alignment__)} :
- {
- *(.rsrc)
- ${R_RSRC}
- }
-
- .stab ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} :
- {
- [ .stab ]
- }
-
- .stabstr ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} :
- {
- [ .stabstr ]
- }
-
-}
-EOF
#notarget: tilepro-*-*
#notarget: x86_64-*-cygwin x86_64-*-mingw* x86_64-*-pe*
#xfail: alpha*-*-*ecoff
-#xfail: arm-epoc-pe
#xfail: m32c-*-*
#xfail: sh-*-pe
#xfail: sparc*-*-coff
# configurations are listed above.
#
# alpha-linuxecoff pads out code to 16 bytes.
-# arm-epoc-pe always pads out code to 512 bytes.
# ia64 aligns code to minimum 16 bytes.
# m32c pads out code sections with 4 NOPs (see `m32c_md_end').
# mips aligns to minimum 16 bytes (except for bare-metal ELF and VxWorks).
#notarget: arm-*-coff
#notarget: i[3-7]86-*-coff
#xfail: alpha*-*-*ecoff
-#xfail: arm-epoc-pe
#xfail: m32c-*-*
#xfail: sh-*-pe
#xfail: sparc*-*-coff
# configurations are listed above.
#
# alpha-linuxecoff pads out code to 16 bytes.
-# arm-epoc-pe always pads out code to 512 bytes.
# arm-coff always aligns code to 4 bytes.
# i386-coff always aligns code to 4 bytes.
# m32c pads out code sections with 4 NOPs (see `m32c_md_end').