This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Add support for Phoenix-RTOS on ARM.
- From: Jakub Sejdak <jakub dot sejdak at phoesys dot com>
- To: binutils at sourceware dot org
- Cc: gdb-patches at sourceware dot org, Kuba Sejdak <jakub dot sejdak at phoesys dot com>
- Date: Thu, 12 May 2016 11:21:11 +0200
- Subject: Re: [PATCH] Add support for Phoenix-RTOS on ARM.
- Authentication-results: sourceware.org; auth=none
- References: <1463044658-19231-1-git-send-email-jakub dot sejdak at phoesys dot com>
Please regenerate configure files and import config.sub from GNU
config, as this patch depends on it.
I didn't write a changelog entry, because I don't know who is allowed
to do it: patch sender or global maintainters.
2016-05-12 11:17 GMT+02:00 Jakub Sejdak <jakub.sejdak@phoesys.com>:
> 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
>