diff options
author | Kuba Sejdak <jakub.sejdak@phoesys.com> | 2016-05-23 13:53:07 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2016-05-23 13:53:07 +0100 |
commit | a2bea3245ecf4ff67f923c85adf57aa78423eb45 (patch) | |
tree | 1275f4e75e5489a5d1ffc040b36106e92b30bdd2 /ld | |
parent | d0571b9934241e58a5325fc6e09298d0e3396280 (diff) | |
download | binutils-a2bea3245ecf4ff67f923c85adf57aa78423eb45.zip binutils-a2bea3245ecf4ff67f923c85adf57aa78423eb45.tar.gz binutils-a2bea3245ecf4ff67f923c85adf57aa78423eb45.tar.bz2 |
Add support for configuring for the ARM Phoenix target.
bfd * config.bfd: Add entry for arm-phoenix.
gas * configuse.tgt: Add entry for arm-phoenix.
ld * Makefile.am: Add earmelf_phoenix.c.
* Makefile.in: Regenerate.
* configure.tgt: Add entry for arm-phoenix.
* emulparams/armelf_phoenix.sh: New file.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 7 | ||||
-rw-r--r-- | ld/Makefile.am | 5 | ||||
-rw-r--r-- | ld/Makefile.in | 6 | ||||
-rw-r--r-- | ld/configure.tgt | 1 | ||||
-rw-r--r-- | ld/emulparams/armelf_phoenix.sh | 24 |
5 files changed, 43 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 7f8d690..6509f33 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2016-05-23 Kuba Sejdak <jakub.sejdak@phoesys.com> + + * Makefile.am: Add earmelf_phoenix.c. + * Makefile.in: Regenerate. + * configure.tgt: Add entry for arm-phoenix. + * emulparams/armelf_phoenix.sh: New file. + 2016-05-23 Thomas Preud'homme <thomas.preudhomme@arm.com> * emultempl/armelf.em (arm_elf_before_allocation): Call diff --git a/ld/Makefile.am b/ld/Makefile.am index 1c03e7b..0598923 100644 --- a/ld/Makefile.am +++ b/ld/Makefile.am @@ -179,6 +179,7 @@ ALL_EMULATION_SOURCES = \ earmelf_linux_eabi.c \ earmelf_nacl.c \ earmelf_nbsd.c \ + earmelf_phoenix.c \ earmelf_vxworks.c \ earmelfb.c \ earmelfb_fbsd.c \ @@ -777,6 +778,10 @@ earmelf_nbsd.c: $(srcdir)/emulparams/armelf_nbsd.sh \ $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} +earmelf_phoenix.c: $(srcdir)/emulparams/armelf_phoenix.sh \ + $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ + $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + earmelf_vxworks.c: $(srcdir)/emulparams/armelf_vxworks.sh \ $(srcdir)/emulparams/vxworks.sh $(srcdir)/emulparams/armelf.sh \ $(ELF_DEPS) $(srcdir)/emultempl/vxworks.em \ diff --git a/ld/Makefile.in b/ld/Makefile.in index 37e9e2f..7c78198 100644 --- a/ld/Makefile.in +++ b/ld/Makefile.in @@ -547,6 +547,7 @@ ALL_EMULATION_SOURCES = \ earmelf_linux_eabi.c \ earmelf_nacl.c \ earmelf_nbsd.c \ + earmelf_phoenix.c \ earmelf_vxworks.c \ earmelfb.c \ earmelfb_fbsd.c \ @@ -1183,6 +1184,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_linux_eabi.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_nacl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_nbsd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_phoenix.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelf_vxworks.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelfb.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/earmelfb_fbsd.Po@am__quote@ @@ -2364,6 +2366,10 @@ earmelf_nbsd.c: $(srcdir)/emulparams/armelf_nbsd.sh \ $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} +earmelf_phoenix.c: $(srcdir)/emulparams/armelf_phoenix.sh \ + $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ + $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + earmelf_vxworks.c: $(srcdir)/emulparams/armelf_vxworks.sh \ $(srcdir)/emulparams/vxworks.sh $(srcdir)/emulparams/armelf.sh \ $(ELF_DEPS) $(srcdir)/emultempl/vxworks.em \ diff --git a/ld/configure.tgt b/ld/configure.tgt index d68e3a9..0b7637b 100644 --- a/ld/configure.tgt +++ b/ld/configure.tgt @@ -103,6 +103,7 @@ arm-*-netbsd*) targ_emul=armnbsd; targ_extra_emuls="armelf armelf_nbsd armelfb_nbsd" ;; arm-*-nto*) targ_emul=armnto ;; arm-*-openbsd*) targ_emul=armnbsd ;; +arm-*-phoenix*) targ_emul=armelf ;; arm-*-rtems*) targ_emul=armelf ;; armeb-*-elf | armeb-*-eabi*) targ_emul=armelfb ;; diff --git a/ld/emulparams/armelf_phoenix.sh b/ld/emulparams/armelf_phoenix.sh new file mode 100644 index 0000000..d78edaf --- /dev/null +++ b/ld/emulparams/armelf_phoenix.sh @@ -0,0 +1,24 @@ +ARCH=arm +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlearm" +BIG_OUTPUT_FORMAT="elf32-bigarm" +LITTLE_OUTPUT_FORMAT="elf32-littlearm" +MAXPAGESIZE="CONSTANT (MAXPAGESIZE)" +COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)" +TEMPLATE_NAME=elf32 +EXTRA_EM_FILE=armelf +GENERATE_SHLIB_SCRIPT=yes +GENERATE_PIE_SCRIPT=yes + +DATA_START_SYMBOLS='PROVIDE (__data_start = .);'; +OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7) *(.vfp11_veneer) *(.v4_bx)' +OTHER_BSS_SYMBOLS='__bss_start__ = .;' +OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;' +OTHER_END_SYMBOLS='__end__ = . ;' +OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }' + +TEXT_START_ADDR=0x00001000 +TARGET2_TYPE=got-rel + +# ARM does not support .s* sections. +NO_SMALL_DATA=yes |