mips*-*-irix5* | mips*-*-irix6*)
# Not obsolete
;;
- *-adobe-* | \
*-*-beos* | \
- *-go32-rtems* | \
- *-sony-* | \
- *-tandem-* | \
+ *-*-cloudabi* | \
*-*-ieee* | \
*-*-nacl* | \
*-*-netbsdpe* | \
*-*-netware* | \
*-*-rtemsaout* | \
*-*-rtemscoff* | \
+ *-adobe-* | \
+ *-go32-rtems* | \
+ *-sony-* | \
+ *-tandem-* | \
a29k-* | \
arm*-*-aout | \
arm-*-coff | \
targ_selvecs="aarch64_elf64_be_vec arm_elf32_le_vec arm_elf32_be_vec"
want64=true
;;
- aarch64-*-cloudabi*)
- targ_defvec=aarch64_elf64_le_cloudabi_vec
- targ_selvecs=aarch64_elf64_be_cloudabi_vec
- want64=true
- ;;
aarch64-*-haiku*)
targ_defvec=aarch64_elf64_le_vec
targ_selvecs="aarch64_elf64_be_vec aarch64_elf32_le_vec aarch64_elf32_be_vec arm_elf32_le_vec arm_elf32_be_vec"
targ64_selvecs=x86_64_elf64_vec
;;
#ifdef BFD64
- x86_64-*-cloudabi*)
- targ_defvec=x86_64_elf64_cloudabi_vec
- want64=true
- ;;
x86_64-*-darwin*)
targ_defvec=x86_64_mach_o_vec
targ_selvecs="i386_mach_o_vec mach_o_le_vec mach_o_be_vec mach_o_fat_vec pef_vec pef_xlib_vec sym_vec"
aarch64_elf32_be_vec) tb="$tb elf32-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
aarch64_elf32_le_vec) tb="$tb elf32-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
aarch64_elf64_be_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
- aarch64_elf64_be_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
aarch64_elf64_le_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
- aarch64_elf64_le_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
aarch64_mach_o_vec) tb="$tb mach-o-aarch64.lo"; target_size=64 ;;
aarch64_pei_le_vec) tb="$tb pei-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
aarch64_pe_le_vec) tb="$tb pe-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;;
x86_64_elf32_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo elf32.lo $elf"; target_size=64 ;;
x86_64_elf64_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
- x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
x86_64_mach_o_vec) tb="$tb mach-o-x86-64.lo" ;;
aarch64_elf32_be_vec) tb="$tb elf32-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
aarch64_elf32_le_vec) tb="$tb elf32-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf32.lo $elf"; target_size=64 ;;
aarch64_elf64_be_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
- aarch64_elf64_be_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
aarch64_elf64_le_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
- aarch64_elf64_le_cloudabi_vec) tb="$tb elf64-aarch64.lo elfxx-aarch64.lo elf-ifunc.lo elf64.lo $elf"; target_size=64 ;;
aarch64_mach_o_vec) tb="$tb mach-o-aarch64.lo"; target_size=64 ;;
aarch64_pei_le_vec) tb="$tb pei-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
aarch64_pe_le_vec) tb="$tb pe-aarch64.lo pe-aarch64igen.lo $coff"; target_size=64 ;;
x86_64_coff_vec) tb="$tb coff-x86_64.lo $coff"; target_size=64 ;;
x86_64_elf32_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo elf32.lo $elf"; target_size=64 ;;
x86_64_elf64_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
- x86_64_elf64_cloudabi_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
x86_64_elf64_fbsd_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
x86_64_elf64_sol2_vec) tb="$tb elf64-x86-64.lo $elfxx_x86 elf64.lo $elf"; target_size=64 ;;
x86_64_mach_o_vec) tb="$tb mach-o-x86-64.lo" ;;
#include "elf64-target.h"
-/* CloudABI support. */
-
-#undef TARGET_LITTLE_SYM
-#define TARGET_LITTLE_SYM x86_64_elf64_cloudabi_vec
-#undef TARGET_LITTLE_NAME
-#define TARGET_LITTLE_NAME "elf64-x86-64-cloudabi"
-
-#undef ELF_OSABI
-#define ELF_OSABI ELFOSABI_CLOUDABI
-
-#undef elf64_bed
-#define elf64_bed elf64_x86_64_cloudabi_bed
-
-#include "elf64-target.h"
-
/* FreeBSD support. */
#undef TARGET_LITTLE_SYM
#define elf_backend_obj_attrs_section SEC_AARCH64_ATTRIBUTES
#include "elfNN-target.h"
-
-/* CloudABI support. */
-
-#undef TARGET_LITTLE_SYM
-#define TARGET_LITTLE_SYM aarch64_elfNN_le_cloudabi_vec
-#undef TARGET_LITTLE_NAME
-#define TARGET_LITTLE_NAME "elfNN-littleaarch64-cloudabi"
-#undef TARGET_BIG_SYM
-#define TARGET_BIG_SYM aarch64_elfNN_be_cloudabi_vec
-#undef TARGET_BIG_NAME
-#define TARGET_BIG_NAME "elfNN-bigaarch64-cloudabi"
-
-#undef ELF_OSABI
-#define ELF_OSABI ELFOSABI_CLOUDABI
-
-#undef elfNN_bed
-#define elfNN_bed elfNN_aarch64_cloudabi_bed
-
-#include "elfNN-target.h"
extern const bfd_target aarch64_elf32_be_vec;
extern const bfd_target aarch64_elf32_le_vec;
extern const bfd_target aarch64_elf64_be_vec;
-extern const bfd_target aarch64_elf64_be_cloudabi_vec;
extern const bfd_target aarch64_elf64_le_vec;
-extern const bfd_target aarch64_elf64_le_cloudabi_vec;
extern const bfd_target aarch64_mach_o_vec;
extern const bfd_target aarch64_pei_le_vec;
extern const bfd_target aarch64_pe_le_vec;
extern const bfd_target x86_64_coff_vec;
extern const bfd_target x86_64_elf32_vec;
extern const bfd_target x86_64_elf64_vec;
-extern const bfd_target x86_64_elf64_cloudabi_vec;
extern const bfd_target x86_64_elf64_fbsd_vec;
extern const bfd_target x86_64_elf64_sol2_vec;
extern const bfd_target x86_64_mach_o_vec;
&aarch64_elf32_be_vec,
&aarch64_elf32_le_vec,
&aarch64_elf64_be_vec,
- &aarch64_elf64_be_cloudabi_vec,
&aarch64_elf64_le_vec,
- &aarch64_elf64_le_cloudabi_vec,
&aarch64_mach_o_vec,
&aarch64_pe_le_vec,
&aarch64_pei_le_vec,
&x86_64_coff_vec,
&x86_64_elf32_vec,
&x86_64_elf64_vec,
- &x86_64_elf64_cloudabi_vec,
&x86_64_elf64_fbsd_vec,
&x86_64_elf64_sol2_vec,
&x86_64_mach_o_vec,
setup_xfail "msp430*-*-*"
setup_xfail "kvx*-*-*"
setup_xfail "visium*-*-*"
- setup_xfail "x86_64-*-cloudabi*"
set testname "nm --ifunc-chars"
if {![binutils_assemble $srcdir/$subdir/ifunc.s tmpdir/ifunc.o]} then {
# && ![istarget *-*-windiss*]
if { ![istarget *-*-chorus*]
- && ![istarget *-*-cloudabi*]
&& ![istarget *-*-eabi*]
&& ![istarget *-*-*elf*]
&& ![istarget *-*-*freebsd*]
const char *
elf64_aarch64_target_format (void)
{
-#ifdef TE_CLOUDABI
- /* FIXME: What to do for ilp32_p ? */
- if (target_big_endian)
- return "elf64-bigaarch64-cloudabi";
- else
- return "elf64-littleaarch64-cloudabi";
-#else
if (target_big_endian)
return ilp32_p ? "elf32-bigaarch64" : "elf64-bigaarch64";
else
return ilp32_p ? "elf32-littleaarch64" : "elf64-littleaarch64";
-#endif
}
void
#define ELF_TARGET_FORMAT64 "elf64-x86-64-freebsd"
#elif defined (TE_VXWORKS)
#define ELF_TARGET_FORMAT "elf32-i386-vxworks"
-#elif defined TE_CLOUDABI
-#define ELF_TARGET_FORMAT64 "elf64-x86-64-cloudabi"
#endif
#ifdef TE_SOLARIS
+++ /dev/null
-/* Copyright (C) 2019-2025 Free Software Foundation, Inc.
-
- This file is part of GAS, the GNU Assembler.
-
- GAS is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 3,
- or (at your option) any later version.
-
- GAS is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
- the GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with GAS; see the file COPYING. If not, write to the Free
- Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
- 02110-1301, USA. */
-
-#define TE_CLOUDABI
-
-#include "obj-format.h"
z8k-*-coff | z8k-*-sim) fmt=coff ;;
*-*-aout | *-*-scout) fmt=aout ;;
- *-*-cloudabi*) fmt=elf em=cloudabi ;;
*-*-dragonfly*) fmt=elf em=dragonfly ;;
*-*-freebsd* | *-*-kfreebsd*-gnu) fmt=elf em=freebsd ;;
*-*-generic) fmt=generic ;;
#name: mbind sections without SHF_ALLOC
#error_output: section13.l
#xfail: msp430-*-* visium-*-*
-#xfail: *-*-hpux* *-*-cloudabi
+#xfail: *-*-hpux*
ALL_EMULATIONS = $(ALL_EMULATION_SOURCES:.c=.@OBJEXT@)
ALL_64_EMULATION_SOURCES = \
- eaarch64cloudabi.c \
- eaarch64cloudabib.c \
eaarch64elf.c \
eaarch64elf32.c \
eaarch64elf32b.c \
eelf64tilegx_be.c \
eelf_mipsel_haiku.c \
eelf_x86_64.c \
- eelf_x86_64_cloudabi.c \
eelf_x86_64_fbsd.c \
eelf_x86_64_haiku.c \
eelf_x86_64_sol2.c \
ALL_EMULATIONS = $(ALL_EMULATION_SOURCES:.c=.@OBJEXT@)
ALL_64_EMULATION_SOURCES = \
- eaarch64cloudabi.c \
- eaarch64cloudabib.c \
eaarch64elf.c \
eaarch64elf32.c \
eaarch64elf32b.c \
eelf64tilegx_be.c \
eelf_mipsel_haiku.c \
eelf_x86_64.c \
- eelf_x86_64_cloudabi.c \
eelf_x86_64_fbsd.c \
eelf_x86_64_haiku.c \
eelf_x86_64_sol2.c \
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/deffilep.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64cloudabi.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64cloudabib.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64elf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64elf32.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eaarch64elf32b.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_mipsel_haiku.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_s390.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_cloudabi.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_fbsd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_haiku.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eelf_x86_64_sol2.Po@am__quote@
targ_emul=aarch64elf
targ_extra_emuls="aarch64elf32 aarch64elf32b aarch64elfb armelf armelfb"
;;
-aarch64-*-cloudabi*) targ_emul=aarch64cloudabi
- targ_extra_emuls=aarch64cloudabib
- ;;
aarch64-*-freebsd*) targ_emul=aarch64fbsd
targ_extra_emuls="aarch64fbsdb aarch64elf"
;;
;;
x86_64-*-rdos*) targ_emul=elf64rdos
;;
-x86_64-*-cloudabi*) targ_emul=elf_x86_64_cloudabi
- ;;
x86_64-*-haiku*) targ_emul=elf_x86_64_haiku
targ_extra_emuls="elf_x86_64 elf_i386_haiku"
;;
+++ /dev/null
-ARCH=aarch64
-MACHINE=
-NOP=0x1f2003d5
-
-SCRIPT_NAME=elf
-ELFSIZE=64
-OUTPUT_FORMAT="elf64-littleaarch64-cloudabi"
-BIG_OUTPUT_FORMAT="elf64-bigaarch64-cloudabi"
-LITTLE_OUTPUT_FORMAT="elf64-littleaarch64-cloudabi"
-NO_REL_RELOCS=yes
-
-TEMPLATE_NAME=elf
-EXTRA_EM_FILE=aarch64elf
-
-GENERATE_SHLIB_SCRIPT=yes
-GENERATE_PIE_SCRIPT=yes
-
-MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
-COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
-SEPARATE_GOTPLT=24
-IREL_IN_PLT=
-
-TEXT_START_ADDR=0x400000
-
-DATA_START_SYMBOLS='PROVIDE (__data_start = .);';
-
-# AArch64 does not support .s* sections.
-NO_SMALL_DATA=yes
-
-OTHER_BSS_SYMBOLS="${CREATE_SHLIB+PROVIDE (}__bss_start__ = .${CREATE_SHLIB+)};"
-OTHER_BSS_END_SYMBOLS="${CREATE_SHLIB+PROVIDE (}_bss_end__ = .${CREATE_SHLIB+)}; ${CREATE_SHLIB+PROVIDE (}__bss_end__ = .${CREATE_SHLIB+)};"
-OTHER_END_SYMBOLS="${CREATE_SHLIB+PROVIDE (}__end__ = .${CREATE_SHLIB+)};"
-
-OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }'
-ATTRS_SECTIONS='.ARM.attributes 0 : { KEEP (*(.ARM.attributes)) KEEP (*(.gnu.attributes)) }'
-# Ensure each PLT entry is aligned to a cache line.
-PLT=".plt ${RELOCATING-0} : ALIGN(16) { *(.plt)${RELOCATING+${IREL_IN_PLT+ *(.iplt)}} }"
+++ /dev/null
-source_sh ${srcdir}/emulparams/aarch64cloudabi.sh
-OUTPUT_FORMAT="elf64-bigaarch64-cloudabi"
+++ /dev/null
-source_sh ${srcdir}/emulparams/elf_x86_64.sh
-OUTPUT_FORMAT="elf64-x86-64-cloudabi"
-eaarch64cloudabi.c
-eaarch64cloudabib.c
eaarch64elf.c
eaarch64elf32.c
eaarch64elf32b.c
eelf_mipsel_haiku.c
eelf_s390.c
eelf_x86_64.c
-eelf_x86_64_cloudabi.c
eelf_x86_64_fbsd.c
eelf_x86_64_haiku.c
eelf_x86_64_sol2.c