[v3,4/4] aarch64: add aarch64-phoenix target

Message ID 20260316110746.1718-4-michal.lach@phoenix-rtos.com
State New
Headers
Series [v3,1/4] ld: use armelf_phoenix emul for arm-*-phoenix targets |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_binutils_build--master-arm success Build passed
linaro-tcwg-bot/tcwg_binutils_build--master-aarch64 success Build passed
linaro-tcwg-bot/tcwg_binutils_check--master-aarch64 success Test passed
linaro-tcwg-bot/tcwg_binutils_check--master-arm success Test passed

Commit Message

Michal Lach March 16, 2026, 11:07 a.m. UTC
  From: Michał Lach <michal.lach@phoenix-rtos.com>

Adds aarch64-phoenix target from downstream Phoenix-RTOS patches.

Co-authored-by: Hubert Badocha <hubert.badocha@phoenix-rtos.com>
Signed-off-by: Michal Lach <michal.lach@phoenix-rtos.com>
---
 bfd/config.bfd    | 12 +-----------
 gas/configure.tgt |  1 +
 ld/configure.tgt  |  3 ++-
 3 files changed, 4 insertions(+), 12 deletions(-)
  

Comments

Richard Earnshaw (foss) March 16, 2026, 4:14 p.m. UTC | #1
On 16/03/2026 11:07, Michal Lach wrote:
> From: Michał Lach <michal.lach@phoenix-rtos.com>
> 
> Adds aarch64-phoenix target from downstream Phoenix-RTOS patches.
> 

LGTM

R.

> Co-authored-by: Hubert Badocha <hubert.badocha@phoenix-rtos.com>
> Signed-off-by: Michal Lach <michal.lach@phoenix-rtos.com>
> ---
>   bfd/config.bfd    | 12 +-----------
>   gas/configure.tgt |  1 +
>   ld/configure.tgt  |  3 ++-
>   3 files changed, 4 insertions(+), 12 deletions(-)
> 
> diff --git a/bfd/config.bfd b/bfd/config.bfd
> index d0dc17589fd..ce91a3fe044 100644
> --- a/bfd/config.bfd
> +++ b/bfd/config.bfd
> @@ -265,17 +265,7 @@ case "${targ}" in
>       targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec"
>       want64=true
>       ;;
> -  aarch64-*-freebsd*)
> -    targ_defvec=aarch64_elf64_le_vec
> -    targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
> -    want64=true
> -    ;;
> -  aarch64-*-openbsd*)
> -    targ_defvec=aarch64_elf64_le_vec
> -    targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
> -    want64=true
> -    ;;
> -  aarch64-*-fuchsia*)
> +  aarch64-*-freebsd* | aarch64-*-openbsd* | aarch64-*-fuchsia* | aarch64-*-phoenix*)
>       targ_defvec=aarch64_elf64_le_vec
>       targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
>       want64=true
> diff --git a/gas/configure.tgt b/gas/configure.tgt
> index dbec23b0390..7a5645fd9ae 100644
> --- a/gas/configure.tgt
> +++ b/gas/configure.tgt
> @@ -138,6 +138,7 @@ case ${generic_target} in
>     aarch64*-*-netbsd*)			fmt=elf em=nbsd;;
>     aarch64*-*-nto*)			fmt=elf;;
>     aarch64*-*-openbsd*)			fmt=elf;;
> +  aarch64*-*-phoenix*)			fmt=elf;;
>     aarch64*-*-pe* | aarch64*-*-mingw*)	fmt=coff em=pepaarch64 ;;
>     alpha-*-*vms*)			fmt=evax ;;
>     alpha-*-osf*)				fmt=ecoff ;;
> diff --git a/ld/configure.tgt b/ld/configure.tgt
> index ab38c35e790..f8f7af1b4aa 100644
> --- a/ld/configure.tgt
> +++ b/ld/configure.tgt
> @@ -92,7 +92,8 @@ aarch64-*-elf | aarch64-*-rtems* | aarch64-*-genode*)
>   aarch64-*-freebsd*)	targ_emul=aarch64fbsd
>   			targ_extra_emuls="aarch64fbsdb aarch64elf"
>   			;;
> -aarch64-*-fuchsia*)	targ_emul=aarch64elf
> +aarch64-*-fuchsia* | aarch64-*-phoenix*)
> +			targ_emul=aarch64elf
>   			targ_extra_emuls="aarch64elfb armelf armelfb"
>   			;;
>   aarch64_be-*-linux-gnu_ilp32)
  

Patch

diff --git a/bfd/config.bfd b/bfd/config.bfd
index d0dc17589fd..ce91a3fe044 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -265,17 +265,7 @@  case "${targ}" in
     targ_selvecs="aarch64_elf64_le_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_be_vec arm_elf32_le_vec"
     want64=true
     ;;
-  aarch64-*-freebsd*)
-    targ_defvec=aarch64_elf64_le_vec
-    targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
-    want64=true
-    ;;
-  aarch64-*-openbsd*)
-    targ_defvec=aarch64_elf64_le_vec
-    targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
-    want64=true
-    ;;
-  aarch64-*-fuchsia*)
+  aarch64-*-freebsd* | aarch64-*-openbsd* | aarch64-*-fuchsia* | aarch64-*-phoenix*)
     targ_defvec=aarch64_elf64_le_vec
     targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
     want64=true
diff --git a/gas/configure.tgt b/gas/configure.tgt
index dbec23b0390..7a5645fd9ae 100644
--- a/gas/configure.tgt
+++ b/gas/configure.tgt
@@ -138,6 +138,7 @@  case ${generic_target} in
   aarch64*-*-netbsd*)			fmt=elf em=nbsd;;
   aarch64*-*-nto*)			fmt=elf;;
   aarch64*-*-openbsd*)			fmt=elf;;
+  aarch64*-*-phoenix*)			fmt=elf;;
   aarch64*-*-pe* | aarch64*-*-mingw*)	fmt=coff em=pepaarch64 ;;
   alpha-*-*vms*)			fmt=evax ;;
   alpha-*-osf*)				fmt=ecoff ;;
diff --git a/ld/configure.tgt b/ld/configure.tgt
index ab38c35e790..f8f7af1b4aa 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -92,7 +92,8 @@  aarch64-*-elf | aarch64-*-rtems* | aarch64-*-genode*)
 aarch64-*-freebsd*)	targ_emul=aarch64fbsd
 			targ_extra_emuls="aarch64fbsdb aarch64elf"
 			;;
-aarch64-*-fuchsia*)	targ_emul=aarch64elf
+aarch64-*-fuchsia* | aarch64-*-phoenix*)
+			targ_emul=aarch64elf
 			targ_extra_emuls="aarch64elfb armelf armelfb"
 			;;
 aarch64_be-*-linux-gnu_ilp32)