This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Add support for Phoenix-RTOS on ARM.


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
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]