public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
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

             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).