From: Jakub Sejdak <jakub.sejdak@phoesys.com>
To: binutils@sourceware.org
Cc: gdb-patches@sourceware.org, Kuba Sejdak <jakub.sejdak@phoesys.com>
Subject: [PATCH] Add support for Phoenix-RTOS on ARM.
Date: Thu, 12 May 2016 09:17:00 -0000 [thread overview]
Message-ID: <1463044658-19231-1-git-send-email-jakub.sejdak@phoesys.com> (raw)
From: Kuba Sejdak <jakub.sejdak@phoesys.com>
---
bfd/config.bfd | 4 ++++
gas/configure.tgt | 1 +
ld/Makefile.am | 5 +++++
ld/configure.tgt | 1 +
ld/emulparams/armelf_phoenix.sh | 24 ++++++++++++++++++++++++
5 files changed, 35 insertions(+)
create mode 100644 ld/emulparams/armelf_phoenix.sh
diff --git a/bfd/config.bfd b/bfd/config.bfd
index 7c4eece..4e53304 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -349,6 +349,10 @@ case "${targ}" in
targ_selvecs=arm_coff_be_vec
targ_underscore=yes
;;
+ arm-*-phoenix*)
+ targ_defvec=arm_elf32_le_vec
+ targ_selvecs=arm_elf32_be_vec
+ ;;
arm-*-rtems*)
targ_defvec=arm_elf32_le_vec
targ_selvecs=arm_elf32_be_vec
diff --git a/gas/configure.tgt b/gas/configure.tgt
index 75470e4..4e0d4aa 100644
--- a/gas/configure.tgt
+++ b/gas/configure.tgt
@@ -135,6 +135,7 @@ case ${generic_target} in
arm-*-aout) fmt=aout ;;
arm-*-coff) fmt=coff ;;
+ arm-*-phoenix*) fmt=elf ;;
arm-*-rtems*) fmt=elf ;;
arm-*-elf) fmt=elf ;;
arm-*-eabi*) fmt=elf em=armeabi ;;
diff --git a/ld/Makefile.am b/ld/Makefile.am
index bf50e70..9d740d4 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/configure.tgt b/ld/configure.tgt
index 1f6db42..88c97cb 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
--
2.7.4
next reply other threads:[~2016-05-12 9:17 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-12 9:17 Jakub Sejdak [this message]
2016-05-12 9:21 ` Jakub Sejdak
2016-05-12 13:33 ` Yao Qi
2016-05-19 7:29 ` Jakub Sejdak
2016-05-19 13:16 ` Yao Qi
2016-05-23 10:41 ` Sync config.[guess|sub] from FSF GCC mainline Nick Clifton
2016-05-27 13:06 ` Maciej W. Rozycki
2016-05-23 12:56 ` [PATCH] Add support for Phoenix-RTOS on ARM Nick Clifton
2016-05-23 13:55 ` Jakub Sejdak
2016-05-24 9:45 ` Nick Clifton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1463044658-19231-1-git-send-email-jakub.sejdak@phoesys.com \
--to=jakub.sejdak@phoesys.com \
--cc=binutils@sourceware.org \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).