Compare commits

..

13 Commits

Author SHA1 Message Date
Dave Murphy
9d8f579c1c devkitA64: update newlib to 4.4.0 2024-02-01 20:48:07 +00:00
Dave Murphy
de681b1691 devkitA64: update binutils to 2.42 2024-02-01 20:48:02 +00:00
Dave Murphy
dfb3d82a96 devkitARM: update newlib to 4.4.0 2024-02-01 11:00:58 +00:00
Dave Murphy
7318227e11 devkitPPC: upgrade newlib to 4.4.0 2024-01-26 17:35:07 +00:00
Dave Murphy
c04144a5cf install to fixed prefix 2024-01-17 18:49:53 +00:00
Dave Murphy
c5f34ab49b devkitA64: update binutils to 2.41 2023-09-17 17:05:29 +01:00
Dave Murphy
eb428eb450 devkitPPC: bump version 2023-09-13 10:10:13 +01:00
Dave Murphy
032100b82e devkitPPC: call destructors 2023-09-13 10:08:13 +01:00
Dave Murphy
d051cd518b update rules & crtls versions 2023-09-12 18:26:40 +01:00
Dave Murphy
5daf9f7bd1 devkitA64: update to gcc 13.2 2023-08-26 16:28:50 +01:00
Dave Murphy
f06196c43c devkitPPC: remove stale patch file 2023-08-07 15:14:29 +01:00
Dave Murphy
5926a76d64 devkitPPC: update binutils to 2.41 2023-08-07 15:13:35 +01:00
Dave Murphy
12a06c469f devkitPPC: update gcc to 13.2.0 2023-08-07 15:12:35 +01:00
15 changed files with 6439 additions and 9852 deletions

View File

@@ -1,8 +1,8 @@
#!/usr/bin/env bash #!/usr/bin/env bash
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# devkitARM release 61 # devkitARM release 63
# devkitPPC release 43 # devkitPPC release 45
# devkitA64 release 22 # devkitA64 release 25
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
if [ 0 -eq 1 ] ; then if [ 0 -eq 1 ] ; then
@@ -27,12 +27,12 @@ echo
DKARM_RULES_VER=1.3.0 DKARM_RULES_VER=1.5.0
DKARM_CRTLS_VER=1.2.1 DKARM_CRTLS_VER=1.2.2
DKPPC_RULES_VER=1.1.2 DKPPC_RULES_VER=1.2.1
DKA64_RULES_VER=1.0.1 DKA64_RULES_VER=1.1.1
OSXMIN=${OSXMIN:-10.9} OSXMIN=${OSXMIN:-10.9}
@@ -72,20 +72,18 @@ fi
. ./select_toolchain.sh . ./select_toolchain.sh
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# Get preferred installation directory and set paths to the sources # Legacy versions of these scripts allowed the selection of a prefix which is
# no longer supported. Since adopting pacman and providing precompiled binaries
# of "portlibs" everything we distribute is intended to work within opt/devkitpro
#
# Rather than attempting to repackage our work for exotic linux distributions it
# would be much better for everyone concerned if efforts were made to provide
# pacman and whatever support is necessary to allow the binaries we distribute to
# work as expected.
#
# See https://github.com/devkitPro/pacman and https://devkitpro.org/wiki/devkitPro_pacman
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
INSTALLDIR=/opt/devkitpro
if [ ! -z "$BUILD_DKPRO_INSTALLDIR" ] ; then
INSTALLDIR="$BUILD_DKPRO_INSTALLDIR"
else
echo
echo "Please enter the directory where you would like '$package' to be installed:"
echo "for mingw/msys you must use <drive>:/<install path> or you will have include path problems"
echo "this is the top level directory for devkitpro, i.e. e:/devkitPro"
read -e INSTALLDIR
echo
fi
[ ! -z "$INSTALLDIR" ] && mkdir -p $INSTALLDIR && touch $INSTALLDIR/nonexistantfile && rm $INSTALLDIR/nonexistantfile || exit 1; [ ! -z "$INSTALLDIR" ] && mkdir -p $INSTALLDIR && touch $INSTALLDIR/nonexistantfile && rm $INSTALLDIR/nonexistantfile || exit 1;

View File

@@ -13,12 +13,6 @@
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
BUILD_DKPRO_PACKAGE=0 BUILD_DKPRO_PACKAGE=0
#---------------------------------------------------------------------------------
# Toolchain installation directory, comment if not specified
#---------------------------------------------------------------------------------
#BUILD_DKPRO_INSTALLDIR=/opt/devkitpro
#BUILD_DKPRO_INSTALLDIR=c:/devkitPro
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------
# Path to previously downloaded source packages, comment if not specified # Path to previously downloaded source packages, comment if not specified
#--------------------------------------------------------------------------------- #---------------------------------------------------------------------------------

View File

@@ -1,15 +1,15 @@
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index 5741c60264..fb5d9d069c 100644 index ec856764519..436098cbcc2 100644
--- a/bfd/elf-bfd.h --- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h
@@ -1789,6 +1789,14 @@ struct output_elf_obj_tdata @@ -1966,6 +1966,14 @@ struct output_elf_obj_tdata
asection *sec; asection *sec;
} build_id; } package_metadata;
+ /* Data for .nx-module-name. */ + /* Data for .nx-module-name. */
+ struct + struct
+ { + {
+ bfd_boolean (*after_write_object_contents) (bfd *); + bool (*after_write_object_contents) (bfd *);
+ const char *name; + const char *name;
+ asection *sec; + asection *sec;
+ } nx_module_name; + } nx_module_name;
@@ -18,29 +18,29 @@ index 5741c60264..fb5d9d069c 100644
bfd_size_type program_header_size; bfd_size_type program_header_size;
diff --git a/bfd/elf.c b/bfd/elf.c diff --git a/bfd/elf.c b/bfd/elf.c
index eb3e1828e9..bc6bb48804 100644 index d38e0afff2e..372e6615931 100644
--- a/bfd/elf.c --- a/bfd/elf.c
+++ b/bfd/elf.c +++ b/bfd/elf.c
@@ -6514,6 +6514,14 @@ _bfd_elf_write_object_contents (bfd *abfd) @@ -7321,6 +7321,14 @@ _bfd_elf_write_object_contents (bfd *abfd)
if (!bed->s->write_shdrs_and_ehdr (abfd)) if (!bed->s->write_shdrs_and_ehdr (abfd))
return FALSE; return false;
+ /* Write out the NX module name. */ + /* Write out the NX module name. */
+ if (t->o->nx_module_name.after_write_object_contents != NULL) + if (t->o->nx_module_name.after_write_object_contents != NULL)
+ { + {
+ failed = !(*t->o->nx_module_name.after_write_object_contents) (abfd); + failed = !(*t->o->nx_module_name.after_write_object_contents) (abfd);
+ if (failed) + if (failed)
+ return FALSE; + return false;
+ } + }
+ +
/* This is last since write_shdrs_and_ehdr can touch i_shdrp[0]. */ /* This is last since write_shdrs_and_ehdr can touch i_shdrp[0]. */
if (t->o->build_id.after_write_object_contents != NULL) if (t->o->build_id.after_write_object_contents != NULL
return (*t->o->build_id.after_write_object_contents) (abfd); && !(*t->o->build_id.after_write_object_contents) (abfd))
diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
index faa27611d4..888af6bcd8 100644 index 4592bd6da27..dc27042cfe2 100644
--- a/bfd/elfnn-aarch64.c --- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c +++ b/bfd/elfnn-aarch64.c
@@ -2341,6 +2341,12 @@ enum elf_aarch64_stub_type @@ -2441,6 +2441,12 @@ enum elf_aarch64_stub_type
aarch64_stub_erratum_843419_veneer, aarch64_stub_erratum_843419_veneer,
}; };
@@ -53,7 +53,7 @@ index faa27611d4..888af6bcd8 100644
struct elf_aarch64_stub_hash_entry struct elf_aarch64_stub_hash_entry
{ {
/* Base hash table entry structure. */ /* Base hash table entry structure. */
@@ -6436,11 +6442,13 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, @@ -6916,11 +6922,13 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
Elf_Internal_Sym *sym; Elf_Internal_Sym *sym;
asection *sec; asection *sec;
struct elf_link_hash_entry *h; struct elf_link_hash_entry *h;
@@ -62,12 +62,12 @@ index faa27611d4..888af6bcd8 100644
bfd_reloc_status_type r; bfd_reloc_status_type r;
arelent bfd_reloc; arelent bfd_reloc;
char sym_type; char sym_type;
bfd_boolean unresolved_reloc = FALSE; bool unresolved_reloc = false;
+ bfd_boolean resolved_to_zero = FALSE; + bool resolved_to_zero = false;
char *error_message = NULL; char *error_message = NULL;
r_symndx = ELFNN_R_SYM (rel->r_info); r_symndx = ELFNN_R_SYM (rel->r_info);
@@ -6576,6 +6584,10 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, @@ -7060,6 +7068,10 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
h, &unresolved_reloc, h, &unresolved_reloc,
save_addend, &addend, sym); save_addend, &addend, sym);
@@ -78,7 +78,7 @@ index faa27611d4..888af6bcd8 100644
switch (elfNN_aarch64_bfd_reloc_from_type (input_bfd, r_type)) switch (elfNN_aarch64_bfd_reloc_from_type (input_bfd, r_type))
{ {
case BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC: case BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC:
@@ -6599,7 +6611,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, @@ -7083,7 +7095,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
need_relocs = need_relocs =
(!bfd_link_executable (info) || indx != 0) && (!bfd_link_executable (info) || indx != 0) &&
(h == NULL (h == NULL
@@ -87,7 +87,7 @@ index faa27611d4..888af6bcd8 100644
|| h->root.type != bfd_link_hash_undefweak); || h->root.type != bfd_link_hash_undefweak);
BFD_ASSERT (globals->root.srelgot != NULL); BFD_ASSERT (globals->root.srelgot != NULL);
@@ -6694,7 +6706,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, @@ -7178,7 +7190,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
need_relocs = need_relocs =
(!bfd_link_executable (info) || indx != 0) && (!bfd_link_executable (info) || indx != 0) &&
(h == NULL (h == NULL
@@ -96,7 +96,7 @@ index faa27611d4..888af6bcd8 100644
|| h->root.type != bfd_link_hash_undefweak); || h->root.type != bfd_link_hash_undefweak);
BFD_ASSERT (globals->root.srelgot != NULL); BFD_ASSERT (globals->root.srelgot != NULL);
@@ -6743,7 +6755,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd, @@ -7227,7 +7239,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
bfd_vma off = symbol_tlsdesc_got_offset (input_bfd, h, r_symndx); bfd_vma off = symbol_tlsdesc_got_offset (input_bfd, h, r_symndx);
need_relocs = (h == NULL need_relocs = (h == NULL
@@ -105,17 +105,14 @@ index faa27611d4..888af6bcd8 100644
|| h->root.type != bfd_link_hash_undefweak); || h->root.type != bfd_link_hash_undefweak);
BFD_ASSERT (globals->root.srelgot != NULL); BFD_ASSERT (globals->root.srelgot != NULL);
@@ -7086,6 +7098,26 @@ need_copy_relocation_p (struct elf_aarch64_link_hash_entry *eh) @@ -7553,6 +7565,23 @@ need_copy_relocation_p (struct elf_aarch64_link_hash_entry *eh)
return FALSE; return false;
} }
+/* Remove undefined weak symbol from the dynamic symbol table if it +/* Remove undefined weak symbol from the dynamic symbol table if it
+ is resolved to 0. */ + is resolved to 0. */
+ +
+extern bfd_boolean +static bool
+elfNN_aarch64_elf_fixup_symbol (struct bfd_link_info *, struct elf_link_hash_entry *);
+
+bfd_boolean
+elfNN_aarch64_elf_fixup_symbol (struct bfd_link_info *info, +elfNN_aarch64_elf_fixup_symbol (struct bfd_link_info *info,
+ struct elf_link_hash_entry *h) + struct elf_link_hash_entry *h)
+{ +{
@@ -126,21 +123,21 @@ index faa27611d4..888af6bcd8 100644
+ _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr, + _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr,
+ h->dynstr_index); + h->dynstr_index);
+ } + }
+ return TRUE; + return true;
+} +}
+ +
/* Adjust a symbol defined by a dynamic object and referenced by a /* Adjust a symbol defined by a dynamic object and referenced by a
regular object. The current definition is in some section of the regular object. The current definition is in some section of the
dynamic object, but we're not including those sections. We have to dynamic object, but we're not including those sections. We have to
@@ -8286,6 +8318,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8771,6 +8800,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
struct elf_aarch64_link_hash_table *htab; struct elf_aarch64_link_hash_table *htab;
struct elf_aarch64_link_hash_entry *eh; struct elf_aarch64_link_hash_entry *eh;
struct elf_dyn_relocs *p; struct elf_dyn_relocs *p;
+ bfd_boolean resolved_to_zero; + bool resolved_to_zero;
/* An example of a bfd_link_hash_indirect symbol is versioned /* An example of a bfd_link_hash_indirect symbol is versioned
symbol. For example: __gxx_personality_v0(bfd_link_hash_indirect) symbol. For example: __gxx_personality_v0(bfd_link_hash_indirect)
@@ -8305,6 +8338,10 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8790,6 +8820,10 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
info = (struct bfd_link_info *) inf; info = (struct bfd_link_info *) inf;
htab = elf_aarch64_hash_table (info); htab = elf_aarch64_hash_table (info);
@@ -151,7 +148,7 @@ index faa27611d4..888af6bcd8 100644
/* Since STT_GNU_IFUNC symbol must go through PLT, we handle it /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it
here if it is defined and referenced in a non-shared object. */ here if it is defined and referenced in a non-shared object. */
if (h->type == STT_GNU_IFUNC if (h->type == STT_GNU_IFUNC
@@ -8314,7 +8351,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8799,7 +8833,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
{ {
/* Make sure this symbol is output as a dynamic symbol. /* Make sure this symbol is output as a dynamic symbol.
Undefined weak syms won't yet be marked as dynamic. */ Undefined weak syms won't yet be marked as dynamic. */
@@ -160,9 +157,9 @@ index faa27611d4..888af6bcd8 100644
&& h->root.type == bfd_link_hash_undefweak) && h->root.type == bfd_link_hash_undefweak)
{ {
if (!bfd_elf_link_record_dynamic_symbol (info, h)) if (!bfd_elf_link_record_dynamic_symbol (info, h))
@@ -8348,6 +8385,11 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8833,6 +8867,11 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
of relaxing into these from the large model PLT entries. */ of relaxing into these from the large model PLT entries. */
s->size += PLT_SMALL_ENTRY_SIZE; s->size += htab->plt_entry_size;
+ /* There should be no PLT relocations against resolved undefined + /* There should be no PLT relocations against resolved undefined
+ weak symbols in the executable. */ + weak symbols in the executable. */
@@ -172,15 +169,15 @@ index faa27611d4..888af6bcd8 100644
/* We also need to make an entry in the .got.plt section, which /* We also need to make an entry in the .got.plt section, which
will be placed in the .got section by the linker script. */ will be placed in the .got section by the linker script. */
htab->root.sgotplt->size += GOT_ENTRY_SIZE; htab->root.sgotplt->size += GOT_ENTRY_SIZE;
@@ -8370,6 +8412,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8861,6 +8900,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
htab->variant_pcs = 1;
htab->root.srelplt->reloc_count++;
} }
+ } + }
else else
{ {
h->plt.offset = (bfd_vma) - 1; h->plt.offset = (bfd_vma) - 1;
@@ -8382,9 +8425,6 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8873,9 +8913,6 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
h->needs_plt = 0; h->needs_plt = 0;
} }
@@ -189,8 +186,8 @@ index faa27611d4..888af6bcd8 100644
- -
if (h->got.refcount > 0) if (h->got.refcount > 0)
{ {
bfd_boolean dyn; bool dyn;
@@ -8396,7 +8436,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8887,7 +8924,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* Make sure this symbol is output as a dynamic symbol. /* Make sure this symbol is output as a dynamic symbol.
Undefined weak syms won't yet be marked as dynamic. */ Undefined weak syms won't yet be marked as dynamic. */
@@ -199,7 +196,7 @@ index faa27611d4..888af6bcd8 100644
&& h->root.type == bfd_link_hash_undefweak) && h->root.type == bfd_link_hash_undefweak)
{ {
if (!bfd_elf_link_record_dynamic_symbol (info, h)) if (!bfd_elf_link_record_dynamic_symbol (info, h))
@@ -8410,7 +8450,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8901,7 +8938,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
{ {
h->got.offset = htab->root.sgot->size; h->got.offset = htab->root.sgot->size;
htab->root.sgot->size += GOT_ENTRY_SIZE; htab->root.sgot->size += GOT_ENTRY_SIZE;
@@ -208,7 +205,7 @@ index faa27611d4..888af6bcd8 100644
|| h->root.type != bfd_link_hash_undefweak) || h->root.type != bfd_link_hash_undefweak)
&& (bfd_link_pic (info) && (bfd_link_pic (info)
|| WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, 0, h)) || WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, 0, h))
@@ -8446,7 +8486,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -8937,7 +8974,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
} }
indx = h && h->dynindx != -1 ? h->dynindx : 0; indx = h && h->dynindx != -1 ? h->dynindx : 0;
@@ -217,16 +214,16 @@ index faa27611d4..888af6bcd8 100644
|| h->root.type != bfd_link_hash_undefweak) || h->root.type != bfd_link_hash_undefweak)
&& (!bfd_link_executable (info) && (!bfd_link_executable (info)
|| indx != 0 || indx != 0
@@ -8512,7 +8552,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -9019,7 +9056,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
visibility. */ visibility. */
if (eh->dyn_relocs != NULL && h->root.type == bfd_link_hash_undefweak) if (h->dyn_relocs != NULL && h->root.type == bfd_link_hash_undefweak)
{ {
- if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT - if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT
+ if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT || resolved_to_zero + if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT || resolved_to_zero
|| UNDEFWEAK_NO_DYNAMIC_RELOC (info, h)) || UNDEFWEAK_NO_DYNAMIC_RELOC (info, h))
eh->dyn_relocs = NULL; h->dyn_relocs = NULL;
@@ -8532,7 +8572,9 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -9039,7 +9076,9 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
symbols which turn out to need copy relocs or are not symbols which turn out to need copy relocs or are not
dynamic. */ dynamic. */
@@ -237,20 +234,20 @@ index faa27611d4..888af6bcd8 100644
&& ((h->def_dynamic && ((h->def_dynamic
&& !h->def_regular) && !h->def_regular)
|| (htab->root.dynamic_sections_created || (htab->root.dynamic_sections_created
@@ -8543,6 +8585,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf) @@ -9050,6 +9089,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
Undefined weak syms won't yet be marked as dynamic. */ Undefined weak syms won't yet be marked as dynamic. */
if (h->dynindx == -1 if (h->dynindx == -1
&& !h->forced_local && !h->forced_local
+ && !resolved_to_zero + && !resolved_to_zero
&& h->root.type == bfd_link_hash_undefweak && h->root.type == bfd_link_hash_undefweak
&& !bfd_elf_link_record_dynamic_symbol (info, h)) && !bfd_elf_link_record_dynamic_symbol (info, h))
return FALSE; return false;
@@ -9163,8 +9206,17 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd, @@ -9607,8 +9647,17 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
Elf_Internal_Sym *sym) Elf_Internal_Sym *sym)
{ {
struct elf_aarch64_link_hash_table *htab; struct elf_aarch64_link_hash_table *htab;
+ struct elf_aarch64_link_hash_entry *eh; + struct elf_aarch64_link_hash_entry *eh;
+ bfd_boolean local_undefweak; + bool local_undefweak;
htab = elf_aarch64_hash_table (info); htab = elf_aarch64_hash_table (info);
+ eh = (struct elf_aarch64_link_hash_entry *) h; + eh = (struct elf_aarch64_link_hash_entry *) h;
@@ -263,8 +260,8 @@ index faa27611d4..888af6bcd8 100644
if (h->plt.offset != (bfd_vma) - 1) if (h->plt.offset != (bfd_vma) - 1)
{ {
asection *plt, *gotplt, *relplt; asection *plt, *gotplt, *relplt;
@@ -9199,7 +9251,7 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd, @@ -9643,7 +9692,7 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
return FALSE; return false;
elfNN_aarch64_create_small_pltn_entry (h, htab, output_bfd, info); elfNN_aarch64_create_small_pltn_entry (h, htab, output_bfd, info);
- if (!h->def_regular) - if (!h->def_regular)
@@ -272,12 +269,8 @@ index faa27611d4..888af6bcd8 100644
{ {
/* Mark the symbol as undefined, rather than as defined in /* Mark the symbol as undefined, rather than as defined in
the .plt section. */ the .plt section. */
@@ -9218,10 +9270,11 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd, @@ -9665,7 +9714,8 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
} && elf_aarch64_hash_entry (h)->got_type == GOT_NORMAL
if (h->got.offset != (bfd_vma) - 1
- && elf_aarch64_hash_entry (h)->got_type == GOT_NORMAL
+ && elf_aarch64_hash_entry (h)->got_type == GOT_NORMAL
/* Undefined weak symbol in static PIE resolves to 0 without /* Undefined weak symbol in static PIE resolves to 0 without
any dynamic relocations. */ any dynamic relocations. */
- && !UNDEFWEAK_NO_DYNAMIC_RELOC (info, h)) - && !UNDEFWEAK_NO_DYNAMIC_RELOC (info, h))
@@ -286,7 +279,7 @@ index faa27611d4..888af6bcd8 100644
{ {
Elf_Internal_Rela rela; Elf_Internal_Rela rela;
bfd_byte *loc; bfd_byte *loc;
@@ -9715,6 +9768,9 @@ const struct elf_size_info elfNN_aarch64_size_info = @@ -10312,6 +10362,9 @@ const struct elf_size_info elfNN_aarch64_size_info =
#define elf_backend_init_index_section \ #define elf_backend_init_index_section \
_bfd_elf_init_2_index_sections _bfd_elf_init_2_index_sections
@@ -296,90 +289,31 @@ index faa27611d4..888af6bcd8 100644
#define elf_backend_finish_dynamic_sections \ #define elf_backend_finish_dynamic_sections \
elfNN_aarch64_finish_dynamic_sections elfNN_aarch64_finish_dynamic_sections
diff --git a/ld/Makefile.am b/ld/Makefile.am
index c2c798b4fe..a0073d27fe 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
@@ -1509,19 +1509,23 @@ ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \
$(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS}
eaarch64elf.c: $(srcdir)/emulparams/aarch64elf.sh \
- $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
+ $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em ldemul-list.h \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64elf32.c: $(srcdir)/emulparams/aarch64elf32.sh \
- $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
+ $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em ldemul-list.h \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64elfb.c: $(srcdir)/emulparams/aarch64elfb.sh $(srcdir)/emulparams/aarch64elf.sh \
- $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
+ $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em ldemul-list.h \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64elf32b.c: $(srcdir)/emulparams/aarch64elf32b.sh $(srcdir)/emulparams/aarch64elf32.sh \
- $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
+ $(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em ldemul-list.h \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64cloudabi.c: $(srcdir)/emulparams/aarch64cloudabi.sh \
diff --git a/ld/Makefile.in b/ld/Makefile.in
index fc687fc516..7d85865d92 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
@@ -3114,18 +3114,22 @@ ens32knbsd.c: $(srcdir)/emulparams/ns32knbsd.sh \
eaarch64elf.c: $(srcdir)/emulparams/aarch64elf.sh \
$(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64elf32.c: $(srcdir)/emulparams/aarch64elf32.sh \
$(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64elfb.c: $(srcdir)/emulparams/aarch64elfb.sh $(srcdir)/emulparams/aarch64elf.sh \
$(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64elf32b.c: $(srcdir)/emulparams/aarch64elf32b.sh $(srcdir)/emulparams/aarch64elf32.sh \
$(ELF_DEPS) $(srcdir)/emultempl/aarch64elf.em \
+ $(srcdir)/emulparams/dynamic_undefined_weak.sh \
$(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS}
eaarch64cloudabi.c: $(srcdir)/emulparams/aarch64cloudabi.sh \
diff --git a/ld/emulparams/aarch64elf.sh b/ld/emulparams/aarch64elf.sh diff --git a/ld/emulparams/aarch64elf.sh b/ld/emulparams/aarch64elf.sh
index 4a59342722..2aa1ec7712 100644 index 8f68e517b45..260a590e69e 100644
--- a/ld/emulparams/aarch64elf.sh --- a/ld/emulparams/aarch64elf.sh
+++ b/ld/emulparams/aarch64elf.sh +++ b/ld/emulparams/aarch64elf.sh
@@ -1,3 +1,5 @@ @@ -1,3 +1,5 @@
+. ${srcdir}/emulparams/dynamic_undefined_weak.sh +source_sh ${srcdir}/emulparams/dynamic_undefined_weak.sh
+ +
ARCH=aarch64 ARCH=aarch64
MACHINE= MACHINE=
NOP=0x1f2003d5 NOP=0x1f2003d5
diff --git a/ld/emulparams/aarch64elf32.sh b/ld/emulparams/aarch64elf32.sh diff --git a/ld/emulparams/aarch64elf32.sh b/ld/emulparams/aarch64elf32.sh
index 38bcd4bbb0..da0f411feb 100644 index 5a08d9e29f1..e4c9abf85a1 100644
--- a/ld/emulparams/aarch64elf32.sh --- a/ld/emulparams/aarch64elf32.sh
+++ b/ld/emulparams/aarch64elf32.sh +++ b/ld/emulparams/aarch64elf32.sh
@@ -1,3 +1,5 @@ @@ -1,3 +1,5 @@
+. ${srcdir}/emulparams/dynamic_undefined_weak.sh +source_sh ${srcdir}/emulparams/dynamic_undefined_weak.sh
+ +
ARCH="aarch64:ilp32" ARCH="aarch64:ilp32"
MACHINE= MACHINE=
NOP=0x1f2003d5 NOP=0x1f2003d5
diff --git a/ld/emultempl/aarch64elf.em b/ld/emultempl/aarch64elf.em diff --git a/ld/emultempl/aarch64elf.em b/ld/emultempl/aarch64elf.em
index 45e40b510c..916ef2086a 100644 index d47bdbf9937..b6f76d5c8d7 100644
--- a/ld/emultempl/aarch64elf.em --- a/ld/emultempl/aarch64elf.em
+++ b/ld/emultempl/aarch64elf.em +++ b/ld/emultempl/aarch64elf.em
@@ -380,7 +380,7 @@ PARSE_AND_LIST_LONGOPTS=' @@ -378,7 +378,7 @@ PARSE_AND_LIST_LONGOPTS='
{ "no-apply-dynamic-relocs", no_argument, NULL, OPTION_NO_APPLY_DYNAMIC_RELOCS}, { "no-apply-dynamic-relocs", no_argument, NULL, OPTION_NO_APPLY_DYNAMIC_RELOCS},
' '
@@ -388,25 +322,63 @@ index 45e40b510c..916ef2086a 100644
fprintf (file, _(" --no-enum-size-warning Don'\''t warn about objects with incompatible\n" fprintf (file, _(" --no-enum-size-warning Don'\''t warn about objects with incompatible\n"
" enum sizes\n")); " enum sizes\n"));
fprintf (file, _(" --no-wchar-size-warning Don'\''t warn about objects with incompatible\n" fprintf (file, _(" --no-wchar-size-warning Don'\''t warn about objects with incompatible\n"
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em diff --git a/ld/emultempl/elf.em b/ld/emultempl/elf.em
index f4f7ad6b4e..8428a54697 100644 index 3f67f8b09d9..eb8e8e1596e 100644
--- a/ld/emultempl/elf32.em --- a/ld/emultempl/elf.em
+++ b/ld/emultempl/elf32.em +++ b/ld/emultempl/elf.em
@@ -192,6 +192,9 @@ static char *depaudit; /* colon (typically) separated list of libs */ @@ -572,6 +572,7 @@ enum elf_options
/* Style of .note.gnu.build-id section. */ OPTION_EXCLUDE_LIBS,
static const char *emit_note_gnu_build_id; OPTION_HASH_STYLE,
OPTION_BUILD_ID,
+ OPTION_NX_MODULE_NAME,
OPTION_PACKAGE_METADATA,
OPTION_AUDIT,
OPTION_COMPRESS_DEBUG
@@ -603,6 +604,7 @@ EOF
fi
fragment <<EOF
{"build-id", optional_argument, NULL, OPTION_BUILD_ID},
+ {"nx-module-name", optional_argument, NULL, OPTION_NX_MODULE_NAME},
{"package-metadata", optional_argument, NULL, OPTION_PACKAGE_METADATA},
{"compress-debug-sections", required_argument, NULL, OPTION_COMPRESS_DEBUG},
EOF
@@ -673,6 +675,16 @@ gld${EMULATION_NAME}_handle_option (int optc)
einfo (_("%F%P: invalid --compress-debug-sections option: \`%s'\n"),
optarg);
break;
+ case OPTION_NX_MODULE_NAME:
+ if (ldelf_emit_nx_module_name != NULL)
+ {
+ free ((char *) ldelf_emit_nx_module_name);
+ ldelf_emit_nx_module_name = NULL;
+ }
+ if (optarg == NULL)
+ optarg = "";
+ ldelf_emit_nx_module_name = xstrdup (optarg);
+ break;
EOF
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
diff --git a/ld/ldelf.c b/ld/ldelf.c
index f9a6819366f..99e982ef5eb 100644
--- a/ld/ldelf.c
+++ b/ld/ldelf.c
@@ -55,6 +55,9 @@ const char *ldelf_emit_note_gnu_build_id;
/* Content of .note.package section. */
const char *ldelf_emit_note_fdo_package_metadata;
+/* NX module name. */ +/* NX module name. */
+static const char *emit_nx_module_name; +const char *ldelf_emit_nx_module_name;
+ +
/* On Linux, it's possible to have different versions of the same /* These variables are required to pass information back and forth
shared library linked against different versions of libc. The between after_open and check_needed and stat_needed and vercheck. */
dynamic linker somehow tags which libc version to use in
@@ -1217,6 +1220,92 @@ setup_build_id (bfd *ibfd) @@ -1206,8 +1209,93 @@ ldelf_handle_dt_needed (struct elf_link_hash_table *htab,
return FALSE; *save_input_bfd_tail = NULL;
} }
+static bfd_boolean -/* This is called before calling plugin 'all symbols read' hook. */
+static bool
+write_nx_module_name (bfd *abfd) +write_nx_module_name (bfd *abfd)
+{ +{
+ struct elf_obj_tdata *t = elf_tdata (abfd); + struct elf_obj_tdata *t = elf_tdata (abfd);
@@ -416,14 +388,14 @@ index f4f7ad6b4e..8428a54697 100644
+ unsigned char *contents; + unsigned char *contents;
+ bfd_size_type size; + bfd_size_type size;
+ file_ptr position; + file_ptr position;
+
+ name = t->o->nx_module_name.name; + name = t->o->nx_module_name.name;
+ asec = t->o->nx_module_name.sec; + asec = t->o->nx_module_name.sec;
+ if (bfd_is_abs_section (asec->output_section)) + if (bfd_is_abs_section (asec->output_section))
+ { + {
+ einfo (_("%P: warning: .nx-module-name section discarded," + einfo (_("%P: warning: .nx-module-name section discarded,"
+ " --build-id ignored\n")); + " --build-id ignored\n"));
+ return TRUE; + return true;
+ } + }
+ i_shdr = &elf_section_data (asec->output_section)->this_hdr; + i_shdr = &elf_section_data (asec->output_section)->this_hdr;
+ +
@@ -450,21 +422,21 @@ index f4f7ad6b4e..8428a54697 100644
+ +
+/* Make .nx-module-name section, and set up elf_tdata->nx_module_name. */ +/* Make .nx-module-name section, and set up elf_tdata->nx_module_name. */
+ +
+static bfd_boolean +static bool
+setup_nx_module_name (bfd *ibfd, bfd *obfd) +setup_nx_module_name (bfd *ibfd, bfd *obfd)
+{ +{
+ asection *s; + asection *s;
+ bfd_size_type size; + bfd_size_type size;
+ flagword flags; + flagword flags;
+ +
+ if (emit_nx_module_name[0] == '\0') + if (ldelf_emit_nx_module_name[0] == '\0')
+ { + {
+ /* Extract the basename of the output bfd and use it as the module name. */ + /* Extract the basename of the output bfd and use it as the module name. */
+ char *dot_pos; + char *dot_pos;
+ free ((char *) emit_nx_module_name); + free ((char *) ldelf_emit_nx_module_name);
+ emit_nx_module_name = (char *) lbasename (bfd_get_filename (obfd)); + ldelf_emit_nx_module_name = (char *) lbasename (bfd_get_filename (obfd));
+ emit_nx_module_name = xstrdup (emit_nx_module_name); + ldelf_emit_nx_module_name = xstrdup (ldelf_emit_nx_module_name);
+ dot_pos = strrchr (emit_nx_module_name, '.'); + dot_pos = strrchr (ldelf_emit_nx_module_name, '.');
+ if (dot_pos != NULL) + if (dot_pos != NULL)
+ { + {
+ /* Remove extension. */ + /* Remove extension. */
@@ -472,34 +444,35 @@ index f4f7ad6b4e..8428a54697 100644
+ } + }
+ } + }
+ +
+ size = 8 + strlen(emit_nx_module_name) + 1; /* extra null terminator for AMS */ + size = 8 + strlen(ldelf_emit_nx_module_name) + 1; /* extra null terminator for AMS */
+ flags = (SEC_ALLOC | SEC_LOAD | SEC_IN_MEMORY + flags = (SEC_ALLOC | SEC_LOAD | SEC_IN_MEMORY
+ | SEC_LINKER_CREATED | SEC_READONLY | SEC_DATA); + | SEC_LINKER_CREATED | SEC_READONLY | SEC_DATA);
+ s = bfd_make_section_with_flags (ibfd, ".nx-module-name", flags); + s = bfd_make_section_with_flags (ibfd, ".nx-module-name", flags);
+ if (s != NULL && bfd_set_section_alignment (ibfd, s, 4)) + if (s != NULL && bfd_set_section_alignment (s, 4))
+ { + {
+ struct elf_obj_tdata *t = elf_tdata (link_info.output_bfd); + struct elf_obj_tdata *t = elf_tdata (link_info.output_bfd);
+ t->o->nx_module_name.after_write_object_contents = &write_nx_module_name; + t->o->nx_module_name.after_write_object_contents = &write_nx_module_name;
+ t->o->nx_module_name.name = emit_nx_module_name; + t->o->nx_module_name.name = ldelf_emit_nx_module_name;
+ t->o->nx_module_name.sec = s; + t->o->nx_module_name.sec = s;
+ elf_section_type (s) = SHT_PROGBITS; + elf_section_type (s) = SHT_PROGBITS;
+ s->size = size; + s->size = size;
+ return TRUE; + return true;
+ } + }
+ +
+ einfo (_("%P: warning: cannot create .nx-module-name section," + einfo (_("%P: warning: cannot create .nx-module-name section,"
+ " --nx-module-name ignored\n")); + " --nx-module-name ignored\n"));
+ return FALSE; + return false;
+} +}
+ +
/* This is called after all the input files have been opened. */ +/* This is called before calling plugin 'all symbols read' hook. */
void
static void ldelf_before_plugin_all_symbols_read (int use_libpath, int native,
@@ -1267,6 +1356,24 @@ gld${EMULATION_NAME}_after_open (void) int is_linux, int is_freebsd,
@@ -1286,6 +1374,24 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
} }
} }
+ if (emit_nx_module_name != NULL) + if (ldelf_emit_nx_module_name != NULL)
+ { + {
+ /* Find an ELF input. */ + /* Find an ELF input. */
+ for (abfd = link_info.input_bfds; + for (abfd = link_info.input_bfds;
@@ -512,93 +485,23 @@ index f4f7ad6b4e..8428a54697 100644
+ /* If there are no ELF input files do not try to create a .nx-module-name section. */ + /* If there are no ELF input files do not try to create a .nx-module-name section. */
+ if (abfd == NULL || !setup_nx_module_name (abfd, link_info.output_bfd)) + if (abfd == NULL || !setup_nx_module_name (abfd, link_info.output_bfd))
+ { + {
+ free ((char *) emit_nx_module_name); + free ((char *) ldelf_emit_nx_module_name);
+ emit_nx_module_name = NULL; + ldelf_emit_nx_module_name = NULL;
+ } + }
+ } + }
+ +
get_elf_backend_data (link_info.output_bfd)->setup_gnu_properties (&link_info); get_elf_backend_data (link_info.output_bfd)->setup_gnu_properties (&link_info);
if (bfd_link_relocatable (&link_info)) /* Do not allow executable files to be used as inputs to the link. */
@@ -2720,6 +2827,7 @@ enum elf_options diff --git a/ld/ldelf.h b/ld/ldelf.h
OPTION_EXCLUDE_LIBS, index f82bd9234a7..96173dcd671 100644
OPTION_HASH_STYLE, --- a/ld/ldelf.h
OPTION_BUILD_ID, +++ b/ld/ldelf.h
+ OPTION_NX_MODULE_NAME, @@ -20,6 +20,7 @@
OPTION_AUDIT,
OPTION_COMPRESS_DEBUG
};
@@ -2750,6 +2858,7 @@ EOF
fi
fragment <<EOF
{"build-id", optional_argument, NULL, OPTION_BUILD_ID},
+ {"nx-module-name", optional_argument, NULL, OPTION_NX_MODULE_NAME},
{"compress-debug-sections", required_argument, NULL, OPTION_COMPRESS_DEBUG},
EOF
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
@@ -2814,6 +2923,16 @@ gld${EMULATION_NAME}_handle_option (int optc)
einfo (_("%F%P: invalid --compress-debug-sections option: \`%s'\n"),
optarg);
break;
+ case OPTION_NX_MODULE_NAME:
+ if (emit_nx_module_name != NULL)
+ {
+ free ((char *) emit_nx_module_name);
+ emit_nx_module_name = NULL;
+ }
+ if (optarg == NULL)
+ optarg = "";
+ emit_nx_module_name = xstrdup (optarg);
+ break;
EOF
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then extern const char *ldelf_emit_note_gnu_build_id;
diff --git a/ld/ldgram.y b/ld/ldgram.y extern const char *ldelf_emit_note_fdo_package_metadata;
index c3eadeb392..59ab143526 100644 +extern const char *ldelf_emit_nx_module_name;
--- a/ld/ldgram.y
+++ b/ld/ldgram.y
@@ -819,6 +819,7 @@ origin_spec:
ORIGIN '=' mustbe_exp
{
region->origin_exp = $3;
+ region->current = region->origin;
}
;
diff --git a/ld/ldlang.c b/ld/ldlang.c extern void ldelf_after_parse (void);
index 33f6bda292..7161f4210a 100644 extern bool ldelf_load_symbols (lang_input_statement_type *);
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -7381,9 +7381,6 @@ lang_process (void)
current_target = default_target;
lang_statement_iteration++;
open_input_bfds (statement_list.head, OPEN_BFD_NORMAL);
- /* open_input_bfds also handles assignments, so we can give values
- to symbolic origin/length now. */
- lang_do_memory_regions ();
#ifdef ENABLE_PLUGINS
if (link_info.lto_plugin_active)
@@ -7526,6 +7523,8 @@ lang_process (void)
/* PR 13683: We must rerun the assignments prior to running garbage
collection in order to make sure that all symbol aliases are resolved. */
lang_do_assignments (lang_mark_phase_enum);
+
+ lang_do_memory_regions();
expld.phase = lang_first_phase_enum;
/* Size up the common data. */
@@ -7610,11 +7609,8 @@ lang_process (void)
/* Fix any __start, __stop, .startof. or .sizeof. symbols. */
lang_finalize_start_stop ();
- /* Do all the assignments again, to report errors. Assignment
- statements are processed multiple times, updating symbols; In
- open_input_bfds, lang_do_assignments, and lang_size_sections.
- Since lang_relax_sections calls lang_do_assignments, symbols are
- also updated in ldemul_after_allocation. */
+ /* Do all the assignments, now that we know the final resting places
+ of all the symbols. */
lang_do_assignments (lang_final_phase_enum);
ldemul_finish ();

View File

@@ -0,0 +1,507 @@
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index 3ed22fa6c52..16cec309746 100644
--- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h
@@ -1984,6 +1984,14 @@ struct output_elf_obj_tdata
asection *sec;
} package_metadata;
+ /* Data for .nx-module-name. */
+ struct
+ {
+ bool (*after_write_object_contents) (bfd *);
+ const char *name;
+ asection *sec;
+ } nx_module_name;
+
/* Records the result of `get_program_header_size'. */
bfd_size_type program_header_size;
diff --git a/bfd/elf.c b/bfd/elf.c
index 88c75ae3ce0..c4b5cda59a7 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -7359,6 +7359,14 @@ _bfd_elf_write_object_contents (bfd *abfd)
if (!bed->s->write_shdrs_and_ehdr (abfd))
return false;
+ /* Write out the NX module name. */
+ if (t->o->nx_module_name.after_write_object_contents != NULL)
+ {
+ failed = !(*t->o->nx_module_name.after_write_object_contents) (abfd);
+ if (failed)
+ return false;
+ }
+
/* This is last since write_shdrs_and_ehdr can touch i_shdrp[0]. */
if (t->o->build_id.after_write_object_contents != NULL
&& !(*t->o->build_id.after_write_object_contents) (abfd))
diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
index 109517db4aa..36ea8726544 100644
--- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c
@@ -2441,6 +2441,12 @@ enum elf_aarch64_stub_type
aarch64_stub_erratum_843419_veneer,
};
+/* Is an undefined weak symbol resolved to 0 ? */
+#define UNDEFINED_WEAK_RESOLVED_TO_ZERO(INFO, EH) \
+ ((EH)->root.root.type == bfd_link_hash_undefweak \
+ && bfd_link_executable (INFO) \
+ && !(INFO)->dynamic_undefined_weak)
+
struct elf_aarch64_stub_hash_entry
{
/* Base hash table entry structure. */
@@ -6947,11 +6953,13 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
Elf_Internal_Sym *sym;
asection *sec;
struct elf_link_hash_entry *h;
+ struct elf_aarch64_link_hash_entry *eh;
bfd_vma relocation;
bfd_reloc_status_type r;
arelent bfd_reloc;
char sym_type;
bool unresolved_reloc = false;
+ bool resolved_to_zero = false;
char *error_message = NULL;
r_symndx = ELFNN_R_SYM (rel->r_info);
@@ -7091,6 +7099,10 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
h, &unresolved_reloc,
save_addend, &addend, sym);
+ eh = (struct elf_aarch64_link_hash_entry *) h;
+ resolved_to_zero = (eh != NULL
+ && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh));
+
switch (elfNN_aarch64_bfd_reloc_from_type (input_bfd, r_type))
{
case BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC:
@@ -7114,7 +7126,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
need_relocs =
(!bfd_link_executable (info) || indx != 0) &&
(h == NULL
- || ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
+ || (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT && !resolved_to_zero)
|| h->root.type != bfd_link_hash_undefweak);
BFD_ASSERT (globals->root.srelgot != NULL);
@@ -7209,7 +7221,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
need_relocs =
(!bfd_link_executable (info) || indx != 0) &&
(h == NULL
- || ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
+ || (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT && !resolved_to_zero)
|| h->root.type != bfd_link_hash_undefweak);
BFD_ASSERT (globals->root.srelgot != NULL);
@@ -7258,7 +7270,7 @@ elfNN_aarch64_relocate_section (bfd *output_bfd,
bfd_vma off = symbol_tlsdesc_got_offset (input_bfd, h, r_symndx);
need_relocs = (h == NULL
- || ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
+ || (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT && !resolved_to_zero)
|| h->root.type != bfd_link_hash_undefweak);
BFD_ASSERT (globals->root.srelgot != NULL);
@@ -7584,6 +7596,23 @@ need_copy_relocation_p (struct elf_aarch64_link_hash_entry *eh)
return false;
}
+/* Remove undefined weak symbol from the dynamic symbol table if it
+ is resolved to 0. */
+
+static bool
+elfNN_aarch64_elf_fixup_symbol (struct bfd_link_info *info,
+ struct elf_link_hash_entry *h)
+{
+ if (h->dynindx != -1
+ && UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, elf_aarch64_hash_entry (h)))
+ {
+ h->dynindx = -1;
+ _bfd_elf_strtab_delref (elf_hash_table (info)->dynstr,
+ h->dynstr_index);
+ }
+ return true;
+}
+
/* Adjust a symbol defined by a dynamic object and referenced by a
regular object. The current definition is in some section of the
dynamic object, but we're not including those sections. We have to
@@ -8802,6 +8831,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
struct elf_aarch64_link_hash_table *htab;
struct elf_aarch64_link_hash_entry *eh;
struct elf_dyn_relocs *p;
+ bool resolved_to_zero;
/* An example of a bfd_link_hash_indirect symbol is versioned
symbol. For example: __gxx_personality_v0(bfd_link_hash_indirect)
@@ -8821,6 +8851,10 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
info = (struct bfd_link_info *) inf;
htab = elf_aarch64_hash_table (info);
+ eh = (struct elf_aarch64_link_hash_entry *) h;
+ eh->tlsdesc_got_jump_table_offset = (bfd_vma) - 1;
+ resolved_to_zero = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh);
+
/* Since STT_GNU_IFUNC symbol must go through PLT, we handle it
here if it is defined and referenced in a non-shared object. */
if (h->type == STT_GNU_IFUNC
@@ -8830,7 +8864,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
{
/* Make sure this symbol is output as a dynamic symbol.
Undefined weak syms won't yet be marked as dynamic. */
- if (h->dynindx == -1 && !h->forced_local
+ if (h->dynindx == -1 && !h->forced_local && !resolved_to_zero
&& h->root.type == bfd_link_hash_undefweak)
{
if (!bfd_elf_link_record_dynamic_symbol (info, h))
@@ -8864,6 +8898,11 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
of relaxing into these from the large model PLT entries. */
s->size += htab->plt_entry_size;
+ /* There should be no PLT relocations against resolved undefined
+ weak symbols in the executable. */
+ if (!resolved_to_zero)
+ {
+
/* We also need to make an entry in the .got.plt section, which
will be placed in the .got section by the linker script. */
htab->root.sgotplt->size += GOT_ENTRY_SIZE;
@@ -8892,6 +8931,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
htab->variant_pcs = 1;
}
+ }
else
{
h->plt.offset = (bfd_vma) - 1;
@@ -8904,9 +8944,6 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
h->needs_plt = 0;
}
- eh = (struct elf_aarch64_link_hash_entry *) h;
- eh->tlsdesc_got_jump_table_offset = (bfd_vma) - 1;
-
if (h->got.refcount > 0)
{
bool dyn;
@@ -8918,7 +8955,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
/* Make sure this symbol is output as a dynamic symbol.
Undefined weak syms won't yet be marked as dynamic. */
- if (dyn && h->dynindx == -1 && !h->forced_local
+ if (dyn && h->dynindx == -1 && !h->forced_local && !resolved_to_zero
&& h->root.type == bfd_link_hash_undefweak)
{
if (!bfd_elf_link_record_dynamic_symbol (info, h))
@@ -8932,7 +8969,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
{
h->got.offset = htab->root.sgot->size;
htab->root.sgot->size += GOT_ENTRY_SIZE;
- if ((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
+ if (((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT && !resolved_to_zero)
|| h->root.type != bfd_link_hash_undefweak)
&& (bfd_link_pic (info)
|| WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, 0, h))
@@ -8968,7 +9005,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
}
indx = h && h->dynindx != -1 ? h->dynindx : 0;
- if ((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
+ if (((ELF_ST_VISIBILITY (h->other) == STV_DEFAULT && !resolved_to_zero)
|| h->root.type != bfd_link_hash_undefweak)
&& (!bfd_link_executable (info)
|| indx != 0
@@ -9050,7 +9087,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
visibility. */
if (h->dyn_relocs != NULL && h->root.type == bfd_link_hash_undefweak)
{
- if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT
+ if (ELF_ST_VISIBILITY (h->other) != STV_DEFAULT || resolved_to_zero
|| UNDEFWEAK_NO_DYNAMIC_RELOC (info, h))
h->dyn_relocs = NULL;
@@ -9070,7 +9107,9 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
symbols which turn out to need copy relocs or are not
dynamic. */
- if (!h->non_got_ref
+ if (!(h->non_got_ref
+ || (h->root.type == bfd_link_hash_undefweak
+ && !resolved_to_zero))
&& ((h->def_dynamic
&& !h->def_regular)
|| (htab->root.dynamic_sections_created
@@ -9081,6 +9120,7 @@ elfNN_aarch64_allocate_dynrelocs (struct elf_link_hash_entry *h, void *inf)
Undefined weak syms won't yet be marked as dynamic. */
if (h->dynindx == -1
&& !h->forced_local
+ && !resolved_to_zero
&& h->root.type == bfd_link_hash_undefweak
&& !bfd_elf_link_record_dynamic_symbol (info, h))
return false;
@@ -9638,8 +9678,17 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
Elf_Internal_Sym *sym)
{
struct elf_aarch64_link_hash_table *htab;
+ struct elf_aarch64_link_hash_entry *eh;
+ bool local_undefweak;
htab = elf_aarch64_hash_table (info);
+ eh = (struct elf_aarch64_link_hash_entry *) h;
+
+ /* We keep PLT/GOT entries without dynamic PLT/GOT relocations for
+ resolved undefined weak symbols in executable so that their
+ references have value 0 at run-time. */
+ local_undefweak = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh);
+
if (h->plt.offset != (bfd_vma) - 1)
{
asection *plt, *gotplt, *relplt;
@@ -9674,7 +9723,7 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
return false;
elfNN_aarch64_create_small_pltn_entry (h, htab, output_bfd, info);
- if (!h->def_regular)
+ if (!local_undefweak && !h->def_regular)
{
/* Mark the symbol as undefined, rather than as defined in
the .plt section. */
@@ -9696,7 +9745,8 @@ elfNN_aarch64_finish_dynamic_symbol (bfd *output_bfd,
&& elf_aarch64_hash_entry (h)->got_type == GOT_NORMAL
/* Undefined weak symbol in static PIE resolves to 0 without
any dynamic relocations. */
- && !UNDEFWEAK_NO_DYNAMIC_RELOC (info, h))
+ && !UNDEFWEAK_NO_DYNAMIC_RELOC (info, h)
+ && !local_undefweak)
{
Elf_Internal_Rela rela;
bfd_byte *loc;
@@ -10343,6 +10393,9 @@ const struct elf_size_info elfNN_aarch64_size_info =
#define elf_backend_init_index_section \
_bfd_elf_init_2_index_sections
+#define elf_backend_fixup_symbol \
+ elfNN_aarch64_elf_fixup_symbol
+
#define elf_backend_finish_dynamic_sections \
elfNN_aarch64_finish_dynamic_sections
diff --git a/ld/emulparams/aarch64elf.sh b/ld/emulparams/aarch64elf.sh
index 8f68e517b45..260a590e69e 100644
--- a/ld/emulparams/aarch64elf.sh
+++ b/ld/emulparams/aarch64elf.sh
@@ -1,3 +1,5 @@
+source_sh ${srcdir}/emulparams/dynamic_undefined_weak.sh
+
ARCH=aarch64
MACHINE=
NOP=0x1f2003d5
diff --git a/ld/emulparams/aarch64elf32.sh b/ld/emulparams/aarch64elf32.sh
index 5a08d9e29f1..e4c9abf85a1 100644
--- a/ld/emulparams/aarch64elf32.sh
+++ b/ld/emulparams/aarch64elf32.sh
@@ -1,3 +1,5 @@
+source_sh ${srcdir}/emulparams/dynamic_undefined_weak.sh
+
ARCH="aarch64:ilp32"
MACHINE=
NOP=0x1f2003d5
diff --git a/ld/emultempl/aarch64elf.em b/ld/emultempl/aarch64elf.em
index b647909ae63..3e2d7a171b9 100644
--- a/ld/emultempl/aarch64elf.em
+++ b/ld/emultempl/aarch64elf.em
@@ -378,7 +378,7 @@ PARSE_AND_LIST_LONGOPTS='
{ "no-apply-dynamic-relocs", no_argument, NULL, OPTION_NO_APPLY_DYNAMIC_RELOCS},
'
-PARSE_AND_LIST_OPTIONS='
+PARSE_AND_LIST_OPTIONS=${PARSE_AND_LIST_OPTIONS}'
fprintf (file, _(" --no-enum-size-warning Don'\''t warn about objects with incompatible\n"
" enum sizes\n"));
fprintf (file, _(" --no-wchar-size-warning Don'\''t warn about objects with incompatible\n"
diff --git a/ld/emultempl/elf.em b/ld/emultempl/elf.em
index 71cec19fdc6..3fd0585dee6 100644
--- a/ld/emultempl/elf.em
+++ b/ld/emultempl/elf.em
@@ -574,6 +574,7 @@ enum elf_options
OPTION_EXCLUDE_LIBS,
OPTION_HASH_STYLE,
OPTION_BUILD_ID,
+ OPTION_NX_MODULE_NAME,
OPTION_PACKAGE_METADATA,
OPTION_AUDIT,
OPTION_COMPRESS_DEBUG
@@ -605,6 +606,7 @@ EOF
fi
fragment <<EOF
{"build-id", optional_argument, NULL, OPTION_BUILD_ID},
+ {"nx-module-name", optional_argument, NULL, OPTION_NX_MODULE_NAME},
{"package-metadata", optional_argument, NULL, OPTION_PACKAGE_METADATA},
{"compress-debug-sections", required_argument, NULL, OPTION_COMPRESS_DEBUG},
EOF
@@ -675,6 +677,16 @@ gld${EMULATION_NAME}_handle_option (int optc)
einfo (_("%F%P: invalid --compress-debug-sections option: \`%s'\n"),
optarg);
break;
+ case OPTION_NX_MODULE_NAME:
+ if (ldelf_emit_nx_module_name != NULL)
+ {
+ free ((char *) ldelf_emit_nx_module_name);
+ ldelf_emit_nx_module_name = NULL;
+ }
+ if (optarg == NULL)
+ optarg = "";
+ ldelf_emit_nx_module_name = xstrdup (optarg);
+ break;
EOF
if test x"$GENERATE_SHLIB_SCRIPT" = xyes; then
diff --git a/ld/ldelf.c b/ld/ldelf.c
index 2852851dcd5..0b1efa9675a 100644
--- a/ld/ldelf.c
+++ b/ld/ldelf.c
@@ -55,6 +55,9 @@ const char *ldelf_emit_note_gnu_build_id;
/* Content of .note.package section. */
const char *ldelf_emit_note_fdo_package_metadata;
+/* NX module name. */
+const char *ldelf_emit_nx_module_name;
+
/* These variables are required to pass information back and forth
between after_open and check_needed and stat_needed and vercheck. */
@@ -1209,8 +1212,93 @@ ldelf_handle_dt_needed (struct elf_link_hash_table *htab,
*save_input_bfd_tail = NULL;
}
-/* This is called before calling plugin 'all symbols read' hook. */
+static bool
+write_nx_module_name (bfd *abfd)
+{
+ struct elf_obj_tdata *t = elf_tdata (abfd);
+ const char *name;
+ asection *asec;
+ Elf_Internal_Shdr *i_shdr;
+ unsigned char *contents;
+ bfd_size_type size;
+ file_ptr position;
+ name = t->o->nx_module_name.name;
+ asec = t->o->nx_module_name.sec;
+ if (bfd_is_abs_section (asec->output_section))
+ {
+ einfo (_("%P: warning: .nx-module-name section discarded,"
+ " --build-id ignored\n"));
+ return true;
+ }
+ i_shdr = &elf_section_data (asec->output_section)->this_hdr;
+
+ if (i_shdr->contents == NULL)
+ {
+ if (asec->contents == NULL)
+ asec->contents = (unsigned char *) xmalloc (asec->size);
+ contents = asec->contents;
+ }
+ else
+ contents = i_shdr->contents + asec->output_offset;
+
+ size = asec->size;
+ bfd_h_put_32 (abfd, 0, &contents[0]);
+ bfd_h_put_32 (abfd, size - 9, &contents[4]);
+ memcpy (&contents[8], name, size - 9);
+ contents[size - 1] = 0; /* ensure null termination for AMS */
+
+ position = i_shdr->sh_offset + asec->output_offset;
+
+ return (bfd_seek (abfd, position, SEEK_SET) == 0
+ && bfd_write (contents, size, abfd) == size);
+}
+
+/* Make .nx-module-name section, and set up elf_tdata->nx_module_name. */
+
+static bool
+setup_nx_module_name (bfd *ibfd, bfd *obfd)
+{
+ asection *s;
+ bfd_size_type size;
+ flagword flags;
+
+ if (ldelf_emit_nx_module_name[0] == '\0')
+ {
+ /* Extract the basename of the output bfd and use it as the module name. */
+ char *dot_pos;
+ free ((char *) ldelf_emit_nx_module_name);
+ ldelf_emit_nx_module_name = (char *) lbasename (bfd_get_filename (obfd));
+ ldelf_emit_nx_module_name = xstrdup (ldelf_emit_nx_module_name);
+ dot_pos = strrchr (ldelf_emit_nx_module_name, '.');
+ if (dot_pos != NULL)
+ {
+ /* Remove extension. */
+ *dot_pos = 0;
+ }
+ }
+
+ size = 8 + strlen(ldelf_emit_nx_module_name) + 1; /* extra null terminator for AMS */
+ flags = (SEC_ALLOC | SEC_LOAD | SEC_IN_MEMORY
+ | SEC_LINKER_CREATED | SEC_READONLY | SEC_DATA);
+ s = bfd_make_section_with_flags (ibfd, ".nx-module-name", flags);
+ if (s != NULL && bfd_set_section_alignment (s, 4))
+ {
+ struct elf_obj_tdata *t = elf_tdata (link_info.output_bfd);
+ t->o->nx_module_name.after_write_object_contents = &write_nx_module_name;
+ t->o->nx_module_name.name = ldelf_emit_nx_module_name;
+ t->o->nx_module_name.sec = s;
+ elf_section_type (s) = SHT_PROGBITS;
+ s->size = size;
+ return true;
+ }
+
+ einfo (_("%P: warning: cannot create .nx-module-name section,"
+ " --nx-module-name ignored\n"));
+ return false;
+}
+
+/* This is called before calling plugin 'all symbols read' hook. */
void
ldelf_before_plugin_all_symbols_read (int use_libpath, int native,
int is_linux, int is_freebsd,
@@ -1289,6 +1377,24 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
}
}
+ if (ldelf_emit_nx_module_name != NULL)
+ {
+ /* Find an ELF input. */
+ for (abfd = link_info.input_bfds;
+ abfd != (bfd *) NULL; abfd = abfd->link.next)
+ if (bfd_get_flavour (abfd) == bfd_target_elf_flavour
+ && bfd_count_sections (abfd) != 0
+ && !((lang_input_statement_type *) abfd->usrdata)->flags.just_syms)
+ break;
+
+ /* If there are no ELF input files do not try to create a .nx-module-name section. */
+ if (abfd == NULL || !setup_nx_module_name (abfd, link_info.output_bfd))
+ {
+ free ((char *) ldelf_emit_nx_module_name);
+ ldelf_emit_nx_module_name = NULL;
+ }
+ }
+
get_elf_backend_data (link_info.output_bfd)->setup_gnu_properties (&link_info);
/* Do not allow executable files to be used as inputs to the link. */
diff --git a/ld/ldelf.h b/ld/ldelf.h
index 239194772c4..68516dbf45e 100644
--- a/ld/ldelf.h
+++ b/ld/ldelf.h
@@ -20,6 +20,7 @@
extern const char *ldelf_emit_note_gnu_build_id;
extern const char *ldelf_emit_note_fdo_package_metadata;
+extern const char *ldelf_emit_nx_module_name;
extern void ldelf_after_parse (void);
extern bool ldelf_load_symbols (lang_input_statement_type *);

View File

@@ -1,5 +1,5 @@
diff --git a/gcc/config.gcc b/gcc/config.gcc diff --git a/gcc/config.gcc b/gcc/config.gcc
index 6fd1594480a..31deea1c63b 100644 index 648b3dc2110..ed605b28956 100644
--- a/gcc/config.gcc --- a/gcc/config.gcc
+++ b/gcc/config.gcc +++ b/gcc/config.gcc
@@ -1132,7 +1132,14 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*) @@ -1132,7 +1132,14 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
@@ -17,19 +17,6 @@ index 6fd1594480a..31deea1c63b 100644
;; ;;
aarch64-*-fuchsia*) aarch64-*-fuchsia*)
tm_file="${tm_file} fuchsia.h" tm_file="${tm_file} fuchsia.h"
diff --git a/gcc/config/aarch64/aarch64-builtins.cc b/gcc/config/aarch64/aarch64-builtins.cc
index cc6b7c01fd1..44d53659a2f 100644
--- a/gcc/config/aarch64/aarch64-builtins.cc
+++ b/gcc/config/aarch64/aarch64-builtins.cc
@@ -1547,7 +1547,7 @@ aarch64_scalar_builtin_type_p (aarch64_simd_type t)
/* Enable AARCH64_FL_* flags EXTRA_FLAGS on top of the base Advanced SIMD
set. */
-aarch64_simd_switcher::aarch64_simd_switcher (unsigned int extra_flags)
+aarch64_simd_switcher::aarch64_simd_switcher (uint64_t extra_flags)
: m_old_asm_isa_flags (aarch64_asm_isa_flags),
m_old_general_regs_only (TARGET_GENERAL_REGS_ONLY)
{
diff --git a/gcc/config/aarch64/aarch64-elf-raw.h b/gcc/config/aarch64/aarch64-elf-raw.h diff --git a/gcc/config/aarch64/aarch64-elf-raw.h b/gcc/config/aarch64/aarch64-elf-raw.h
index ec45f23fa41..a208eabd806 100644 index ec45f23fa41..a208eabd806 100644
--- a/gcc/config/aarch64/aarch64-elf-raw.h --- a/gcc/config/aarch64/aarch64-elf-raw.h
@@ -59,29 +46,11 @@ index a9f3e2715ca..0c7304e1d81 100644
/* The code model defines the address generation strategy. /* The code model defines the address generation strategy.
Most have a PIC and non-PIC variant. */ Most have a PIC and non-PIC variant. */
enum aarch64_code_model { enum aarch64_code_model {
diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h
index 63339fa47df..02b4d3cbb8f 100644
--- a/gcc/config/aarch64/aarch64-protos.h
+++ b/gcc/config/aarch64/aarch64-protos.h
@@ -733,11 +733,11 @@ const unsigned int AARCH64_BUILTIN_CLASS = (1 << AARCH64_BUILTIN_SHIFT) - 1;
class aarch64_simd_switcher
{
public:
- aarch64_simd_switcher (unsigned int extra_flags = 0);
+ aarch64_simd_switcher (uint64_t extra_flags = 0);
~aarch64_simd_switcher ();
private:
- unsigned long m_old_asm_isa_flags;
+ uint64_t m_old_asm_isa_flags;
bool m_old_general_regs_only;
};
diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
index 0f04ab9fba0..c524a2f76ba 100644 index f5db5379543..f582e5a7543 100644
--- a/gcc/config/aarch64/aarch64.cc --- a/gcc/config/aarch64/aarch64.cc
+++ b/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc
@@ -19555,8 +19555,24 @@ aarch64_load_tp (rtx target) @@ -19550,8 +19550,24 @@ aarch64_load_tp (rtx target)
|| !register_operand (target, Pmode)) || !register_operand (target, Pmode))
target = gen_reg_rtx (Pmode); target = gen_reg_rtx (Pmode);
@@ -109,7 +78,7 @@ index 0f04ab9fba0..c524a2f76ba 100644
} }
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
index 155cace6afe..93ff5264a2e 100644 index 73b09e20508..ad62b5080cc 100644
--- a/gcc/config/aarch64/aarch64.h --- a/gcc/config/aarch64/aarch64.h
+++ b/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h
@@ -1154,6 +1154,10 @@ typedef struct @@ -1154,6 +1154,10 @@ typedef struct
@@ -124,7 +93,7 @@ index 155cace6afe..93ff5264a2e 100644
/* When using the tiny addressing model conditional and unconditional branches /* When using the tiny addressing model conditional and unconditional branches
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
index 022eef80bc1..2024af16a17 100644 index 36d0bb3f718..cfa2f7efc7f 100644
--- a/gcc/config/aarch64/aarch64.md --- a/gcc/config/aarch64/aarch64.md
+++ b/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md
@@ -7068,11 +7068,22 @@ @@ -7068,11 +7068,22 @@

View File

@@ -1,5 +1,5 @@
diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 4309cd3a4..fad31dbe0 100644 index 0d4460b58..0eab54b65 100644
--- a/libgloss/Makefile.am --- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am +++ b/libgloss/Makefile.am
@@ -87,6 +87,9 @@ endif @@ -87,6 +87,9 @@ endif
@@ -13,10 +13,10 @@ index 4309cd3a4..fad31dbe0 100644
include lm32/Makefile.inc include lm32/Makefile.inc
endif endif
diff --git a/libgloss/Makefile.in b/libgloss/Makefile.in diff --git a/libgloss/Makefile.in b/libgloss/Makefile.in
index a117577ea..44731970d 100644 index fd845cf5f..5f80b89ab 100644
--- a/libgloss/Makefile.in --- a/libgloss/Makefile.in
+++ b/libgloss/Makefile.in +++ b/libgloss/Makefile.in
@@ -173,23 +173,26 @@ check_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3) @@ -173,25 +173,28 @@ check_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3)
@CONFIG_IQ2000_TRUE@am__append_26 = iq2000/test @CONFIG_IQ2000_TRUE@am__append_26 = iq2000/test
@CONFIG_LIBNOSYS_TRUE@am__append_27 = libnosys/nosys.specs @CONFIG_LIBNOSYS_TRUE@am__append_27 = libnosys/nosys.specs
@CONFIG_LIBNOSYS_TRUE@am__append_28 = libnosys/libnosys.a @CONFIG_LIBNOSYS_TRUE@am__append_28 = libnosys/libnosys.a
@@ -42,17 +42,61 @@ index a117577ea..44731970d 100644
@CONFIG_RISCV_TRUE@ riscv/semihost.specs \ @CONFIG_RISCV_TRUE@ riscv/semihost.specs \
@CONFIG_RISCV_TRUE@ riscv/crt0.o @CONFIG_RISCV_TRUE@ riscv/crt0.o
-@CONFIG_RISCV_TRUE@am__append_35 = riscv/libgloss.a \ -@CONFIG_RISCV_TRUE@am__append_35 = riscv/libgloss.a riscv/libsim.a \
+@CONFIG_RISCV_TRUE@am__append_37 = riscv/libgloss.a \ +@CONFIG_RISCV_TRUE@am__append_37 = riscv/libgloss.a riscv/libsim.a \
@CONFIG_RISCV_TRUE@ riscv/libsemihost.a @CONFIG_RISCV_TRUE@ riscv/libsemihost.a
-@CONFIG_WINCE_TRUE@am__append_36 = $(gdbdir) -@CONFIG_WINCE_TRUE@am__append_36 = $(gdbdir)
-@CONFIG_WINCE_TRUE@am__append_37 = wince/stub.exe -@CONFIG_WINCE_TRUE@am__append_37 = wince/stub.exe
-@CONFIG_XTENSA_TRUE@am__append_38 = -D_LIBGLOSS -I$(srcdir)/xtensa/include
-@CONFIG_XTENSA_TRUE@am__append_39 = \
+@CONFIG_WINCE_TRUE@am__append_38 = $(gdbdir) +@CONFIG_WINCE_TRUE@am__append_38 = $(gdbdir)
+@CONFIG_WINCE_TRUE@am__append_39 = wince/stub.exe +@CONFIG_WINCE_TRUE@am__append_39 = wince/stub.exe
+@CONFIG_XTENSA_TRUE@am__append_40 = -D_LIBGLOSS -I$(srcdir)/xtensa/include
+@CONFIG_XTENSA_TRUE@am__append_41 = \
@CONFIG_XTENSA_TRUE@ xtensa/default.specs \
@CONFIG_XTENSA_TRUE@ xtensa/nano.specs \
@CONFIG_XTENSA_TRUE@ xtensa/sim.elf.specs \
@@ -200,27 +203,27 @@ check_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3)
@CONFIG_XTENSA_TRUE@ xtensa/sys.openocd.specs \
@CONFIG_XTENSA_TRUE@ xtensa/crt0.o
-@CONFIG_XTENSA_TRUE@am__append_40 = \
+@CONFIG_XTENSA_TRUE@am__append_42 = \
@CONFIG_XTENSA_TRUE@ xtensa/crt0.S \
@CONFIG_XTENSA_TRUE@ xtensa/crt1-sim.S \
@CONFIG_XTENSA_TRUE@ xtensa/crt1-boards.S
-@CONFIG_XTENSA_TRUE@am__append_41 = xtensa/libgloss.a
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_42 = \
+@CONFIG_XTENSA_TRUE@am__append_43 = xtensa/libgloss.a
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_44 = \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/app.elf.ld \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/crt1-sim.o \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/crt1-boards.o
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_43 = xtensa/libsys_qemu.a \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_45 = xtensa/libsys_qemu.a \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/libsys_openocd.a
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_44 = xtensa/boards/esp32/memory.elf.ld
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_45 = xtensa/boards/esp32/board.c
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_46 = -I$(srcdir)/xtensa/boards/esp32/include
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_47 = -I$(srcdir)/xtensa/boards/esp32/include
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_48 = xtensa/boards/esp32s3/memory.elf.ld
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_49 = xtensa/boards/esp32s3/board.c
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_50 = -I$(srcdir)/xtensa/boards/esp32s3/include
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_51 = -I$(srcdir)/xtensa/boards/esp32s3/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_46 = xtensa/boards/esp32/memory.elf.ld
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_47 = xtensa/boards/esp32/board.c
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_48 = -I$(srcdir)/xtensa/boards/esp32/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_49 = -I$(srcdir)/xtensa/boards/esp32/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_50 = xtensa/boards/esp32s3/memory.elf.ld
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_51 = xtensa/boards/esp32s3/board.c
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_52 = -I$(srcdir)/xtensa/boards/esp32s3/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_53 = -I$(srcdir)/xtensa/boards/esp32s3/include
subdir = . subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
@@ -199,6 +202,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \ @@ -230,6 +233,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
$(top_srcdir)/aarch64/acinclude.m4 \ $(top_srcdir)/aarch64/acinclude.m4 \
$(top_srcdir)/arm/acinclude.m4 $(top_srcdir)/i386/acinclude.m4 \ $(top_srcdir)/arm/acinclude.m4 $(top_srcdir)/i386/acinclude.m4 \
$(top_srcdir)/libnosys/acinclude.m4 \ $(top_srcdir)/libnosys/acinclude.m4 \
@@ -60,9 +104,9 @@ index a117577ea..44731970d 100644
$(top_srcdir)/m68k/acinclude.m4 \ $(top_srcdir)/m68k/acinclude.m4 \
$(top_srcdir)/mcore/acinclude.m4 \ $(top_srcdir)/mcore/acinclude.m4 \
$(top_srcdir)/mips/acinclude.m4 \ $(top_srcdir)/mips/acinclude.m4 \
@@ -421,6 +425,69 @@ libobjs_a_LIBADD = @@ -459,6 +463,69 @@ libobjs_a_LIBADD =
am_libobjs_a_OBJECTS = $(am__objects_3) $(am__objects_4) \ am_libobjs_a_OBJECTS = $(am__objects_3) $(am__objects_4) \
$(am__objects_5) $(am__objects_6) $(am__objects_5) $(am__objects_6) $(am__objects_7)
libobjs_a_OBJECTS = $(am_libobjs_a_OBJECTS) libobjs_a_OBJECTS = $(am_libobjs_a_OBJECTS)
+libsysbase_libpthread_a_AR = $(AR) $(ARFLAGS) +libsysbase_libpthread_a_AR = $(AR) $(ARFLAGS)
+libsysbase_libpthread_a_LIBADD = +libsysbase_libpthread_a_LIBADD =
@@ -130,7 +174,7 @@ index a117577ea..44731970d 100644
lm32_libgloss_a_AR = $(AR) $(ARFLAGS) lm32_libgloss_a_AR = $(AR) $(ARFLAGS)
lm32_libgloss_a_LIBADD = lm32_libgloss_a_LIBADD =
@CONFIG_LM32_TRUE@am_lm32_libgloss_a_OBJECTS = lm32/isatty.$(OBJEXT) \ @CONFIG_LM32_TRUE@am_lm32_libgloss_a_OBJECTS = lm32/isatty.$(OBJEXT) \
@@ -572,7 +639,8 @@ SOURCES = $(aarch64_librdimon_a_SOURCES) $(arc_libnsim_a_SOURCES) \ @@ -668,7 +735,8 @@ SOURCES = $(aarch64_librdimon_a_SOURCES) $(arc_libnsim_a_SOURCES) \
$(bfin_libbfinbsp_a_SOURCES) $(bfin_libsim_a_SOURCES) \ $(bfin_libbfinbsp_a_SOURCES) $(bfin_libsim_a_SOURCES) \
$(csky_libsemi_a_SOURCES) $(d30v_libsim_a_SOURCES) \ $(csky_libsemi_a_SOURCES) $(d30v_libsim_a_SOURCES) \
$(iq2000_libeval_a_SOURCES) $(libnosys_libnosys_a_SOURCES) \ $(iq2000_libeval_a_SOURCES) $(libnosys_libnosys_a_SOURCES) \
@@ -138,9 +182,9 @@ index a117577ea..44731970d 100644
+ $(libobjs_a_SOURCES) $(libsysbase_libpthread_a_SOURCES) \ + $(libobjs_a_SOURCES) $(libsysbase_libpthread_a_SOURCES) \
+ $(libsysbase_libsysbase_a_SOURCES) $(lm32_libgloss_a_SOURCES) \ + $(libsysbase_libsysbase_a_SOURCES) $(lm32_libgloss_a_SOURCES) \
$(nios2_libnios2_a_SOURCES) $(riscv_libgloss_a_SOURCES) \ $(nios2_libnios2_a_SOURCES) $(riscv_libgloss_a_SOURCES) \
$(riscv_libsemihost_a_SOURCES) bfin/sim-test.c iq2000/test.c \ $(riscv_libsemihost_a_SOURCES) $(riscv_libsim_a_SOURCES) \
$(wince_stub_exe_SOURCES) $(xtensa_libgloss_a_SOURCES) \
@@ -662,7 +730,7 @@ ETAGS = etags @@ -761,7 +829,7 @@ ETAGS = etags
CTAGS = ctags CTAGS = ctags
CSCOPE = cscope CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = $(SUBDIRS)
@@ -149,7 +193,16 @@ index a117577ea..44731970d 100644
AARCH64_OBJTYPE = @AARCH64_OBJTYPE@ AARCH64_OBJTYPE = @AARCH64_OBJTYPE@
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
@@ -772,6 +840,7 @@ pdfdir = @pdfdir@ @@ -779,7 +847,7 @@ CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@ $(am__append_38)
+CPPFLAGS = @CPPFLAGS@ $(am__append_40)
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
@@ -874,6 +942,7 @@ pdfdir = @pdfdir@
prefix = @prefix@ prefix = @prefix@
program_transform_name = @program_transform_name@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
@@ -157,34 +210,37 @@ index a117577ea..44731970d 100644
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@ srcdir = @srcdir@
@@ -797,12 +866,13 @@ multilibtooldir = $(tooldir)/lib$(MULTISUBDIR) @@ -899,14 +968,14 @@ multilibtooldir = $(tooldir)/lib$(MULTISUBDIR)
multilibtool_DATA = $(am__append_3) $(am__append_6) $(am__append_7) \ multilibtool_DATA = $(am__append_3) $(am__append_6) $(am__append_7) \
$(am__append_8) $(am__append_13) $(am__append_15) \ $(am__append_8) $(am__append_13) $(am__append_15) \
$(am__append_18) $(am__append_22) $(am__append_23) \ $(am__append_18) $(am__append_22) $(am__append_23) \
- $(am__append_27) $(am__append_29) $(am__append_32) \ - $(am__append_27) $(am__append_29) $(am__append_32) \
- $(am__append_34) - $(am__append_34) $(am__append_39) $(am__append_42) \
- $(am__append_44) $(am__append_48)
+ $(am__append_27) $(am__append_29) $(am__append_31) \ + $(am__append_27) $(am__append_29) $(am__append_31) \
+ $(am__append_34) $(am__append_36) + $(am__append_34) $(am__append_36) $(am__append_41) \
+ $(am__append_44) $(am__append_46) $(am__append_50)
multilibtool_LIBRARIES = $(am__append_2) $(am__append_5) \ multilibtool_LIBRARIES = $(am__append_2) $(am__append_5) \
$(am__append_9) $(am__append_11) $(am__append_20) \ $(am__append_9) $(am__append_11) $(am__append_20) \
$(am__append_21) $(am__append_24) $(am__append_28) \ $(am__append_21) $(am__append_24) $(am__append_28) \
- $(am__append_30) $(am__append_33) $(am__append_35) - $(am__append_30) $(am__append_33) $(am__append_35) \
- $(am__append_41) $(am__append_43)
+ $(am__append_30) $(am__append_32) $(am__append_35) \ + $(am__append_30) $(am__append_32) $(am__append_35) \
+ $(am__append_37) + $(am__append_37) $(am__append_43) $(am__append_45)
includetooldir = $(tooldir)/include includetooldir = $(tooldir)/include
includetool_DATA = $(am__append_16) includetool_DATA = $(am__append_16)
includesystooldir = $(tooldir)/include/sys includesystooldir = $(tooldir)/include/sys
@@ -813,7 +883,7 @@ AM_CPPFLAGS = -idirafter $(srcroot)/include @@ -917,7 +986,7 @@ AM_CPPFLAGS = -idirafter $(srcroot)/include
# to install (e.g. our crt0.o objects). # to install (e.g. our crt0.o objects).
noinst_LIBRARIES = libobjs.a noinst_LIBRARIES = libobjs.a
libobjs_a_SOURCES = $(am__append_14) $(am__append_19) $(am__append_25) \ libobjs_a_SOURCES = $(am__append_14) $(am__append_19) $(am__append_25) \
- $(am__append_31) - $(am__append_31) $(am__append_40)
+ $(am__append_33) + $(am__append_33) $(am__append_42)
FLAGS_TO_PASS = \ FLAGS_TO_PASS = \
"CC=$(CC)" \ "CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \ "CFLAGS=$(CFLAGS)" \
@@ -992,6 +1062,65 @@ TEXINFO_TEX = ../texinfo/texinfo.tex @@ -1098,6 +1167,65 @@ TEXINFO_TEX = ../texinfo/texinfo.tex
@CONFIG_LIBNOSYS_TRUE@ libnosys/write.c \ @CONFIG_LIBNOSYS_TRUE@ libnosys/getentropy.c \
@CONFIG_LIBNOSYS_TRUE@ libnosys/_exit.c @CONFIG_LIBNOSYS_TRUE@ libnosys/_exit.c
+@CONFIG_LIBSYSBASE_TRUE@libsysbase_libpthread_a_SOURCES = \ +@CONFIG_LIBSYSBASE_TRUE@libsysbase_libpthread_a_SOURCES = \
@@ -249,25 +305,51 @@ index a117577ea..44731970d 100644
@CONFIG_LM32_TRUE@lm32_libgloss_a_SOURCES = \ @CONFIG_LM32_TRUE@lm32_libgloss_a_SOURCES = \
@CONFIG_LM32_TRUE@ lm32/isatty.c \ @CONFIG_LM32_TRUE@ lm32/isatty.c \
@CONFIG_LM32_TRUE@ lm32/scall.S @CONFIG_LM32_TRUE@ lm32/scall.S
@@ -1099,7 +1228,7 @@ all: config.h @@ -1203,19 +1331,19 @@ TEXINFO_TEX = ../texinfo/texinfo.tex
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libgloss_a_SOURCES = xtensa/sleep.S \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/syscalls.c \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/window-vectors.S \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_45) \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_49)
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_47) \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_51)
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_qemu_a_CPPFLAGS = -DQEMU_SEMIHOSTING \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_46) \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_50)
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_48) \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_52)
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_qemu_a_SOURCES = \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/sim-vectors.S \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/sim-call.S \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/syscalls.c
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_openocd_a_CPPFLAGS = -DOPENOCD_SEMIHOSTING \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_47) \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_51)
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_49) \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_53)
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_openocd_a_SOURCES = \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/syscalls.c
@@ -1228,7 +1356,7 @@ all: config.h
.SUFFIXES: .S .c .dvi .o .obj .ps .SUFFIXES: .S .c .dvi .o .obj .ps
am--refresh: Makefile am--refresh: Makefile
@: @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__configure_deps) -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
@@ -1121,7 +1250,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @@ -1250,7 +1378,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac; esac;
-$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__empty): -$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__empty):
+$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__empty): +$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__empty):
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck $(SHELL) ./config.status --recheck
@@ -1585,6 +1714,183 @@ libobjs.a: $(libobjs_a_OBJECTS) $(libobjs_a_DEPENDENCIES) $(EXTRA_libobjs_a_DEPE @@ -1730,6 +1858,183 @@ libobjs.a: $(libobjs_a_OBJECTS) $(libobjs_a_DEPENDENCIES) $(EXTRA_libobjs_a_DEPE
$(AM_V_at)-rm -f libobjs.a $(AM_V_at)-rm -f libobjs.a
$(AM_V_AR)$(libobjs_a_AR) libobjs.a $(libobjs_a_OBJECTS) $(libobjs_a_LIBADD) $(AM_V_AR)$(libobjs_a_AR) libobjs.a $(libobjs_a_OBJECTS) $(libobjs_a_LIBADD)
$(AM_V_at)$(RANLIB) libobjs.a $(AM_V_at)$(RANLIB) libobjs.a
@@ -451,7 +533,7 @@ index a117577ea..44731970d 100644
lm32/isatty.$(OBJEXT): lm32/$(am__dirstamp) \ lm32/isatty.$(OBJEXT): lm32/$(am__dirstamp) \
lm32/$(DEPDIR)/$(am__dirstamp) lm32/$(DEPDIR)/$(am__dirstamp)
lm32/scall.$(OBJEXT): lm32/$(am__dirstamp) \ lm32/scall.$(OBJEXT): lm32/$(am__dirstamp) \
@@ -1852,6 +2158,7 @@ mostlyclean-compile: @@ -2113,6 +2418,7 @@ mostlyclean-compile:
-rm -f d30v/*.$(OBJEXT) -rm -f d30v/*.$(OBJEXT)
-rm -f iq2000/*.$(OBJEXT) -rm -f iq2000/*.$(OBJEXT)
-rm -f libnosys/*.$(OBJEXT) -rm -f libnosys/*.$(OBJEXT)
@@ -459,7 +541,7 @@ index a117577ea..44731970d 100644
-rm -f lm32/*.$(OBJEXT) -rm -f lm32/*.$(OBJEXT)
-rm -f nios2/*.$(OBJEXT) -rm -f nios2/*.$(OBJEXT)
-rm -f riscv/*.$(OBJEXT) -rm -f riscv/*.$(OBJEXT)
@@ -1973,6 +2280,60 @@ distclean-compile: @@ -2238,6 +2544,60 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/unlink.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/unlink.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/wait.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/wait.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/write.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/write.Po@am__quote@
@@ -520,7 +602,7 @@ index a117577ea..44731970d 100644
@AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/crt0.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/crt0.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/isatty.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/isatty.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/scall.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/scall.Po@am__quote@
@@ -2717,6 +3078,748 @@ csky/csky_libsemi_a-getpid.obj: csky/getpid.c @@ -3082,6 +3442,748 @@ csky/csky_libsemi_a-getpid.obj: csky/getpid.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(csky_libsemi_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o csky/csky_libsemi_a-getpid.obj `if test -f 'csky/getpid.c'; then $(CYGPATH_W) 'csky/getpid.c'; else $(CYGPATH_W) '$(srcdir)/csky/getpid.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(csky_libsemi_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o csky/csky_libsemi_a-getpid.obj `if test -f 'csky/getpid.c'; then $(CYGPATH_W) 'csky/getpid.c'; else $(CYGPATH_W) '$(srcdir)/csky/getpid.c'; fi`
@@ -1269,7 +1351,7 @@ index a117577ea..44731970d 100644
nios2/nios2_libnios2_a-io-close.o: nios2/io-close.c nios2/nios2_libnios2_a-io-close.o: nios2/io-close.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nios2_libnios2_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nios2/nios2_libnios2_a-io-close.o -MD -MP -MF nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo -c -o nios2/nios2_libnios2_a-io-close.o `test -f 'nios2/io-close.c' || echo '$(srcdir)/'`nios2/io-close.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nios2_libnios2_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nios2/nios2_libnios2_a-io-close.o -MD -MP -MF nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo -c -o nios2/nios2_libnios2_a-io-close.o `test -f 'nios2/io-close.c' || echo '$(srcdir)/'`nios2/io-close.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Po
@@ -4220,6 +5323,8 @@ distclean-generic: @@ -5103,6 +6205,8 @@ distclean-generic:
-rm -f iq2000/$(am__dirstamp) -rm -f iq2000/$(am__dirstamp)
-rm -f libnosys/$(DEPDIR)/$(am__dirstamp) -rm -f libnosys/$(DEPDIR)/$(am__dirstamp)
-rm -f libnosys/$(am__dirstamp) -rm -f libnosys/$(am__dirstamp)
@@ -1278,29 +1360,29 @@ index a117577ea..44731970d 100644
-rm -f lm32/$(DEPDIR)/$(am__dirstamp) -rm -f lm32/$(DEPDIR)/$(am__dirstamp)
-rm -f lm32/$(am__dirstamp) -rm -f lm32/$(am__dirstamp)
-rm -f nios2/$(DEPDIR)/$(am__dirstamp) -rm -f nios2/$(DEPDIR)/$(am__dirstamp)
@@ -4239,7 +5344,7 @@ clean-am: clean-aminfo clean-binPROGRAMS clean-checkPROGRAMS \ @@ -5129,7 +6233,7 @@ clean-am: clean-aminfo clean-binPROGRAMS clean-checkPROGRAMS \
distclean: distclean-recursive distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) - -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
+ -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) + -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
-rm -f Makefile -rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \ distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-local distclean-tags distclean-hdr distclean-local distclean-tags
@@ -4382,7 +5487,7 @@ installcheck-am: @@ -5272,7 +6376,7 @@ installcheck-am:
maintainer-clean: maintainer-clean-recursive maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache -rm -rf $(top_srcdir)/autom4te.cache
- -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) - -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
+ -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) + -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
-rm -f Makefile -rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-aminfo \ maintainer-clean-am: distclean-am maintainer-clean-aminfo \
maintainer-clean-generic maintainer-clean-local maintainer-clean-generic maintainer-clean-local
diff --git a/libgloss/configure b/libgloss/configure diff --git a/libgloss/configure b/libgloss/configure
index 28754b6d5..2e04092ab 100755 index 5f6bc5841..b5e41eb03 100755
--- a/libgloss/configure --- a/libgloss/configure
+++ b/libgloss/configure +++ b/libgloss/configure
@@ -638,6 +638,8 @@ CONFIG_NIOS2_FALSE @@ -649,6 +649,8 @@ CONFIG_NIOS2_FALSE
CONFIG_NIOS2_TRUE CONFIG_NIOS2_TRUE
CONFIG_LM32_FALSE CONFIG_LM32_FALSE
CONFIG_LM32_TRUE CONFIG_LM32_TRUE
@@ -1309,7 +1391,7 @@ index 28754b6d5..2e04092ab 100755
CONFIG_LIBNOSYS_FALSE CONFIG_LIBNOSYS_FALSE
CONFIG_LIBNOSYS_TRUE CONFIG_LIBNOSYS_TRUE
CONFIG_IQ2000_FALSE CONFIG_IQ2000_FALSE
@@ -722,6 +724,7 @@ infodir @@ -733,6 +735,7 @@ infodir
docdir docdir
oldincludedir oldincludedir
includedir includedir
@@ -1317,7 +1399,7 @@ index 28754b6d5..2e04092ab 100755
localstatedir localstatedir
sharedstatedir sharedstatedir
sysconfdir sysconfdir
@@ -800,6 +803,7 @@ datadir='${datarootdir}' @@ -811,6 +814,7 @@ datadir='${datarootdir}'
sysconfdir='${prefix}/etc' sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com' sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var' localstatedir='${prefix}/var'
@@ -1325,7 +1407,7 @@ index 28754b6d5..2e04092ab 100755
includedir='${prefix}/include' includedir='${prefix}/include'
oldincludedir='/usr/include' oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1052,6 +1056,15 @@ do @@ -1063,6 +1067,15 @@ do
| -silent | --silent | --silen | --sile | --sil) | -silent | --silent | --silen | --sile | --sil)
silent=yes ;; silent=yes ;;
@@ -1341,7 +1423,7 @@ index 28754b6d5..2e04092ab 100755
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;; ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1189,7 +1202,7 @@ fi @@ -1200,7 +1213,7 @@ fi
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \ datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
@@ -1350,7 +1432,7 @@ index 28754b6d5..2e04092ab 100755
do do
eval ac_val=\$$ac_var eval ac_val=\$$ac_var
# Remove trailing slashes. # Remove trailing slashes.
@@ -1342,6 +1355,7 @@ Fine tuning of the installation directories: @@ -1353,6 +1366,7 @@ Fine tuning of the installation directories:
--sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var] --localstatedir=DIR modifiable single-machine data [PREFIX/var]
@@ -1358,7 +1440,7 @@ index 28754b6d5..2e04092ab 100755
--libdir=DIR object code libraries [EPREFIX/lib] --libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include] --includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include] --oldincludedir=DIR C header files for non-gcc [/usr/include]
@@ -2745,6 +2759,8 @@ config_testsuite=true @@ -2756,6 +2770,8 @@ config_testsuite=true
config_libnosys=true config_libnosys=true
@@ -1367,7 +1449,7 @@ index 28754b6d5..2e04092ab 100755
host_makefile_frag=${srcdir}/config/default.mh host_makefile_frag=${srcdir}/config/default.mh
target_makefile_frag=${srcdir}/config/default.mt target_makefile_frag=${srcdir}/config/default.mt
@@ -3047,6 +3063,14 @@ else @@ -3061,6 +3077,14 @@ else
CONFIG_LIBNOSYS_FALSE= CONFIG_LIBNOSYS_FALSE=
fi fi
@@ -1382,10 +1464,10 @@ index 28754b6d5..2e04092ab 100755
if test x$config_lm32 = xtrue; then if test x$config_lm32 = xtrue; then
CONFIG_LM32_TRUE= CONFIG_LM32_TRUE=
CONFIG_LM32_FALSE='#' CONFIG_LM32_FALSE='#'
@@ -4924,6 +4948,35 @@ case "${target}" in @@ -4976,6 +5000,35 @@ $as_echo "#define MISSING_SYSCALL_NAMES 1" >>confdefs.h
;;
esac esac
+case "${target}" in +case "${target}" in
+ *-*-cygwin*) ;; + *-*-cygwin*) ;;
+ a29k-amd-udi) ;; + a29k-amd-udi) ;;
@@ -1415,10 +1497,10 @@ index 28754b6d5..2e04092ab 100755
+ ;; + ;;
+esac +esac
+ +
M68K_TARGET=m68k
case "${target}" in case "${target}" in
*-*-cygwin*) ;; fido-*-* | m68*-*-*)
a29k-amd-udi) ;; @@ -5398,6 +5451,10 @@ if test -z "${CONFIG_LIBNOSYS_TRUE}" && test -z "${CONFIG_LIBNOSYS_FALSE}"; then
@@ -5331,6 +5384,10 @@ if test -z "${CONFIG_LIBNOSYS_TRUE}" && test -z "${CONFIG_LIBNOSYS_FALSE}"; then
as_fn_error $? "conditional \"CONFIG_LIBNOSYS\" was never defined. as_fn_error $? "conditional \"CONFIG_LIBNOSYS\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5 Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi fi
@@ -1430,7 +1512,7 @@ index 28754b6d5..2e04092ab 100755
as_fn_error $? "conditional \"CONFIG_LM32\" was never defined. as_fn_error $? "conditional \"CONFIG_LM32\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5 Usually this means the macro was only invoked conditionally." "$LINENO" 5
diff --git a/libgloss/configure.ac b/libgloss/configure.ac diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index 5fb26845c..cf07fb118 100644 index 268d86c51..1b918a61e 100644
--- a/libgloss/configure.ac --- a/libgloss/configure.ac
+++ b/libgloss/configure.ac +++ b/libgloss/configure.ac
@@ -43,6 +43,9 @@ config_testsuite=true @@ -43,6 +43,9 @@ config_testsuite=true
@@ -1443,16 +1525,16 @@ index 5fb26845c..cf07fb118 100644
host_makefile_frag=${srcdir}/config/default.mh host_makefile_frag=${srcdir}/config/default.mh
target_makefile_frag=${srcdir}/config/default.mt target_makefile_frag=${srcdir}/config/default.mt
@@ -247,7 +250,7 @@ AC_SUBST(subdirs) @@ -250,7 +253,7 @@ AC_SUBST(subdirs)
dnl These subdirs have converted to non-recursive make. Hopefully someday all dnl These subdirs have converted to non-recursive make. Hopefully someday all
dnl the ports above will too! dnl the ports above will too!
m4_foreach_w([SUBDIR], [ m4_foreach_w([SUBDIR], [
- aarch64 arc arm bfin csky d30v iq2000 libnosys lm32 nios2 riscv wince - aarch64 arc arm bfin csky d30v iq2000 libnosys lm32 nios2 riscv wince xtensa
+ aarch64 arc arm bfin csky d30v iq2000 libnosys libsysbase lm32 nios2 riscv wince + aarch64 arc arm bfin csky d30v iq2000 libnosys lm32 libsysbase nios2 riscv wince xtensa
], [dnl ], [dnl
AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue) AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue)
]) ])
@@ -343,6 +346,7 @@ m4_include([aarch64/acinclude.m4]) @@ -346,6 +349,7 @@ m4_include([aarch64/acinclude.m4])
m4_include([arm/acinclude.m4]) m4_include([arm/acinclude.m4])
m4_include([i386/acinclude.m4]) m4_include([i386/acinclude.m4])
m4_include([libnosys/acinclude.m4]) m4_include([libnosys/acinclude.m4])
@@ -10157,67 +10239,67 @@ index 36c30092d..7e54036ed 100644
converted to the new style linker. */ converted to the new style linker. */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }
diff --git a/newlib/Makefile.in b/newlib/Makefile.in diff --git a/newlib/Makefile.in b/newlib/Makefile.in
index bc967bd70..8a72f26f7 100644 index 9a32646ab..e5df29f36 100644
--- a/newlib/Makefile.in --- a/newlib/Makefile.in
+++ b/newlib/Makefile.in +++ b/newlib/Makefile.in
@@ -586,6 +586,7 @@ check_PROGRAMS = @@ -596,6 +596,7 @@ check_PROGRAMS =
@HAVE_LIBC_SYS_W65_DIR_TRUE@am__append_63 = libc/sys/w65/syscalls.c libc/sys/w65/trap.c @HAVE_LIBC_SYS_XTENSA_DIR_TRUE@am__append_64 = libc/sys/xtensa/creat.c libc/sys/xtensa/isatty.c libc/sys/xtensa/clibrary_init.c
@HAVE_LIBC_SYS_Z8KSIM_DIR_TRUE@am__append_64 = libc/sys/z8ksim/glue.c @HAVE_LIBC_SYS_Z8KSIM_DIR_TRUE@am__append_65 = libc/sys/z8ksim/glue.c
@HAVE_LIBC_MACHINE_AARCH64_TRUE@am__append_65 = \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@am__append_66 = \
+@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/access.c \ +@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/access.c \
@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/memchr-stub.c \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/memchr-stub.c \
@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/memchr.S \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/memchr.S \
@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/memcmp-stub.c \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/memcmp-stub.c \
@@ -668,7 +669,7 @@ check_PROGRAMS = @@ -679,7 +680,7 @@ check_PROGRAMS =
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy-stub.c \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy-stub.c \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy.S \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy.S \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen-stub.c \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen-stub.c \
-@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen.S -@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen.S
+@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/sync_synchronize.c +@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/sync_synchronize.c
@HAVE_LIBC_MACHINE_BFIN_TRUE@am__append_69 = libc/machine/bfin/setjmp.S libc/machine/bfin/longjmp.S @HAVE_LIBC_MACHINE_BFIN_TRUE@am__append_70 = libc/machine/bfin/setjmp.S libc/machine/bfin/longjmp.S
@HAVE_LIBC_MACHINE_CR16_TRUE@am__append_70 = libc/machine/cr16/setjmp.S libc/machine/cr16/getenv.c @HAVE_LIBC_MACHINE_CR16_TRUE@am__append_71 = libc/machine/cr16/setjmp.S libc/machine/cr16/getenv.c
@@ -767,7 +768,9 @@ check_PROGRAMS = @@ -778,7 +779,9 @@ check_PROGRAMS =
@HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/misc.c libc/machine/nvptx/clock.c @HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/misc.c libc/machine/nvptx/clock.c
@HAVE_LIBC_MACHINE_OR1K_TRUE@am__append_108 = libc/machine/or1k/setjmp.S @HAVE_LIBC_MACHINE_OR1K_TRUE@am__append_109 = libc/machine/or1k/setjmp.S
-@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_109 = libc/machine/powerpc/setjmp.S -@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_110 = libc/machine/powerpc/setjmp.S
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_109 = libc/machine/powerpc/setjmp.S \ +@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_110 = libc/machine/powerpc/setjmp.S \
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/access.c +@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/access.c
+ +
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__append_110 = \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__append_111 = \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfprintf.c \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfprintf.c \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfscanf.c \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfscanf.c \
@@ -1811,7 +1814,8 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \ @@ -1860,7 +1863,8 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \
@HAVE_LIBC_SYS_W65_DIR_TRUE@am__objects_74 = libc/sys/w65/libc_a-syscalls.$(OBJEXT) \ @HAVE_LIBC_SYS_XTENSA_DIR_TRUE@ libc/sys/xtensa/libc_a-isatty.$(OBJEXT) \
@HAVE_LIBC_SYS_W65_DIR_TRUE@ libc/sys/w65/libc_a-trap.$(OBJEXT) @HAVE_LIBC_SYS_XTENSA_DIR_TRUE@ libc/sys/xtensa/libc_a-clibrary_init.$(OBJEXT)
@HAVE_LIBC_SYS_Z8KSIM_DIR_TRUE@am__objects_75 = libc/sys/z8ksim/libc_a-glue.$(OBJEXT) @HAVE_LIBC_SYS_Z8KSIM_DIR_TRUE@am__objects_76 = libc/sys/z8ksim/libc_a-glue.$(OBJEXT)
-@HAVE_LIBC_MACHINE_AARCH64_TRUE@am__objects_76 = libc/machine/aarch64/libc_a-memchr-stub.$(OBJEXT) \ -@HAVE_LIBC_MACHINE_AARCH64_TRUE@am__objects_77 = libc/machine/aarch64/libc_a-memchr-stub.$(OBJEXT) \
+@HAVE_LIBC_MACHINE_AARCH64_TRUE@am__objects_76 = libc/machine/aarch64/libc_a-access.$(OBJEXT) \ +@HAVE_LIBC_MACHINE_AARCH64_TRUE@am__objects_77 = libc/machine/aarch64/libc_a-access.$(OBJEXT) \
+@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memchr-stub.$(OBJEXT) \ +@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memchr-stub.$(OBJEXT) \
@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memchr.$(OBJEXT) \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memchr.$(OBJEXT) \
@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memcmp-stub.$(OBJEXT) \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memcmp-stub.$(OBJEXT) \
@HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memcmp.$(OBJEXT) \ @HAVE_LIBC_MACHINE_AARCH64_TRUE@ libc/machine/aarch64/libc_a-memcmp.$(OBJEXT) \
@@ -1893,7 +1897,7 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \ @@ -1943,7 +1947,7 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy-stub.$(OBJEXT) \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy-stub.$(OBJEXT) \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy.$(OBJEXT) \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy.$(OBJEXT) \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen-stub.$(OBJEXT) \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen-stub.$(OBJEXT) \
-@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen.$(OBJEXT) -@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen.$(OBJEXT)
+@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-sync_synchronize.$(OBJEXT) +@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-sync_synchronize.$(OBJEXT)
@HAVE_LIBC_MACHINE_BFIN_TRUE@am__objects_80 = libc/machine/bfin/libc_a-setjmp.$(OBJEXT) \ @HAVE_LIBC_MACHINE_BFIN_TRUE@am__objects_81 = libc/machine/bfin/libc_a-setjmp.$(OBJEXT) \
@HAVE_LIBC_MACHINE_BFIN_TRUE@ libc/machine/bfin/libc_a-longjmp.$(OBJEXT) @HAVE_LIBC_MACHINE_BFIN_TRUE@ libc/machine/bfin/libc_a-longjmp.$(OBJEXT)
@HAVE_LIBC_MACHINE_CR16_TRUE@am__objects_81 = libc/machine/cr16/libc_a-setjmp.$(OBJEXT) \ @HAVE_LIBC_MACHINE_CR16_TRUE@am__objects_82 = libc/machine/cr16/libc_a-setjmp.$(OBJEXT) \
@@ -2043,7 +2047,8 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \ @@ -2093,7 +2097,8 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \
@HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-misc.$(OBJEXT) \ @HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-misc.$(OBJEXT) \
@HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-clock.$(OBJEXT) @HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-clock.$(OBJEXT)
@HAVE_LIBC_MACHINE_OR1K_TRUE@am__objects_118 = libc/machine/or1k/libc_a-setjmp.$(OBJEXT) @HAVE_LIBC_MACHINE_OR1K_TRUE@am__objects_119 = libc/machine/or1k/libc_a-setjmp.$(OBJEXT)
-@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_119 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT) -@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_120 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT)
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_119 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT) \ +@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_120 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT) \
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/libc_a-access.$(OBJEXT) +@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/libc_a-access.$(OBJEXT)
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__objects_120 = libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT) \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__objects_121 = libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT) \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vfscanf.$(OBJEXT) \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vfscanf.$(OBJEXT) \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vec_malloc.$(OBJEXT) \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vec_malloc.$(OBJEXT) \
@@ -2345,6 +2350,7 @@ am_libc_a_OBJECTS = $(am__objects_1) \ @@ -2402,6 +2407,7 @@ am_libc_a_OBJECTS = $(am__objects_1) \
libc/stdlib/libc_a-strtol.$(OBJEXT) \ libc/stdlib/libc_a-strtol.$(OBJEXT) \
libc/stdlib/libc_a-strtoul.$(OBJEXT) \ libc/stdlib/libc_a-strtoul.$(OBJEXT) \
libc/stdlib/libc_a-strtoumax.$(OBJEXT) \ libc/stdlib/libc_a-strtoumax.$(OBJEXT) \
@@ -10225,7 +10307,7 @@ index bc967bd70..8a72f26f7 100644
libc/stdlib/libc_a-utoa.$(OBJEXT) \ libc/stdlib/libc_a-utoa.$(OBJEXT) \
libc/stdlib/libc_a-wcstod.$(OBJEXT) \ libc/stdlib/libc_a-wcstod.$(OBJEXT) \
libc/stdlib/libc_a-wcstoimax.$(OBJEXT) \ libc/stdlib/libc_a-wcstoimax.$(OBJEXT) \
@@ -3768,6 +3774,7 @@ pdfdir = @pdfdir@ @@ -3937,6 +3943,7 @@ pdfdir = @pdfdir@
prefix = @prefix@ prefix = @prefix@
program_transform_name = @program_transform_name@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
@@ -10233,7 +10315,7 @@ index bc967bd70..8a72f26f7 100644
sbindir = @sbindir@ sbindir = @sbindir@
shared_machine_dir = @shared_machine_dir@ shared_machine_dir = @shared_machine_dir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
@@ -3915,7 +3922,7 @@ libc_a_SOURCES = $(am__append_5) libc/stdlib/__adjust.c \ @@ -4087,7 +4094,7 @@ libc_a_SOURCES = $(am__append_5) libc/stdlib/__adjust.c \
libc/stdlib/sb_charsets.c libc/stdlib/strtod.c \ libc/stdlib/sb_charsets.c libc/stdlib/strtod.c \
libc/stdlib/strtoimax.c libc/stdlib/strtol.c \ libc/stdlib/strtoimax.c libc/stdlib/strtol.c \
libc/stdlib/strtoul.c libc/stdlib/strtoumax.c \ libc/stdlib/strtoul.c libc/stdlib/strtoumax.c \
@@ -10242,7 +10324,7 @@ index bc967bd70..8a72f26f7 100644
libc/stdlib/wcstoimax.c libc/stdlib/wcstol.c \ libc/stdlib/wcstoimax.c libc/stdlib/wcstol.c \
libc/stdlib/wcstoul.c libc/stdlib/wcstoumax.c \ libc/stdlib/wcstoul.c libc/stdlib/wcstoumax.c \
libc/stdlib/wcstombs.c libc/stdlib/wcstombs_r.c \ libc/stdlib/wcstombs.c libc/stdlib/wcstombs_r.c \
@@ -5321,6 +5328,8 @@ libc/stdlib/libc_a-strtoul.$(OBJEXT): libc/stdlib/$(am__dirstamp) \ @@ -5587,6 +5594,8 @@ libc/stdlib/libc_a-strtoul.$(OBJEXT): libc/stdlib/$(am__dirstamp) \
libc/stdlib/$(DEPDIR)/$(am__dirstamp) libc/stdlib/$(DEPDIR)/$(am__dirstamp)
libc/stdlib/libc_a-strtoumax.$(OBJEXT): libc/stdlib/$(am__dirstamp) \ libc/stdlib/libc_a-strtoumax.$(OBJEXT): libc/stdlib/$(am__dirstamp) \
libc/stdlib/$(DEPDIR)/$(am__dirstamp) libc/stdlib/$(DEPDIR)/$(am__dirstamp)
@@ -10251,7 +10333,7 @@ index bc967bd70..8a72f26f7 100644
libc/stdlib/libc_a-utoa.$(OBJEXT): libc/stdlib/$(am__dirstamp) \ libc/stdlib/libc_a-utoa.$(OBJEXT): libc/stdlib/$(am__dirstamp) \
libc/stdlib/$(DEPDIR)/$(am__dirstamp) libc/stdlib/$(DEPDIR)/$(am__dirstamp)
libc/stdlib/libc_a-wcstod.$(OBJEXT): libc/stdlib/$(am__dirstamp) \ libc/stdlib/libc_a-wcstod.$(OBJEXT): libc/stdlib/$(am__dirstamp) \
@@ -7757,6 +7766,9 @@ libc/machine/aarch64/$(am__dirstamp): @@ -8059,6 +8068,9 @@ libc/machine/aarch64/$(am__dirstamp):
libc/machine/aarch64/$(DEPDIR)/$(am__dirstamp): libc/machine/aarch64/$(DEPDIR)/$(am__dirstamp):
@$(MKDIR_P) libc/machine/aarch64/$(DEPDIR) @$(MKDIR_P) libc/machine/aarch64/$(DEPDIR)
@: > libc/machine/aarch64/$(DEPDIR)/$(am__dirstamp) @: > libc/machine/aarch64/$(DEPDIR)/$(am__dirstamp)
@@ -10261,7 +10343,7 @@ index bc967bd70..8a72f26f7 100644
libc/machine/aarch64/libc_a-memchr-stub.$(OBJEXT): \ libc/machine/aarch64/libc_a-memchr-stub.$(OBJEXT): \
libc/machine/aarch64/$(am__dirstamp) \ libc/machine/aarch64/$(am__dirstamp) \
libc/machine/aarch64/$(DEPDIR)/$(am__dirstamp) libc/machine/aarch64/$(DEPDIR)/$(am__dirstamp)
@@ -8021,7 +8033,7 @@ libc/machine/arm/libc_a-memcpy.$(OBJEXT): \ @@ -8326,7 +8338,7 @@ libc/machine/arm/libc_a-memcpy.$(OBJEXT): \
libc/machine/arm/libc_a-strlen-stub.$(OBJEXT): \ libc/machine/arm/libc_a-strlen-stub.$(OBJEXT): \
libc/machine/arm/$(am__dirstamp) \ libc/machine/arm/$(am__dirstamp) \
libc/machine/arm/$(DEPDIR)/$(am__dirstamp) libc/machine/arm/$(DEPDIR)/$(am__dirstamp)
@@ -10270,7 +10352,7 @@ index bc967bd70..8a72f26f7 100644
libc/machine/arm/$(am__dirstamp) \ libc/machine/arm/$(am__dirstamp) \
libc/machine/arm/$(DEPDIR)/$(am__dirstamp) libc/machine/arm/$(DEPDIR)/$(am__dirstamp)
libc/machine/bfin/$(am__dirstamp): libc/machine/bfin/$(am__dirstamp):
@@ -8696,6 +8708,9 @@ libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp): @@ -9001,6 +9013,9 @@ libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp):
libc/machine/powerpc/libc_a-setjmp.$(OBJEXT): \ libc/machine/powerpc/libc_a-setjmp.$(OBJEXT): \
libc/machine/powerpc/$(am__dirstamp) \ libc/machine/powerpc/$(am__dirstamp) \
libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp) libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp)
@@ -10280,7 +10362,7 @@ index bc967bd70..8a72f26f7 100644
libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT): \ libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT): \
libc/machine/powerpc/$(am__dirstamp) \ libc/machine/powerpc/$(am__dirstamp) \
libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp) libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp)
@@ -12256,6 +12271,7 @@ distclean-compile: @@ -12784,6 +12799,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libc/locale/$(DEPDIR)/libc_a-nl_langinfo.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/locale/$(DEPDIR)/libc_a-nl_langinfo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/locale/$(DEPDIR)/libc_a-timelocal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/locale/$(DEPDIR)/libc_a-timelocal.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/locale/$(DEPDIR)/libc_a-uselocale.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/locale/$(DEPDIR)/libc_a-uselocale.Po@am__quote@
@@ -10288,7 +10370,7 @@ index bc967bd70..8a72f26f7 100644
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/aarch64/$(DEPDIR)/libc_a-memchr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/aarch64/$(DEPDIR)/libc_a-memchr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/aarch64/$(DEPDIR)/libc_a-memcmp-stub.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/aarch64/$(DEPDIR)/libc_a-memcmp-stub.Po@am__quote@
@@ -12338,7 +12354,7 @@ distclean-compile: @@ -12867,7 +12883,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcpy.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcpy.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strlen-stub.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strlen-stub.Po@am__quote@
@@ -10297,7 +10379,7 @@ index bc967bd70..8a72f26f7 100644
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-longjmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-longjmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po@am__quote@
@@ -12487,6 +12503,7 @@ distclean-compile: @@ -13016,6 +13032,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-reallocr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-reallocr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-write.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-write.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/or1k/$(DEPDIR)/libc_a-setjmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/or1k/$(DEPDIR)/libc_a-setjmp.Po@am__quote@
@@ -10305,7 +10387,7 @@ index bc967bd70..8a72f26f7 100644
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix16.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix16.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix32.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix32.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix64.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix64.Po@am__quote@
@@ -13113,6 +13130,7 @@ distclean-compile: @@ -13658,6 +13675,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-strtoull_r.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-strtoull_r.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-strtoumax.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-strtoumax.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-system.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-system.Po@am__quote@
@@ -10313,7 +10395,7 @@ index bc967bd70..8a72f26f7 100644
@AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-utoa.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-utoa.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-valloc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-valloc.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-vallocr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/stdlib/$(DEPDIR)/libc_a-vallocr.Po@am__quote@
@@ -16730,20 +16748,6 @@ libc/machine/arm/libc_a-memcpy.obj: libc/machine/arm/memcpy.S @@ -17357,20 +17375,6 @@ libc/machine/arm/libc_a-memcpy.obj: libc/machine/arm/memcpy.S
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -c -o libc/machine/arm/libc_a-memcpy.obj `if test -f 'libc/machine/arm/memcpy.S'; then $(CYGPATH_W) 'libc/machine/arm/memcpy.S'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/memcpy.S'; fi` @am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -c -o libc/machine/arm/libc_a-memcpy.obj `if test -f 'libc/machine/arm/memcpy.S'; then $(CYGPATH_W) 'libc/machine/arm/memcpy.S'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/memcpy.S'; fi`
@@ -10334,7 +10416,7 @@ index bc967bd70..8a72f26f7 100644
libc/machine/bfin/libc_a-setjmp.o: libc/machine/bfin/setjmp.S libc/machine/bfin/libc_a-setjmp.o: libc/machine/bfin/setjmp.S
@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -MT libc/machine/bfin/libc_a-setjmp.o -MD -MP -MF libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo -c -o libc/machine/bfin/libc_a-setjmp.o `test -f 'libc/machine/bfin/setjmp.S' || echo '$(srcdir)/'`libc/machine/bfin/setjmp.S @am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -MT libc/machine/bfin/libc_a-setjmp.o -MD -MP -MF libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo -c -o libc/machine/bfin/libc_a-setjmp.o `test -f 'libc/machine/bfin/setjmp.S' || echo '$(srcdir)/'`libc/machine/bfin/setjmp.S
@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po @am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po
@@ -20666,6 +20670,20 @@ libc/stdlib/libc_a-strtoumax.obj: libc/stdlib/strtoumax.c @@ -21391,6 +21395,20 @@ libc/stdlib/libc_a-strtoumax.obj: libc/stdlib/strtoumax.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdlib/libc_a-strtoumax.obj `if test -f 'libc/stdlib/strtoumax.c'; then $(CYGPATH_W) 'libc/stdlib/strtoumax.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdlib/strtoumax.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/stdlib/libc_a-strtoumax.obj `if test -f 'libc/stdlib/strtoumax.c'; then $(CYGPATH_W) 'libc/stdlib/strtoumax.c'; else $(CYGPATH_W) '$(srcdir)/libc/stdlib/strtoumax.c'; fi`
@@ -10355,7 +10437,7 @@ index bc967bd70..8a72f26f7 100644
libc/stdlib/libc_a-utoa.o: libc/stdlib/utoa.c libc/stdlib/libc_a-utoa.o: libc/stdlib/utoa.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdlib/libc_a-utoa.o -MD -MP -MF libc/stdlib/$(DEPDIR)/libc_a-utoa.Tpo -c -o libc/stdlib/libc_a-utoa.o `test -f 'libc/stdlib/utoa.c' || echo '$(srcdir)/'`libc/stdlib/utoa.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/stdlib/libc_a-utoa.o -MD -MP -MF libc/stdlib/$(DEPDIR)/libc_a-utoa.Tpo -c -o libc/stdlib/libc_a-utoa.o `test -f 'libc/stdlib/utoa.c' || echo '$(srcdir)/'`libc/stdlib/utoa.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/stdlib/$(DEPDIR)/libc_a-utoa.Tpo libc/stdlib/$(DEPDIR)/libc_a-utoa.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/stdlib/$(DEPDIR)/libc_a-utoa.Tpo libc/stdlib/$(DEPDIR)/libc_a-utoa.Po
@@ -32216,6 +32234,20 @@ libc/sys/z8ksim/libc_a-glue.obj: libc/sys/z8ksim/glue.c @@ -33123,6 +33141,20 @@ libc/sys/z8ksim/libc_a-glue.obj: libc/sys/z8ksim/glue.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/sys/z8ksim/libc_a-glue.obj `if test -f 'libc/sys/z8ksim/glue.c'; then $(CYGPATH_W) 'libc/sys/z8ksim/glue.c'; else $(CYGPATH_W) '$(srcdir)/libc/sys/z8ksim/glue.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/sys/z8ksim/libc_a-glue.obj `if test -f 'libc/sys/z8ksim/glue.c'; then $(CYGPATH_W) 'libc/sys/z8ksim/glue.c'; else $(CYGPATH_W) '$(srcdir)/libc/sys/z8ksim/glue.c'; fi`
@@ -10376,7 +10458,7 @@ index bc967bd70..8a72f26f7 100644
libc/machine/aarch64/libc_a-memchr-stub.o: libc/machine/aarch64/memchr-stub.c libc/machine/aarch64/libc_a-memchr-stub.o: libc/machine/aarch64/memchr-stub.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/aarch64/libc_a-memchr-stub.o -MD -MP -MF libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Tpo -c -o libc/machine/aarch64/libc_a-memchr-stub.o `test -f 'libc/machine/aarch64/memchr-stub.c' || echo '$(srcdir)/'`libc/machine/aarch64/memchr-stub.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/aarch64/libc_a-memchr-stub.o -MD -MP -MF libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Tpo -c -o libc/machine/aarch64/libc_a-memchr-stub.o `test -f 'libc/machine/aarch64/memchr-stub.c' || echo '$(srcdir)/'`libc/machine/aarch64/memchr-stub.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Tpo libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Tpo libc/machine/aarch64/$(DEPDIR)/libc_a-memchr-stub.Po
@@ -32734,6 +32766,20 @@ libc/machine/arm/libc_a-strlen-stub.obj: libc/machine/arm/strlen-stub.c @@ -33655,6 +33687,20 @@ libc/machine/arm/libc_a-strlen-stub.obj: libc/machine/arm/strlen-stub.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/arm/libc_a-strlen-stub.obj `if test -f 'libc/machine/arm/strlen-stub.c'; then $(CYGPATH_W) 'libc/machine/arm/strlen-stub.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/strlen-stub.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/arm/libc_a-strlen-stub.obj `if test -f 'libc/machine/arm/strlen-stub.c'; then $(CYGPATH_W) 'libc/machine/arm/strlen-stub.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/strlen-stub.c'; fi`
@@ -10397,7 +10479,7 @@ index bc967bd70..8a72f26f7 100644
libc/machine/cr16/libc_a-getenv.o: libc/machine/cr16/getenv.c libc/machine/cr16/libc_a-getenv.o: libc/machine/cr16/getenv.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/cr16/libc_a-getenv.o -MD -MP -MF libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo -c -o libc/machine/cr16/libc_a-getenv.o `test -f 'libc/machine/cr16/getenv.c' || echo '$(srcdir)/'`libc/machine/cr16/getenv.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/cr16/libc_a-getenv.o -MD -MP -MF libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo -c -o libc/machine/cr16/libc_a-getenv.o `test -f 'libc/machine/cr16/getenv.c' || echo '$(srcdir)/'`libc/machine/cr16/getenv.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po
@@ -33252,6 +33298,20 @@ libc/machine/nvptx/libc_a-clock.obj: libc/machine/nvptx/clock.c @@ -34173,6 +34219,20 @@ libc/machine/nvptx/libc_a-clock.obj: libc/machine/nvptx/clock.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/nvptx/libc_a-clock.obj `if test -f 'libc/machine/nvptx/clock.c'; then $(CYGPATH_W) 'libc/machine/nvptx/clock.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/nvptx/clock.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/nvptx/libc_a-clock.obj `if test -f 'libc/machine/nvptx/clock.c'; then $(CYGPATH_W) 'libc/machine/nvptx/clock.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/nvptx/clock.c'; fi`
@@ -10419,17 +10501,17 @@ index bc967bd70..8a72f26f7 100644
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/powerpc/libc_a-vfprintf.o -MD -MP -MF libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo -c -o libc/machine/powerpc/libc_a-vfprintf.o `test -f 'libc/machine/powerpc/vfprintf.c' || echo '$(srcdir)/'`libc/machine/powerpc/vfprintf.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/powerpc/libc_a-vfprintf.o -MD -MP -MF libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo -c -o libc/machine/powerpc/libc_a-vfprintf.o `test -f 'libc/machine/powerpc/vfprintf.c' || echo '$(srcdir)/'`libc/machine/powerpc/vfprintf.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Po
diff --git a/newlib/configure.host b/newlib/configure.host diff --git a/newlib/configure.host b/newlib/configure.host
index 0a1ba282a..66ccbec57 100644 index 386183466..cc5e33ad7 100644
--- a/newlib/configure.host --- a/newlib/configure.host
+++ b/newlib/configure.host +++ b/newlib/configure.host
@@ -620,13 +620,25 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID @@ -630,13 +630,25 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID
syscall_dir=syscalls syscall_dir=syscalls
;; ;;
aarch64*-*-*) aarch64*-*-*)
+ default_newlib_io_c99_formats="yes" + default_newlib_io_c99_formats="yes"
default_newlib_io_long_long="yes" default_newlib_io_long_long="yes"
+ default_newlib_io_pos_args="yes" + default_newlib_io_pos_args="yes"
+ newlib_cflags="${newlib_cflags} -D__DYNAMIC_REENT__ -DREENTRANT_SYSCALLS_PROVIDED -D__DEFAULT_UTF8__" + newlib_cflags="${newlib_cflags} -D__DYNAMIC_REENT__ -DGETREENT_PROVIDED -DREENTRANT_SYSCALLS_PROVIDED -D__DEFAULT_UTF8__"
+ newlib_cflags="${newlib_cflags} -ffunction-sections -fdata-sections" + newlib_cflags="${newlib_cflags} -ffunction-sections -fdata-sections"
syscall_dir=syscalls syscall_dir=syscalls
;; ;;
@@ -10448,7 +10530,7 @@ index 0a1ba282a..66ccbec57 100644
arm*-*-pe) arm*-*-pe)
syscall_dir=syscalls syscall_dir=syscalls
newlib_cflags="${newlib_cflags} -DHAVE_SYSCONF_PAGESIZE" newlib_cflags="${newlib_cflags} -DHAVE_SYSCONF_PAGESIZE"
@@ -799,7 +811,13 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID @@ -809,7 +821,13 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID
default_newlib_io_long_long="yes" default_newlib_io_long_long="yes"
newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES"
;; ;;
@@ -10552,23 +10634,23 @@ index 000000000..a71a5d847
+ +
+#endif +#endif
diff --git a/newlib/libc/include/math.h b/newlib/libc/include/math.h diff --git a/newlib/libc/include/math.h b/newlib/libc/include/math.h
index 54e30ef82..3a77345e2 100644 index 5e92d2662..b12e73d90 100644
--- a/newlib/libc/include/math.h --- a/newlib/libc/include/math.h
+++ b/newlib/libc/include/math.h +++ b/newlib/libc/include/math.h
@@ -445,7 +445,7 @@ extern float hypotf (float, float); @@ -445,7 +445,7 @@ extern float hypotf (float, float);
simply call the double functions. On Cygwin the long double functions simply call the double functions. On Cygwin the long double functions
are implemented independently from newlib to be able to use optimized are implemented independently from newlib to be able to use optimized
assembler functions despite using the Microsoft x86_64 ABI. */ assembler functions despite using the Microsoft x86_64 ABI. */
-#if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__) -#if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__) || \
+#if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__) || defined (__DEVKITA64__) +#if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__) || defined (__DEVKITA64__) || \
defined(__aarch64__) || defined(__i386__) || defined(__x86_64__) || \
defined(__riscv)
/* Reentrant ANSI C functions. */ /* Reentrant ANSI C functions. */
#ifndef __math_68881
extern long double atanl (long double);
diff --git a/newlib/libc/include/reent.h b/newlib/libc/include/reent.h diff --git a/newlib/libc/include/reent.h b/newlib/libc/include/reent.h
index 23d572cd3..65310c084 100644 index b1dd2a7c4..16e29c037 100644
--- a/newlib/libc/include/reent.h --- a/newlib/libc/include/reent.h
+++ b/newlib/libc/include/reent.h +++ b/newlib/libc/include/reent.h
@@ -150,6 +150,7 @@ extern int _mkdir_r (struct _reent *, const char *, int); @@ -151,6 +151,7 @@ extern int _mkdir_r (struct _reent *, const char *, int);
extern int _open_r (struct _reent *, const char *, int, int); extern int _open_r (struct _reent *, const char *, int, int);
extern _ssize_t _read_r (struct _reent *, int, void *, size_t); extern _ssize_t _read_r (struct _reent *, int, void *, size_t);
extern int _rename_r (struct _reent *, const char *, const char *); extern int _rename_r (struct _reent *, const char *, const char *);
@@ -10865,10 +10947,10 @@ index 5dcc77a80..6930a751d 100644
#ifdef __AMDGCN__ #ifdef __AMDGCN__
diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h
index 45476ce4a..05efc0ab2 100644 index a7d4bc52d..a04f13544 100644
--- a/newlib/libc/include/sys/features.h --- a/newlib/libc/include/sys/features.h
+++ b/newlib/libc/include/sys/features.h +++ b/newlib/libc/include/sys/features.h
@@ -331,6 +331,17 @@ extern "C" { @@ -344,6 +344,17 @@ extern "C" {
# define __SSP_FORTIFY_LEVEL 0 # define __SSP_FORTIFY_LEVEL 0
#endif #endif
@@ -10888,7 +10970,7 @@ index 45476ce4a..05efc0ab2 100644
#ifdef __rtems__ #ifdef __rtems__
diff --git a/newlib/libc/include/sys/iosupport.h b/newlib/libc/include/sys/iosupport.h diff --git a/newlib/libc/include/sys/iosupport.h b/newlib/libc/include/sys/iosupport.h
new file mode 100644 new file mode 100644
index 000000000..8318fda68 index 000000000..335014a4b
--- /dev/null --- /dev/null
+++ b/newlib/libc/include/sys/iosupport.h +++ b/newlib/libc/include/sys/iosupport.h
@@ -0,0 +1,140 @@ @@ -0,0 +1,140 @@
@@ -10961,7 +11043,7 @@ index 000000000..8318fda68
+ int (*lstat_r)(struct _reent *r, const char *file, struct stat *st); + int (*lstat_r)(struct _reent *r, const char *file, struct stat *st);
+ int (*utimes_r)(struct _reent *r, const char *filename, const struct timeval times[2]); + int (*utimes_r)(struct _reent *r, const char *filename, const struct timeval times[2]);
+ +
+ long (*fpathconf_r)(struct _reent *r, int fd, int name); + long (*fpathconf_r)(struct _reent *r, void *fd, int name);
+ long (*pathconf_r)(struct _reent *r, const char *path, int name); + long (*pathconf_r)(struct _reent *r, const char *path, int name);
+ +
+ int (*symlink_r)(struct _reent *r, const char *target, const char *linkpath); + int (*symlink_r)(struct _reent *r, const char *target, const char *linkpath);
@@ -11047,10 +11129,10 @@ index 9a6f115a6..142e71d35 100644
#define MAXPATHLEN PATH_MAX #define MAXPATHLEN PATH_MAX
diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
index 6d8b005b2..8aefe6b0f 100644 index a02e7c2bd..61de73f88 100644
--- a/newlib/libc/include/sys/reent.h --- a/newlib/libc/include/sys/reent.h
+++ b/newlib/libc/include/sys/reent.h +++ b/newlib/libc/include/sys/reent.h
@@ -419,6 +419,8 @@ struct _reent @@ -420,6 +420,8 @@ struct _reent
__FILE *__sf; /* file descriptors */ __FILE *__sf; /* file descriptors */
struct _misc_reent *_misc; /* strtok, multibyte states */ struct _misc_reent *_misc; /* strtok, multibyte states */
char *_signal_buf; /* strsignal */ char *_signal_buf; /* strsignal */
@@ -11059,7 +11141,7 @@ index 6d8b005b2..8aefe6b0f 100644
}; };
# define _REENT_INIT(var) \ # define _REENT_INIT(var) \
@@ -639,6 +641,8 @@ struct _reent @@ -648,6 +650,8 @@ struct _reent
/* signal info */ /* signal info */
void (**_sig_func)(int); void (**_sig_func)(int);
@@ -11155,7 +11237,7 @@ index 5e937f103..b7b4de67d 100644
}; };
#endif #endif
diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c
index 65e2b1833..d3171515d 100644 index b16ec1511..655e01366 100644
--- a/newlib/libc/locale/locale.c --- a/newlib/libc/locale/locale.c
+++ b/newlib/libc/locale/locale.c +++ b/newlib/libc/locale/locale.c
@@ -198,7 +198,11 @@ static char *categories[_LC_LAST] = { @@ -198,7 +198,11 @@ static char *categories[_LC_LAST] = {
@@ -11231,7 +11313,7 @@ index 65e2b1833..d3171515d 100644
{ {
{ NULL, NULL }, /* LC_ALL */ { NULL, NULL }, /* LC_ALL */
diff --git a/newlib/libc/locale/setlocale.h b/newlib/libc/locale/setlocale.h diff --git a/newlib/libc/locale/setlocale.h b/newlib/libc/locale/setlocale.h
index 3530ec664..0a62bfd72 100644 index 7abf92f7e..511a616bc 100644
--- a/newlib/libc/locale/setlocale.h --- a/newlib/libc/locale/setlocale.h
+++ b/newlib/libc/locale/setlocale.h +++ b/newlib/libc/locale/setlocale.h
@@ -234,11 +234,11 @@ __get_locale_r (struct _reent *r) @@ -234,11 +234,11 @@ __get_locale_r (struct _reent *r)
@@ -11251,7 +11333,7 @@ index 3530ec664..0a62bfd72 100644
/* Only access fixed "C" locale using this function. Fake for !_MB_CAPABLE /* Only access fixed "C" locale using this function. Fake for !_MB_CAPABLE
diff --git a/newlib/libc/machine/aarch64/Makefile.inc b/newlib/libc/machine/aarch64/Makefile.inc diff --git a/newlib/libc/machine/aarch64/Makefile.inc b/newlib/libc/machine/aarch64/Makefile.inc
index 063a2a84a..790b07e7b 100644 index 1068d88ce..3175fe439 100644
--- a/newlib/libc/machine/aarch64/Makefile.inc --- a/newlib/libc/machine/aarch64/Makefile.inc
+++ b/newlib/libc/machine/aarch64/Makefile.inc +++ b/newlib/libc/machine/aarch64/Makefile.inc
@@ -1,4 +1,5 @@ @@ -1,4 +1,5 @@
@@ -11497,7 +11579,7 @@ index 2d6c08d71..81b4f119d 100644
+ %D%/sync_synchronize.c + %D%/sync_synchronize.c
+ +
diff --git a/newlib/libc/machine/arm/setjmp.S b/newlib/libc/machine/arm/setjmp.S diff --git a/newlib/libc/machine/arm/setjmp.S b/newlib/libc/machine/arm/setjmp.S
index c615f2428..3a3bfd05e 100644 index 5e5952296..9281cdb54 100644
--- a/newlib/libc/machine/arm/setjmp.S --- a/newlib/libc/machine/arm/setjmp.S
+++ b/newlib/libc/machine/arm/setjmp.S +++ b/newlib/libc/machine/arm/setjmp.S
@@ -2,6 +2,8 @@ @@ -2,6 +2,8 @@
@@ -11760,7 +11842,7 @@ index 000000000..04ebd1ee0
+#endif /* _NEWLIB_STDIO_H */ +#endif /* _NEWLIB_STDIO_H */
+ +
diff --git a/newlib/libc/stdio/fread.c b/newlib/libc/stdio/fread.c diff --git a/newlib/libc/stdio/fread.c b/newlib/libc/stdio/fread.c
index df8321461..6ea00229d 100644 index 8664dc3e5..dbaba0264 100644
--- a/newlib/libc/stdio/fread.c --- a/newlib/libc/stdio/fread.c
+++ b/newlib/libc/stdio/fread.c +++ b/newlib/libc/stdio/fread.c
@@ -135,7 +135,7 @@ crlf_r (struct _reent * ptr, @@ -135,7 +135,7 @@ crlf_r (struct _reent * ptr,
@@ -11772,7 +11854,7 @@ index df8321461..6ea00229d 100644
} }
#endif #endif
@@ -187,7 +187,6 @@ _fread_r (struct _reent * ptr, @@ -191,7 +191,6 @@ _fread_r (struct _reent * ptr,
int rc = 0; int rc = 0;
/* save fp buffering state */ /* save fp buffering state */
void *old_base = fp->_bf._base; void *old_base = fp->_bf._base;
@@ -11780,7 +11862,7 @@ index df8321461..6ea00229d 100644
int old_size = fp->_bf._size; int old_size = fp->_bf._size;
/* allow __refill to use user's buffer */ /* allow __refill to use user's buffer */
fp->_bf._base = (unsigned char *) p; fp->_bf._base = (unsigned char *) p;
@@ -197,7 +196,7 @@ _fread_r (struct _reent * ptr, @@ -201,7 +200,7 @@ _fread_r (struct _reent * ptr,
/* restore fp buffering back to original state */ /* restore fp buffering back to original state */
fp->_bf._base = old_base; fp->_bf._base = old_base;
fp->_bf._size = old_size; fp->_bf._size = old_size;
@@ -11789,7 +11871,7 @@ index df8321461..6ea00229d 100644
resid -= fp->_r; resid -= fp->_r;
p += fp->_r; p += fp->_r;
fp->_r = 0; fp->_r = 0;
@@ -218,27 +217,63 @@ _fread_r (struct _reent * ptr, @@ -222,27 +221,63 @@ _fread_r (struct _reent * ptr,
else else
#endif /* !PREFER_SIZE_OVER_SPEED && !__OPTIMIZE_SIZE__ */ #endif /* !PREFER_SIZE_OVER_SPEED && !__OPTIMIZE_SIZE__ */
{ {
@@ -11872,7 +11954,7 @@ index df8321461..6ea00229d 100644
fp->_r -= resid; fp->_r -= resid;
fp->_p += resid; fp->_p += resid;
diff --git a/newlib/libc/stdio/local.h b/newlib/libc/stdio/local.h diff --git a/newlib/libc/stdio/local.h b/newlib/libc/stdio/local.h
index b34c7c9d8..f18dc4301 100644 index 63c0618f1..dd3801900 100644
--- a/newlib/libc/stdio/local.h --- a/newlib/libc/stdio/local.h
+++ b/newlib/libc/stdio/local.h +++ b/newlib/libc/stdio/local.h
@@ -56,7 +56,7 @@ @@ -56,7 +56,7 @@
@@ -11909,7 +11991,7 @@ index d8dfdbd82..a85b5a99b 100644
return 0; return 0;
} }
diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c
index 6a198e2c6..5ded3fd6e 100644 index feb1fab56..7a59eb21f 100644
--- a/newlib/libc/stdio/vfprintf.c --- a/newlib/libc/stdio/vfprintf.c
+++ b/newlib/libc/stdio/vfprintf.c +++ b/newlib/libc/stdio/vfprintf.c
@@ -108,6 +108,8 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>, @@ -108,6 +108,8 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
@@ -11921,7 +12003,7 @@ index 6a198e2c6..5ded3fd6e 100644
#if defined(LIBC_SCCS) && !defined(lint) #if defined(LIBC_SCCS) && !defined(lint)
/*static char *sccsid = "from: @(#)vfprintf.c 5.50 (Berkeley) 12/16/92";*/ /*static char *sccsid = "from: @(#)vfprintf.c 5.50 (Berkeley) 12/16/92";*/
static char *rcsid = "$Id$"; static char *rcsid = "$Id$";
@@ -1431,7 +1433,7 @@ reswitch: switch (ch) { @@ -1188,7 +1190,7 @@ reswitch: switch (ch) {
string: string:
#endif #endif
sign = '\0'; sign = '\0';
@@ -11930,7 +12012,7 @@ index 6a198e2c6..5ded3fd6e 100644
/* Behavior is undefined if the user passed a /* Behavior is undefined if the user passed a
NULL string when precision is not 0. NULL string when precision is not 0.
However, if we are not optimizing for size, However, if we are not optimizing for size,
@@ -1441,7 +1443,7 @@ string: @@ -1198,7 +1200,7 @@ string:
size = ((unsigned) prec > 6U) ? 6 : prec; size = ((unsigned) prec > 6U) ? 6 : prec;
} }
else else
@@ -11940,7 +12022,7 @@ index 6a198e2c6..5ded3fd6e 100644
if (ch == 'S' || (flags & LONGINT)) { if (ch == 'S' || (flags & LONGINT)) {
mbstate_t ps; mbstate_t ps;
diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c
index cfeea9876..ab7e9d7f1 100644 index 71e2c3e22..bd2d635ed 100644
--- a/newlib/libc/stdio/vfscanf.c --- a/newlib/libc/stdio/vfscanf.c
+++ b/newlib/libc/stdio/vfscanf.c +++ b/newlib/libc/stdio/vfscanf.c
@@ -74,6 +74,8 @@ These are GNU extensions. @@ -74,6 +74,8 @@ These are GNU extensions.
@@ -11953,7 +12035,7 @@ index cfeea9876..ab7e9d7f1 100644
#include <reent.h> #include <reent.h>
#include <newlib.h> #include <newlib.h>
diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c
index 7807a1229..30526cb70 100644 index 5a5c36829..3eaca0ce6 100644
--- a/newlib/libc/stdio/vfwprintf.c --- a/newlib/libc/stdio/vfwprintf.c
+++ b/newlib/libc/stdio/vfwprintf.c +++ b/newlib/libc/stdio/vfwprintf.c
@@ -92,6 +92,9 @@ SEEALSO @@ -92,6 +92,9 @@ SEEALSO
@@ -11967,7 +12049,7 @@ index 7807a1229..30526cb70 100644
#ifdef INTEGER_ONLY #ifdef INTEGER_ONLY
diff --git a/newlib/libc/stdio/vfwscanf.c b/newlib/libc/stdio/vfwscanf.c diff --git a/newlib/libc/stdio/vfwscanf.c b/newlib/libc/stdio/vfwscanf.c
index df966f929..106d99e94 100644 index d2f91dde2..de80cc0c0 100644
--- a/newlib/libc/stdio/vfwscanf.c --- a/newlib/libc/stdio/vfwscanf.c
+++ b/newlib/libc/stdio/vfwscanf.c +++ b/newlib/libc/stdio/vfwscanf.c
@@ -74,6 +74,9 @@ PORTABILITY @@ -74,6 +74,9 @@ PORTABILITY
@@ -11992,6 +12074,45 @@ index 9812add76..8410f2633 100644
%D%/utoa.c \ %D%/utoa.c \
%D%/wcstod.c \ %D%/wcstod.c \
%D%/wcstoimax.c \ %D%/wcstoimax.c \
diff --git a/newlib/libc/stdlib/__call_atexit.c b/newlib/libc/stdlib/__call_atexit.c
index 710440389..985e720bf 100644
--- a/newlib/libc/stdlib/__call_atexit.c
+++ b/newlib/libc/stdlib/__call_atexit.c
@@ -21,6 +21,7 @@ struct _atexit *__atexit = _NULL;
#ifdef _WANT_REGISTER_FINI
+#if 0
/* If "__libc_fini" is defined, finalizers (either
"__libc_fini_array", or "_fini", as appropriate) will be run after
all user-specified atexit handlers. For example, you can define
@@ -36,6 +37,7 @@ struct _atexit *__atexit = _NULL;
used with multiple BSPs, some of which register finalizers from
startup code, while others defer to the C library. */
extern char __libc_fini __attribute__((weak));
+#endif
/* Register the application finalization function with atexit. These
finalizers should run last. Therefore, we want to call atexit as
@@ -46,6 +48,7 @@ register_fini(void) __attribute__((constructor (0)));
static void
register_fini(void)
{
+#if 0
if (&__libc_fini) {
#ifdef _HAVE_INITFINI_ARRAY
extern void __libc_fini_array (void);
@@ -55,6 +58,10 @@ register_fini(void)
atexit (_fini);
#endif
}
+#else
+ extern void __fini (void);
+ atexit (__fini);
+#endif
}
#endif /* _WANT_REGISTER_FINI */
diff --git a/newlib/libc/stdlib/exit.c b/newlib/libc/stdlib/exit.c diff --git a/newlib/libc/stdlib/exit.c b/newlib/libc/stdlib/exit.c
index 9b7bd518b..f0e33bbc1 100644 index 9b7bd518b..f0e33bbc1 100644
--- a/newlib/libc/stdlib/exit.c --- a/newlib/libc/stdlib/exit.c

View File

@@ -62,7 +62,7 @@ then
--enable-lto \ --enable-lto \
--disable-tm-clone-registry \ --disable-tm-clone-registry \
--disable-__cxa_atexit \ --disable-__cxa_atexit \
--with-bugurl="https://github.com/devkitPro/buildscripts/issues" --with-pkgversion="devkitA64 release 22.1" \ --with-bugurl="https://github.com/devkitPro/buildscripts/issues" --with-pkgversion="devkitA64 release 25" \
$CROSS_PARAMS \ $CROSS_PARAMS \
$CROSS_GCC_PARAMS \ $CROSS_GCC_PARAMS \
$EXTRA_GCC_PARAMS \ $EXTRA_GCC_PARAMS \

View File

@@ -66,7 +66,7 @@ then
--with-system-zlib \ --with-system-zlib \
--disable-tm-clone-registry \ --disable-tm-clone-registry \
--disable-__cxa_atexit \ --disable-__cxa_atexit \
--with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 62" \ --with-bugurl="http://wiki.devkitpro.org/index.php/Bug_Reports" --with-pkgversion="devkitARM release 63" \
$CROSS_PARAMS \ $CROSS_PARAMS \
$CROSS_GCC_PARAMS \ $CROSS_GCC_PARAMS \
$EXTRA_GCC_PARAMS \ $EXTRA_GCC_PARAMS \

View File

@@ -1,992 +0,0 @@
diff --git a/config/gthr.m4 b/config/gthr.m4
index 4b937306ad0..bfd0375bd60 100644
--- a/config/gthr.m4
+++ b/config/gthr.m4
@@ -13,6 +13,7 @@ AC_DEFUN([GCC_AC_THREAD_HEADER],
case $1 in
aix) thread_header=config/rs6000/gthr-aix.h ;;
dce) thread_header=config/pa/gthr-dce.h ;;
+ dkp) thread_header=config/rs6000/gthr-dkp.h ;;
gcn) thread_header=config/gcn/gthr-gcn.h ;;
lynx) thread_header=config/gthr-lynx.h ;;
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
diff --git a/gcc/config/i386/host-mingw32.cc b/gcc/config/i386/host-mingw32.cc
index 3b0d83ffc60..6e063b6ccd0 100644
--- a/gcc/config/i386/host-mingw32.cc
+++ b/gcc/config/i386/host-mingw32.cc
@@ -45,7 +45,11 @@ static size_t mingw32_gt_pch_alloc_granularity (void);
static inline void w32_error(const char*, const char*, int, const char*);
/* FIXME: Is this big enough? */
+#if __MINGW64__
+static const size_t pch_VA_max_size = UINT64_C(64 * 1024 * 1024 * 1024);
+#else
static const size_t pch_VA_max_size = 128 * 1024 * 1024;
+#endif
/* Granularity for reserving address space. */
static size_t va_granularity = 0x10000;
diff --git a/gcc/config/newlib-stdint.h b/gcc/config/newlib-stdint.h
index 098f658e74f..50c74877deb 100644
--- a/gcc/config/newlib-stdint.h
+++ b/gcc/config/newlib-stdint.h
@@ -25,7 +25,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
/* newlib uses 32-bit long in certain cases for all non-SPU
targets. */
#ifndef STDINT_LONG32
-#define STDINT_LONG32 (LONG_TYPE_SIZE == 32)
+#define STDINT_LONG32 0
#endif
#define SIG_ATOMIC_TYPE "int"
diff --git a/gcc/config/rs6000/eabi.h b/gcc/config/rs6000/eabi.h
index e58283fe5d4..161767b2b08 100644
--- a/gcc/config/rs6000/eabi.h
+++ b/gcc/config/rs6000/eabi.h
@@ -36,6 +36,8 @@
builtin_assert ("system=embedded"); \
builtin_assert ("cpu=powerpc"); \
builtin_assert ("machine=powerpc"); \
+ builtin_define ("__DEVKITPPC__"); \
+ builtin_define ("__DEVKITPRO__"); \
TARGET_OS_SYSV_CPP_BUILTINS (); \
} \
while (0)
diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h
index bc48f450210..7ba76802670 100644
--- a/gcc/config/rs6000/rs6000.h
+++ b/gcc/config/rs6000/rs6000.h
@@ -199,6 +199,7 @@ ASM_OPT_ANY
/* -mcpu=native handling only makes sense with compiler running on
an PowerPC chip. If changing this condition, also change
the condition in driver-rs6000.cc. */
+#if 0
#if defined(__powerpc__) || defined(__POWERPC__) || defined(_AIX)
/* In driver-rs6000.cc. */
extern const char *host_detect_local_cpu (int argc, const char **argv);
@@ -210,6 +211,8 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#else
#define ASM_CPU_NATIVE_SPEC "%(asm_default)"
#endif
+#endif
+#define ASM_CPU_NATIVE_SPEC "%(asm_default)"
#ifndef CC1_CPU_SPEC
#ifdef HAVE_LOCAL_CPU_DETECT
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 7e2519de5d4..bedfaf31808 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -589,7 +589,11 @@ GNU_USER_TARGET_CC1_SPEC
/* Default starting address if specified. */
#define LINK_START_SPEC "\
-%{mads : %(link_start_ads) ; \
+%{mgcn|mogc : %(link_start_ogc) ; \
+ mvgc : %(link_start_vgc) ; \
+ mgcbios : %(link_start_gcb) ; \
+ mrvl : %(link_start_rvl) ; \
+ mads : %(link_start_ads) ; \
myellowknife : %(link_start_yellowknife) ; \
mmvme : %(link_start_mvme) ; \
msim : %(link_start_sim) ; \
@@ -620,7 +624,8 @@ GNU_USER_TARGET_CC1_SPEC
/* Any specific OS flags. */
#define LINK_OS_SPEC "\
-%{mads : %(link_os_ads) ; \
+%{mgcn|mogc|mvgc|mgcbios|mrvl : %(link_os_ogc) ; \
+ mads : %(link_os_ads) ; \
myellowknife : %(link_os_yellowknife) ; \
mmvme : %(link_os_mvme) ; \
msim : %(link_os_sim) ; \
@@ -635,7 +640,10 @@ GNU_USER_TARGET_CC1_SPEC
/* Override rs6000.h definition. */
#undef CPP_SPEC
#define CPP_SPEC "%{posix: -D_POSIX_SOURCE} \
-%{mads : %(cpp_os_ads) ; \
+%{mgcn : %(cpp_os_gcn) ; \
+ mogc|mvgc|mgcbios : %(cpp_os_ogc) ; \
+ mrvl : %(cpp_os_rvl) ; \
+ mads : %(cpp_os_ads) ; \
myellowknife : %(cpp_os_yellowknife) ; \
mmvme : %(cpp_os_mvme) ; \
msim : %(cpp_os_sim) ; \
@@ -649,7 +657,10 @@ GNU_USER_TARGET_CC1_SPEC
#undef STARTFILE_SPEC
#define STARTFILE_SPEC "\
-%{mads : %(startfile_ads) ; \
+%{mgcn : %(startfile_gcn) ; \
+ mogc|mvgc|mgcbios : %(startfile_ogc) ; \
+ mrvl : %(startfile_ogc) ; \
+ mads : %(startfile_ads) ; \
myellowknife : %(startfile_yellowknife) ; \
mmvme : %(startfile_mvme) ; \
msim : %(startfile_sim) ; \
@@ -663,7 +674,8 @@ GNU_USER_TARGET_CC1_SPEC
#undef LIB_SPEC
#define LIB_SPEC "\
-%{mads : %(lib_ads) ; \
+%{mgcn|mogc|mvgc|mgcbios|mrvl : %(lib_ogc) ; \
+ mads : %(lib_ads) ; \
myellowknife : %(lib_yellowknife) ; \
mmvme : %(lib_mvme) ; \
msim : %(lib_sim) ; \
@@ -673,11 +685,12 @@ GNU_USER_TARGET_CC1_SPEC
mcall-openbsd: %(lib_openbsd) ; \
: %(lib_default) }"
-#define LIB_DEFAULT_SPEC "-lc"
+#define LIB_DEFAULT_SPEC "--start-group -lsysbase -lc --end-group"
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "\
-%{mads : %(endfile_ads) ; \
+%{mgcn|mogc|mvgc|mgcbios|mrvl : %(endfile_ogc) ; \
+ mads : %(endfile_ads) ; \
myellowknife : %(endfile_yellowknife) ; \
mmvme : %(endfile_mvme) ; \
msim : %(endfile_sim) ; \
@@ -693,16 +706,27 @@ GNU_USER_TARGET_CC1_SPEC
/* Motorola ADS support. */
#define LIB_ADS_SPEC "--start-group -lads -lc --end-group"
+#define LIB_OGC_SPEC "--start-group -lsysbase -lc --end-group"
#define STARTFILE_ADS_SPEC "ecrti.o%s crt0.o%s crtbegin.o%s"
+#define STARTFILE_OGC_SPEC "ecrti.o%s crtbegin.o%s crtmain.o%s"
#define ENDFILE_ADS_SPEC "crtend.o%s ecrtn.o%s"
+#define ENDFILE_OGC_SPEC "crtend.o%s ecrtn.o%s"
#define LINK_START_ADS_SPEC "-T ads.ld%s"
+#define LINK_START_OGC_SPEC "-T ogc.ld%s"
+#define LINK_START_RVL_SPEC "-T rvl.ld%s"
+#define LINK_START_VGC_SPEC "-T vgcogc.ld%s"
+#define LINK_START_GCB_SPEC "-T gcbogc.ld%s"
#define LINK_OS_ADS_SPEC ""
+#define LINK_OS_OGC_SPEC "--gc-sections"
#define CPP_OS_ADS_SPEC ""
+#define CPP_OS_GCN_SPEC "-D__gamecube__ -ffunction-sections -fdata-sections"
+#define CPP_OS_OGC_SPEC "-D__gamecube__ -DHW_DOL -ffunction-sections -fdata-sections"
+#define CPP_OS_RVL_SPEC "-D__wii__ -DHW_RVL -ffunction-sections -fdata-sections"
/* Motorola Yellowknife support. */
#define LIB_YELLOWKNIFE_SPEC "--start-group -lyk -lc --end-group"
@@ -850,6 +874,7 @@ ncrtn.o%s"
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
{ "crtsavres_default", CRTSAVRES_DEFAULT_SPEC }, \
+ { "lib_ogc", LIB_OGC_SPEC }, \
{ "lib_ads", LIB_ADS_SPEC }, \
{ "lib_yellowknife", LIB_YELLOWKNIFE_SPEC }, \
{ "lib_mvme", LIB_MVME_SPEC }, \
@@ -859,6 +884,7 @@ ncrtn.o%s"
{ "lib_netbsd", LIB_NETBSD_SPEC }, \
{ "lib_openbsd", LIB_OPENBSD_SPEC }, \
{ "lib_default", LIB_DEFAULT_SPEC }, \
+ { "startfile_ogc", STARTFILE_OGC_SPEC }, \
{ "startfile_ads", STARTFILE_ADS_SPEC }, \
{ "startfile_yellowknife", STARTFILE_YELLOWKNIFE_SPEC }, \
{ "startfile_mvme", STARTFILE_MVME_SPEC }, \
@@ -868,6 +894,7 @@ ncrtn.o%s"
{ "startfile_netbsd", STARTFILE_NETBSD_SPEC }, \
{ "startfile_openbsd", STARTFILE_OPENBSD_SPEC }, \
{ "startfile_default", STARTFILE_DEFAULT_SPEC }, \
+ { "endfile_ogc", ENDFILE_OGC_SPEC }, \
{ "endfile_ads", ENDFILE_ADS_SPEC }, \
{ "endfile_yellowknife", ENDFILE_YELLOWKNIFE_SPEC }, \
{ "endfile_mvme", ENDFILE_MVME_SPEC }, \
@@ -879,7 +906,11 @@ ncrtn.o%s"
{ "endfile_default", ENDFILE_DEFAULT_SPEC }, \
{ "link_shlib", LINK_SHLIB_SPEC }, \
{ "link_start", LINK_START_SPEC }, \
+ { "link_start_vgc", LINK_START_VGC_SPEC }, \
+ { "link_start_gcb", LINK_START_GCB_SPEC }, \
+ { "link_start_rvl", LINK_START_RVL_SPEC }, \
{ "link_start_ads", LINK_START_ADS_SPEC }, \
+ { "link_start_ogc", LINK_START_OGC_SPEC }, \
{ "link_start_yellowknife", LINK_START_YELLOWKNIFE_SPEC }, \
{ "link_start_mvme", LINK_START_MVME_SPEC }, \
{ "link_start_sim", LINK_START_SIM_SPEC }, \
@@ -889,6 +920,7 @@ ncrtn.o%s"
{ "link_start_openbsd", LINK_START_OPENBSD_SPEC }, \
{ "link_start_default", LINK_START_DEFAULT_SPEC }, \
{ "link_os", LINK_OS_SPEC }, \
+ { "link_os_ogc", LINK_OS_OGC_SPEC }, \
{ "link_os_ads", LINK_OS_ADS_SPEC }, \
{ "link_os_yellowknife", LINK_OS_YELLOWKNIFE_SPEC }, \
{ "link_os_mvme", LINK_OS_MVME_SPEC }, \
@@ -900,6 +932,9 @@ ncrtn.o%s"
{ "link_os_default", LINK_OS_DEFAULT_SPEC }, \
{ "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \
{ "link_secure_plt", LINK_SECURE_PLT_SPEC }, \
+ { "cpp_os_gcn", CPP_OS_GCN_SPEC }, \
+ { "cpp_os_ogc", CPP_OS_OGC_SPEC }, \
+ { "cpp_os_rvl", CPP_OS_RVL_SPEC }, \
{ "cpp_os_ads", CPP_OS_ADS_SPEC }, \
{ "cpp_os_yellowknife", CPP_OS_YELLOWKNIFE_SPEC }, \
{ "cpp_os_mvme", CPP_OS_MVME_SPEC }, \
diff --git a/gcc/config/rs6000/sysv4.opt b/gcc/config/rs6000/sysv4.opt
index ac75d67b19a..bdee36872f8 100644
--- a/gcc/config/rs6000/sysv4.opt
+++ b/gcc/config/rs6000/sysv4.opt
@@ -124,6 +124,26 @@ mads
Target RejectNegative
Link with libads.a, libc.a and crt0.o.
+mgcn
+Target RejectNegative
+Link with libsysbase.a and libc.a, use ogc linker script
+
+mogc
+Target RejectNegative
+Link with libsysbase.a and libc.a, use ogc linker script
+
+mgcbios
+Target RejectNegative
+Link with libsysbase.a and libc.a, use gcbogc linker script
+
+mvgc
+Target RejectNegative
+Link with libsysbase.a and libc.a, use gcbogc linker script
+
+mrvl
+Target RejectNegative
+Link with libsysbase.a and libc.a, use rvl linker script
+
myellowknife
Target RejectNegative
Link with libyk.a, libc.a and crt0.o.
diff --git a/gcc/configure b/gcc/configure
index 5ce0557719a..a1c59e87b83 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -12884,7 +12884,7 @@ case ${enable_threads} in
# default
target_thread_file='single'
;;
- aix | dce | lynx | mipssde | posix | rtems | \
+ aix | dce | dkp | lynx | mipssde | posix | rtems | \
single | tpf | vxworks | win32)
target_thread_file=${enable_threads}
;;
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 23bee7010a3..4540b6d3aee 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1994,7 +1994,7 @@ case ${enable_threads} in
# default
target_thread_file='single'
;;
- aix | dce | lynx | mipssde | posix | rtems | \
+ aix | dce | dkp | lynx | mipssde | posix | rtems | \
single | tpf | vxworks | win32)
target_thread_file=${enable_threads}
;;
diff --git a/libgcc/config/rs6000/crtrestvr.S b/libgcc/config/rs6000/crtrestvr.S
index cf224657260..38683e58cb3 100644
--- a/libgcc/config/rs6000/crtrestvr.S
+++ b/libgcc/config/rs6000/crtrestvr.S
@@ -24,7 +24,7 @@
/* On PowerPC64 Linux, these functions are provided by the linker. */
#ifndef __powerpc64__
-
+#if 0
#undef __ALTIVEC__
#define __ALTIVEC__ 1
#include "ppc-asm.h"
@@ -86,3 +86,4 @@ FUNC_END(_restvr_20)
CFI_ENDPROC
#endif
+#endif
diff --git a/libgcc/config/rs6000/crtsavevr.S b/libgcc/config/rs6000/crtsavevr.S
index 65e791741f7..631be3ec5ba 100644
--- a/libgcc/config/rs6000/crtsavevr.S
+++ b/libgcc/config/rs6000/crtsavevr.S
@@ -24,7 +24,7 @@
/* On PowerPC64 Linux, these functions are provided by the linker. */
#ifndef __powerpc64__
-
+#if 0
#undef __ALTIVEC__
#define __ALTIVEC__ 1
#include "ppc-asm.h"
@@ -86,3 +86,4 @@ FUNC_END(_savevr_20)
CFI_ENDPROC
#endif
+#endif
diff --git a/libgcc/config/rs6000/gthr-dkp.c b/libgcc/config/rs6000/gthr-dkp.c
new file mode 100644
index 00000000000..26180aa7f36
--- /dev/null
+++ b/libgcc/config/rs6000/gthr-dkp.c
@@ -0,0 +1,319 @@
+/* Threads compatibility routines for libgcc2 and libobjc. */
+/* Compile this one with gcc. */
+/* Copyright (C) 1997-2016 Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC 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.
+
+GCC 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.
+
+Under Section 7 of GPL version 3, you are granted additional
+permissions described in the GCC Runtime Library Exception, version
+3.1, as published by the Free Software Foundation.
+
+You should have received a copy of the GNU General Public License and
+a copy of the GCC Runtime Library Exception along with this program;
+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+<http://www.gnu.org/licenses/>. */
+
+#define _BUILDING_LIBGCC
+#include "gthr-dkp.h"
+#include <stddef.h>
+
+
+int
+__gthread_active_p (void)
+{
+ if (!__has_gthr_impl(active)) {
+ return 0;
+ }
+
+ return __gthr_impl_active();
+}
+
+int
+__gthread_create (__gthread_t *__threadid, void *(*__func) (void*),
+ void *__args)
+{
+ if (!__has_gthr_impl(create)) {
+ return -1;
+ }
+
+ return __gthr_impl_create(__threadid, __func, __args);
+}
+
+int
+__gthread_join (__gthread_t __threadid, void **__value_ptr)
+{
+ if (!__has_gthr_impl(join)) {
+ return -1;
+ }
+
+ return __gthr_impl_join(__threadid, __value_ptr);
+}
+
+int
+__gthread_detach (__gthread_t __threadid)
+{
+ if (!__has_gthr_impl(detach)) {
+ return -1;
+ }
+
+ return __gthr_impl_detach(__threadid);
+}
+
+int
+__gthread_equal (__gthread_t __t1, __gthread_t __t2)
+{
+ if (!__has_gthr_impl(equal)) {
+ return -1;
+ }
+
+ return __gthr_impl_equal(__t1, __t2);
+}
+
+__gthread_t
+__gthread_self (void)
+{
+ if (!__has_gthr_impl(self)) {
+ __gthread_t result = { 0 };
+ return result;
+ }
+
+ return __gthr_impl_self();
+}
+
+int
+__gthread_yield (void)
+{
+ if (!__has_gthr_impl(yield)) {
+ return -1;
+ }
+
+ return __gthr_impl_yield();
+}
+
+int
+__gthread_once (__gthread_once_t *__once, void (*__func) (void))
+{
+ if (!__has_gthr_impl(once)) {
+ return -1;
+ }
+
+ return __gthr_impl_once(__once, __func);
+}
+
+int
+__gthread_key_create (__gthread_key_t *__key, void (*__dtor) (void *))
+{
+ if (!__has_gthr_impl(key_create)) {
+ return -1;
+ }
+
+ return __gthr_impl_key_create(__key, __dtor);
+}
+
+int
+__gthread_key_delete (__gthread_key_t __key)
+{
+ if (!__has_gthr_impl(key_delete)) {
+ return -1;
+ }
+
+ return __gthr_impl_key_delete(__key);
+}
+
+void *
+__gthread_getspecific (__gthread_key_t __key)
+{
+ if (!__has_gthr_impl(getspecific)) {
+ return NULL;
+ }
+
+ return __gthr_impl_getspecific(__key);
+}
+
+int
+__gthread_setspecific (__gthread_key_t __key, const void *__ptr)
+{
+ if (!__has_gthr_impl(setspecific)) {
+ return -1;
+ }
+
+ return __gthr_impl_setspecific(__key, __ptr);
+}
+
+void
+__gthread_mutex_init_function (__gthread_mutex_t *__mutex)
+{
+ if (__has_gthr_impl(mutex_init_function)) {
+ __gthr_impl_mutex_init_function(__mutex);
+ }
+}
+
+int
+__gthread_mutex_destroy (__gthread_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(mutex_destroy)) {
+ return -1;
+ }
+
+ return __gthr_impl_mutex_destroy(__mutex);
+}
+
+int
+__gthread_mutex_lock (__gthread_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(mutex_lock)) {
+ return -1;
+ }
+
+ return __gthr_impl_mutex_lock(__mutex);
+}
+
+int
+__gthread_mutex_trylock (__gthread_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(mutex_trylock)) {
+ return -1;
+ }
+
+ return __gthr_impl_mutex_trylock(__mutex);
+}
+
+int
+__gthread_mutex_unlock (__gthread_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(mutex_unlock)) {
+ return -1;
+ }
+
+ return __gthr_impl_mutex_unlock(__mutex);
+}
+
+int
+__gthread_recursive_mutex_init_function (__gthread_recursive_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(recursive_mutex_init_function)) {
+ return -1;
+ }
+
+ return __gthr_impl_recursive_mutex_init_function(__mutex);
+}
+
+int
+__gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(recursive_mutex_lock)) {
+ return -1;
+ }
+
+ return __gthr_impl_recursive_mutex_lock(__mutex);
+}
+
+int
+__gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(recursive_mutex_trylock)) {
+ return -1;
+ }
+
+ return __gthr_impl_recursive_mutex_trylock(__mutex);
+}
+
+int
+__gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(recursive_mutex_unlock)) {
+ return -1;
+ }
+
+ return __gthr_impl_recursive_mutex_unlock(__mutex);
+}
+
+int
+__gthread_recursive_mutex_destroy (__gthread_recursive_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(recursive_mutex_destroy)) {
+ return -1;
+ }
+
+ return __gthr_impl_recursive_mutex_destroy(__mutex);
+}
+
+void
+__gthread_cond_init_function (__gthread_cond_t *__cond)
+{
+ if (__has_gthr_impl(cond_init_function)) {
+ __gthr_impl_cond_init_function(__cond);
+ }
+}
+
+int
+__gthread_cond_broadcast (__gthread_cond_t *__cond)
+{
+ if (!__has_gthr_impl(cond_broadcast)) {
+ return -1;
+ }
+
+ return __gthr_impl_cond_broadcast(__cond);
+}
+
+int
+__gthread_cond_signal (__gthread_cond_t *__cond)
+{
+ if (!__has_gthr_impl(cond_signal)) {
+ return -1;
+ }
+
+ return __gthr_impl_cond_signal(__cond);
+}
+
+int
+__gthread_cond_wait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(cond_wait)) {
+ return -1;
+ }
+
+ return __gthr_impl_cond_wait(__cond, __mutex);
+}
+
+int
+__gthread_cond_timedwait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex,
+ const __gthread_time_t *__abs_timeout)
+{
+ if (!__has_gthr_impl(cond_timedwait)) {
+ return -1;
+ }
+
+ return __gthr_impl_cond_timedwait(__cond, __mutex, __abs_timeout);
+}
+
+int
+__gthread_cond_wait_recursive (__gthread_cond_t *__cond,
+ __gthread_recursive_mutex_t *__mutex)
+{
+ if (!__has_gthr_impl(cond_wait_recursive)) {
+ return -1;
+ }
+
+ return __gthr_impl_cond_wait_recursive(__cond, __mutex);
+}
+
+int
+__gthread_cond_destroy (__gthread_cond_t* __cond)
+{
+ if (!__has_gthr_impl(cond_destroy)) {
+ return -1;
+ }
+
+ return __gthr_impl_cond_destroy(__cond);
+}
diff --git a/libgcc/config/rs6000/gthr-dkp.h b/libgcc/config/rs6000/gthr-dkp.h
new file mode 100644
index 00000000000..72ecf82ab83
--- /dev/null
+++ b/libgcc/config/rs6000/gthr-dkp.h
@@ -0,0 +1,187 @@
+/* Threads compatibility routines for libgcc2 and libobjc. */
+/* Compile this one with gcc. */
+/* Copyright (C) 1997-2016 Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC 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.
+
+GCC 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.
+
+Under Section 7 of GPL version 3, you are granted additional
+permissions described in the GCC Runtime Library Exception, version
+3.1, as published by the Free Software Foundation.
+
+You should have received a copy of the GNU General Public License and
+a copy of the GCC Runtime Library Exception along with this program;
+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+<http://www.gnu.org/licenses/>. */
+
+#ifndef _GLIBCXX_GCC_GTHR_DKP_H
+#define _GLIBCXX_GCC_GTHR_DKP_H
+
+#define __GTHREADS 1
+#define __GTHREADS_CXX0X 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef void * __gthread_t;
+typedef struct { int padding[7]; } __gthread_cond_t;
+typedef struct { int padding; } __gthread_key_t;
+typedef struct { int padding[11]; } __gthread_mutex_t;
+typedef struct { int padding; } __gthread_once_t;
+typedef struct { int padding[11]; } __gthread_recursive_mutex_t;
+typedef struct timespec __gthread_time_t;
+
+#define __GTHREAD_HAS_COND 1
+#define _GTHREAD_USE_MUTEX_TIMEDLOCK 0
+
+#define __GTHREAD_ONCE_INIT { 0 }
+#define __GTHREAD_TIME_INIT { 0, 0 }
+
+#define __GTHREAD_COND_INIT_FUNCTION __gthread_cond_init_function
+#define __GTHREAD_MUTEX_INIT_FUNCTION __gthread_mutex_init_function
+#define __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION __gthread_recursive_mutex_init_function
+
+#ifdef _BUILDING_LIBGCC
+#define __GTHR_IMPL(_name) __attribute__((weak)) __gthr_impl_##_name
+#define __has_gthr_impl(_name) (&__gthr_impl_##_name)
+#else
+#define __GTHR_IMPL(_name) __gthr_impl_##_name
+#endif
+
+int __GTHR_IMPL(active) (void);
+int __GTHR_IMPL(create) (__gthread_t *__threadid, void *(*__func) (void*), void *__args);
+int __GTHR_IMPL(join) (__gthread_t __threadid, void **__value_ptr);
+int __GTHR_IMPL(detach) (__gthread_t __threadid);
+int __GTHR_IMPL(equal) (__gthread_t __t1, __gthread_t __t2);
+__gthread_t __GTHR_IMPL(self) (void);
+int __GTHR_IMPL(yield) (void);
+int __GTHR_IMPL(once) (__gthread_once_t *__once, void (*__func) (void));
+int __GTHR_IMPL(key_create) (__gthread_key_t *__key, void (*__dtor) (void *));
+int __GTHR_IMPL(key_delete) (__gthread_key_t __key);
+void * __GTHR_IMPL(getspecific) (__gthread_key_t __key);
+int __GTHR_IMPL(setspecific) (__gthread_key_t __key, const void *__ptr);
+void __GTHR_IMPL(mutex_init_function) (__gthread_mutex_t *__mutex);
+int __GTHR_IMPL(mutex_destroy) (__gthread_mutex_t *__mutex);
+int __GTHR_IMPL(mutex_lock) (__gthread_mutex_t *__mutex);
+int __GTHR_IMPL(mutex_trylock) (__gthread_mutex_t *__mutex);
+int __GTHR_IMPL(mutex_unlock) (__gthread_mutex_t *__mutex);
+int __GTHR_IMPL(recursive_mutex_init_function) (__gthread_recursive_mutex_t *__mutex);
+int __GTHR_IMPL(recursive_mutex_lock) (__gthread_recursive_mutex_t *__mutex);
+int __GTHR_IMPL(recursive_mutex_trylock) (__gthread_recursive_mutex_t *__mutex);
+int __GTHR_IMPL(recursive_mutex_unlock) (__gthread_recursive_mutex_t *__mutex);
+int __GTHR_IMPL(recursive_mutex_destroy) (__gthread_recursive_mutex_t *__mutex);
+void __GTHR_IMPL(cond_init_function) (__gthread_cond_t *__cond);
+int __GTHR_IMPL(cond_broadcast) (__gthread_cond_t *__cond);
+int __GTHR_IMPL(cond_signal) (__gthread_cond_t *__cond);
+int __GTHR_IMPL(cond_wait) (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex);
+int __GTHR_IMPL(cond_timedwait) (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex,
+ const __gthread_time_t *__abs_timeout);
+int __GTHR_IMPL(cond_wait_recursive) (__gthread_cond_t *__cond,
+ __gthread_recursive_mutex_t *__mutex);
+int __GTHR_IMPL(cond_destroy) (__gthread_cond_t* __cond);
+
+int
+__gthread_active_p (void);
+
+int
+__gthread_create (__gthread_t *__threadid, void *(*__func) (void*),
+ void *__args);
+
+int
+__gthread_join (__gthread_t __threadid, void **__value_ptr);
+
+int
+__gthread_detach (__gthread_t __threadid);
+
+int
+__gthread_equal (__gthread_t __t1, __gthread_t __t2);
+
+__gthread_t
+__gthread_self (void);
+
+int
+__gthread_yield (void);
+
+int
+__gthread_once (__gthread_once_t *__once, void (*__func) (void));
+
+int
+__gthread_key_create (__gthread_key_t *__key, void (*__dtor) (void *));
+
+int
+__gthread_key_delete (__gthread_key_t __key);
+
+void *
+__gthread_getspecific (__gthread_key_t __key);
+
+int
+__gthread_setspecific (__gthread_key_t __key, const void *__ptr);
+
+void
+__gthread_mutex_init_function (__gthread_mutex_t *__mutex);
+
+int
+__gthread_mutex_destroy (__gthread_mutex_t *__mutex);
+
+int
+__gthread_mutex_lock (__gthread_mutex_t *__mutex);
+
+int
+__gthread_mutex_trylock (__gthread_mutex_t *__mutex);
+
+int
+__gthread_mutex_unlock (__gthread_mutex_t *__mutex);
+
+int
+__gthread_recursive_mutex_init_function (__gthread_recursive_mutex_t *__mutex);
+
+int
+__gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *__mutex);
+
+int
+__gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *__mutex);
+
+int
+__gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *__mutex);
+
+int
+__gthread_recursive_mutex_destroy (__gthread_recursive_mutex_t *__mutex);
+
+void
+__gthread_cond_init_function (__gthread_cond_t *__cond);
+
+int
+__gthread_cond_broadcast (__gthread_cond_t *__cond);
+
+int
+__gthread_cond_signal (__gthread_cond_t *__cond);
+
+int
+__gthread_cond_wait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex);
+
+int
+__gthread_cond_timedwait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex,
+ const __gthread_time_t *__abs_timeout);
+
+int
+__gthread_cond_wait_recursive (__gthread_cond_t *__cond,
+ __gthread_recursive_mutex_t *__mutex);
+
+int
+__gthread_cond_destroy (__gthread_cond_t* __cond);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* ! _GLIBCXX_GCC_GTHR_DKP_H */
diff --git a/libgcc/config/rs6000/t-ppccomm b/libgcc/config/rs6000/t-ppccomm
index fb812d3801f..7f6669d530f 100644
--- a/libgcc/config/rs6000/t-ppccomm
+++ b/libgcc/config/rs6000/t-ppccomm
@@ -1,4 +1,5 @@
LIB2ADD += $(srcdir)/config/rs6000/ibm-ldouble.c \
+ $(srcdir)/config/rs6000/gthr-dkp.c \
$(srcdir)/config/rs6000/tramp.S
# This can't end up in shared libgcc
diff --git a/libgcc/configure b/libgcc/configure
index 1f9b2ac578b..539fd961156 100755
--- a/libgcc/configure
+++ b/libgcc/configure
@@ -5689,6 +5689,7 @@ tm_file="${tm_file_}"
case $target_thread_file in
aix) thread_header=config/rs6000/gthr-aix.h ;;
dce) thread_header=config/pa/gthr-dce.h ;;
+ dkp) thread_header=config/rs6000/gthr-dkp.h ;;
gcn) thread_header=config/gcn/gthr-gcn.h ;;
lynx) thread_header=config/gthr-lynx.h ;;
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
index b98b86a5a88..3f62b3616d2 100644
--- a/libgcc/crtstuff.c
+++ b/libgcc/crtstuff.c
@@ -325,7 +325,7 @@ register_tm_clones (void)
#ifdef OBJECT_FORMAT_ELF
-#if DEFAULT_USE_CXA_ATEXIT
+#if 1 /* DEFAULT_USE_CXA_ATEXIT */
/* Declare the __dso_handle variable. It should have a unique value
in every shared-object; in a main program its value is zero. The
object should in any case be protected. This means the instance
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index eac60392121..d1c85de1e34 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -15765,6 +15765,7 @@ $as_echo "$target_thread_file" >&6; }
case $target_thread_file in
aix) thread_header=config/rs6000/gthr-aix.h ;;
dce) thread_header=config/pa/gthr-dce.h ;;
+ dkp) thread_header=config/rs6000/gthr-dkp.h ;;
gcn) thread_header=config/gcn/gthr-gcn.h ;;
lynx) thread_header=config/gthr-lynx.h ;;
mipssde) thread_header=config/mips/gthr-mipssde.h ;;
diff --git a/libstdc++-v3/include/std/fstream b/libstdc++-v3/include/std/fstream
index e62a1ade3c2..5f8ec3a1495 100644
--- a/libstdc++-v3/include/std/fstream
+++ b/libstdc++-v3/include/std/fstream
@@ -46,7 +46,7 @@
// This can be overridden by the target's os_defines.h
#ifndef _GLIBCXX_BUFSIZ
-# define _GLIBCXX_BUFSIZ BUFSIZ
+# define _GLIBCXX_BUFSIZ (BUFSIZ+1)
#endif
namespace std _GLIBCXX_VISIBILITY(default)
diff --git a/libstdc++-v3/libsupc++/eh_alloc.cc b/libstdc++-v3/libsupc++/eh_alloc.cc
index c85b9aed40b..a8f3f4a50d2 100644
--- a/libstdc++-v3/libsupc++/eh_alloc.cc
+++ b/libstdc++-v3/libsupc++/eh_alloc.cc
@@ -85,6 +85,7 @@ namespace
{
public:
pool();
+ ~pool();
_GLIBCXX_NODISCARD void *allocate (std::size_t);
void free (void *);
@@ -136,6 +137,15 @@ namespace
first_free_entry->next = NULL;
}
+ pool::~pool()
+ {
+ if (arena)
+ {
+ ::free(arena);
+ arena = 0;
+ }
+ }
+
void *pool::allocate (std::size_t size)
{
__gnu_cxx::__scoped_lock sentry(emergency_mutex);
diff --git a/libstdc++-v3/src/c++17/fs_ops.cc b/libstdc++-v3/src/c++17/fs_ops.cc
index 435368fa5c5..75b78c384b4 100644
--- a/libstdc++-v3/src/c++17/fs_ops.cc
+++ b/libstdc++-v3/src/c++17/fs_ops.cc
@@ -1123,6 +1123,7 @@ fs::permissions(const path& p, perms prms, perm_options opts,
}
int err = 0;
+#ifndef __DEVKITPPC__
#if _GLIBCXX_USE_FCHMODAT
const int flag = (nofollow && is_symlink(st)) ? AT_SYMLINK_NOFOLLOW : 0;
if (::fchmodat(AT_FDCWD, p.c_str(), static_cast<mode_t>(prms), flag))
@@ -1132,6 +1133,7 @@ fs::permissions(const path& p, perms prms, perm_options opts,
ec = std::__unsupported();
else if (posix::chmod(p.c_str(), static_cast<posix::mode_t>(prms)))
err = errno;
+#endif
#endif
if (err)
diff --git a/libstdc++-v3/src/filesystem/ops-common.h b/libstdc++-v3/src/filesystem/ops-common.h
index 978e8724154..f773d3b9b62 100644
--- a/libstdc++-v3/src/filesystem/ops-common.h
+++ b/libstdc++-v3/src/filesystem/ops-common.h
@@ -481,6 +481,7 @@ _GLIBCXX_BEGIN_NAMESPACE_FILESYSTEM
return false;
}
+#ifndef __DEVKITPPC__
#if defined _GLIBCXX_USE_FCHMOD && ! defined _GLIBCXX_FILESYSTEM_IS_WINDOWS
if (::fchmod(out.fd, from_st->st_mode))
#elif defined _GLIBCXX_USE_FCHMODAT && ! defined _GLIBCXX_FILESYSTEM_IS_WINDOWS
@@ -492,6 +493,7 @@ _GLIBCXX_BEGIN_NAMESPACE_FILESYSTEM
ec.assign(errno, std::generic_category());
return false;
}
+#endif
size_t count = from_st->st_size;
#if defined _GLIBCXX_USE_SENDFILE && ! defined _GLIBCXX_FILESYSTEM_IS_WINDOWS
diff --git a/libstdc++-v3/src/filesystem/ops.cc b/libstdc++-v3/src/filesystem/ops.cc
index 896a4918ace..59a155b840e 100644
--- a/libstdc++-v3/src/filesystem/ops.cc
+++ b/libstdc++-v3/src/filesystem/ops.cc
@@ -971,6 +971,7 @@ fs::permissions(const path& p, perms prms, error_code& ec) noexcept
}
int err = 0;
+#ifndef __DEVKITPPC__
#if _GLIBCXX_USE_FCHMODAT
const int flag = (nofollow && is_symlink(st)) ? AT_SYMLINK_NOFOLLOW : 0;
if (::fchmodat(AT_FDCWD, p.c_str(), static_cast<mode_t>(prms), flag))
@@ -980,6 +981,7 @@ fs::permissions(const path& p, perms prms, error_code& ec) noexcept
ec = std::__unsupported();
else if (posix::chmod(p.c_str(), static_cast<mode_t>(prms)))
err = errno;
+#endif
#endif
if (err)

View File

@@ -1,5 +1,5 @@
diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am diff --git a/libgloss/Makefile.am b/libgloss/Makefile.am
index 4309cd3a4..fad31dbe0 100644 index 0d4460b58..0eab54b65 100644
--- a/libgloss/Makefile.am --- a/libgloss/Makefile.am
+++ b/libgloss/Makefile.am +++ b/libgloss/Makefile.am
@@ -87,6 +87,9 @@ endif @@ -87,6 +87,9 @@ endif
@@ -13,10 +13,10 @@ index 4309cd3a4..fad31dbe0 100644
include lm32/Makefile.inc include lm32/Makefile.inc
endif endif
diff --git a/libgloss/Makefile.in b/libgloss/Makefile.in diff --git a/libgloss/Makefile.in b/libgloss/Makefile.in
index a117577ea..2a1a2ff6f 100644 index fd845cf5f..7d314a0bb 100644
--- a/libgloss/Makefile.in --- a/libgloss/Makefile.in
+++ b/libgloss/Makefile.in +++ b/libgloss/Makefile.in
@@ -173,23 +173,25 @@ check_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3) @@ -173,25 +173,27 @@ check_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3)
@CONFIG_IQ2000_TRUE@am__append_26 = iq2000/test @CONFIG_IQ2000_TRUE@am__append_26 = iq2000/test
@CONFIG_LIBNOSYS_TRUE@am__append_27 = libnosys/nosys.specs @CONFIG_LIBNOSYS_TRUE@am__append_27 = libnosys/nosys.specs
@CONFIG_LIBNOSYS_TRUE@am__append_28 = libnosys/libnosys.a @CONFIG_LIBNOSYS_TRUE@am__append_28 = libnosys/libnosys.a
@@ -41,17 +41,61 @@ index a117577ea..2a1a2ff6f 100644
@CONFIG_RISCV_TRUE@ riscv/semihost.specs \ @CONFIG_RISCV_TRUE@ riscv/semihost.specs \
@CONFIG_RISCV_TRUE@ riscv/crt0.o @CONFIG_RISCV_TRUE@ riscv/crt0.o
-@CONFIG_RISCV_TRUE@am__append_35 = riscv/libgloss.a \ -@CONFIG_RISCV_TRUE@am__append_35 = riscv/libgloss.a riscv/libsim.a \
+@CONFIG_RISCV_TRUE@am__append_37 = riscv/libgloss.a \ +@CONFIG_RISCV_TRUE@am__append_37 = riscv/libgloss.a riscv/libsim.a \
@CONFIG_RISCV_TRUE@ riscv/libsemihost.a @CONFIG_RISCV_TRUE@ riscv/libsemihost.a
-@CONFIG_WINCE_TRUE@am__append_36 = $(gdbdir) -@CONFIG_WINCE_TRUE@am__append_36 = $(gdbdir)
-@CONFIG_WINCE_TRUE@am__append_37 = wince/stub.exe -@CONFIG_WINCE_TRUE@am__append_37 = wince/stub.exe
-@CONFIG_XTENSA_TRUE@am__append_38 = -D_LIBGLOSS -I$(srcdir)/xtensa/include
-@CONFIG_XTENSA_TRUE@am__append_39 = \
+@CONFIG_WINCE_TRUE@am__append_38 = $(gdbdir) +@CONFIG_WINCE_TRUE@am__append_38 = $(gdbdir)
+@CONFIG_WINCE_TRUE@am__append_39 = wince/stub.exe +@CONFIG_WINCE_TRUE@am__append_39 = wince/stub.exe
+@CONFIG_XTENSA_TRUE@am__append_40 = -D_LIBGLOSS -I$(srcdir)/xtensa/include
+@CONFIG_XTENSA_TRUE@am__append_41 = \
@CONFIG_XTENSA_TRUE@ xtensa/default.specs \
@CONFIG_XTENSA_TRUE@ xtensa/nano.specs \
@CONFIG_XTENSA_TRUE@ xtensa/sim.elf.specs \
@@ -200,27 +202,27 @@ check_PROGRAMS = $(am__EXEEXT_2) $(am__EXEEXT_3)
@CONFIG_XTENSA_TRUE@ xtensa/sys.openocd.specs \
@CONFIG_XTENSA_TRUE@ xtensa/crt0.o
-@CONFIG_XTENSA_TRUE@am__append_40 = \
+@CONFIG_XTENSA_TRUE@am__append_42 = \
@CONFIG_XTENSA_TRUE@ xtensa/crt0.S \
@CONFIG_XTENSA_TRUE@ xtensa/crt1-sim.S \
@CONFIG_XTENSA_TRUE@ xtensa/crt1-boards.S
-@CONFIG_XTENSA_TRUE@am__append_41 = xtensa/libgloss.a
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_42 = \
+@CONFIG_XTENSA_TRUE@am__append_43 = xtensa/libgloss.a
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_44 = \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/app.elf.ld \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/crt1-sim.o \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/crt1-boards.o
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_43 = xtensa/libsys_qemu.a \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_45 = xtensa/libsys_qemu.a \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/libsys_openocd.a
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_44 = xtensa/boards/esp32/memory.elf.ld
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_45 = xtensa/boards/esp32/board.c
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_46 = -I$(srcdir)/xtensa/boards/esp32/include
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_47 = -I$(srcdir)/xtensa/boards/esp32/include
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_48 = xtensa/boards/esp32s3/memory.elf.ld
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_49 = xtensa/boards/esp32s3/board.c
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_50 = -I$(srcdir)/xtensa/boards/esp32s3/include
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_51 = -I$(srcdir)/xtensa/boards/esp32s3/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_46 = xtensa/boards/esp32/memory.elf.ld
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_47 = xtensa/boards/esp32/board.c
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_48 = -I$(srcdir)/xtensa/boards/esp32/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_49 = -I$(srcdir)/xtensa/boards/esp32/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_50 = xtensa/boards/esp32s3/memory.elf.ld
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_51 = xtensa/boards/esp32s3/board.c
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_52 = -I$(srcdir)/xtensa/boards/esp32s3/include
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP32S3_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@am__append_53 = -I$(srcdir)/xtensa/boards/esp32s3/include
subdir = . subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
@@ -199,6 +201,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \ @@ -230,6 +232,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
$(top_srcdir)/aarch64/acinclude.m4 \ $(top_srcdir)/aarch64/acinclude.m4 \
$(top_srcdir)/arm/acinclude.m4 $(top_srcdir)/i386/acinclude.m4 \ $(top_srcdir)/arm/acinclude.m4 $(top_srcdir)/i386/acinclude.m4 \
$(top_srcdir)/libnosys/acinclude.m4 \ $(top_srcdir)/libnosys/acinclude.m4 \
@@ -59,9 +103,9 @@ index a117577ea..2a1a2ff6f 100644
$(top_srcdir)/m68k/acinclude.m4 \ $(top_srcdir)/m68k/acinclude.m4 \
$(top_srcdir)/mcore/acinclude.m4 \ $(top_srcdir)/mcore/acinclude.m4 \
$(top_srcdir)/mips/acinclude.m4 \ $(top_srcdir)/mips/acinclude.m4 \
@@ -421,6 +424,62 @@ libobjs_a_LIBADD = @@ -459,6 +462,62 @@ libobjs_a_LIBADD =
am_libobjs_a_OBJECTS = $(am__objects_3) $(am__objects_4) \ am_libobjs_a_OBJECTS = $(am__objects_3) $(am__objects_4) \
$(am__objects_5) $(am__objects_6) $(am__objects_5) $(am__objects_6) $(am__objects_7)
libobjs_a_OBJECTS = $(am_libobjs_a_OBJECTS) libobjs_a_OBJECTS = $(am_libobjs_a_OBJECTS)
+libsysbase_libsysbase_a_AR = $(AR) $(ARFLAGS) +libsysbase_libsysbase_a_AR = $(AR) $(ARFLAGS)
+libsysbase_libsysbase_a_LIBADD = +libsysbase_libsysbase_a_LIBADD =
@@ -122,22 +166,22 @@ index a117577ea..2a1a2ff6f 100644
lm32_libgloss_a_AR = $(AR) $(ARFLAGS) lm32_libgloss_a_AR = $(AR) $(ARFLAGS)
lm32_libgloss_a_LIBADD = lm32_libgloss_a_LIBADD =
@CONFIG_LM32_TRUE@am_lm32_libgloss_a_OBJECTS = lm32/isatty.$(OBJEXT) \ @CONFIG_LM32_TRUE@am_lm32_libgloss_a_OBJECTS = lm32/isatty.$(OBJEXT) \
@@ -572,10 +631,10 @@ SOURCES = $(aarch64_librdimon_a_SOURCES) $(arc_libnsim_a_SOURCES) \ @@ -668,10 +727,10 @@ SOURCES = $(aarch64_librdimon_a_SOURCES) $(arc_libnsim_a_SOURCES) \
$(bfin_libbfinbsp_a_SOURCES) $(bfin_libsim_a_SOURCES) \ $(bfin_libbfinbsp_a_SOURCES) $(bfin_libsim_a_SOURCES) \
$(csky_libsemi_a_SOURCES) $(d30v_libsim_a_SOURCES) \ $(csky_libsemi_a_SOURCES) $(d30v_libsim_a_SOURCES) \
$(iq2000_libeval_a_SOURCES) $(libnosys_libnosys_a_SOURCES) \ $(iq2000_libeval_a_SOURCES) $(libnosys_libnosys_a_SOURCES) \
- $(libobjs_a_SOURCES) $(lm32_libgloss_a_SOURCES) \ - $(libobjs_a_SOURCES) $(lm32_libgloss_a_SOURCES) \
- $(nios2_libnios2_a_SOURCES) $(riscv_libgloss_a_SOURCES) \ - $(nios2_libnios2_a_SOURCES) $(riscv_libgloss_a_SOURCES) \
- $(riscv_libsemihost_a_SOURCES) bfin/sim-test.c iq2000/test.c \ - $(riscv_libsemihost_a_SOURCES) $(riscv_libsim_a_SOURCES) \
- $(wince_stub_exe_SOURCES) - $(xtensa_libgloss_a_SOURCES) \
+ $(libobjs_a_SOURCES) $(libsysbase_libsysbase_a_SOURCES) \ + $(libobjs_a_SOURCES) $(libsysbase_libsysbase_a_SOURCES) \
+ $(lm32_libgloss_a_SOURCES) $(nios2_libnios2_a_SOURCES) \ + $(lm32_libgloss_a_SOURCES) $(nios2_libnios2_a_SOURCES) \
+ $(riscv_libgloss_a_SOURCES) $(riscv_libsemihost_a_SOURCES) \ + $(riscv_libgloss_a_SOURCES) $(riscv_libsemihost_a_SOURCES) \
+ bfin/sim-test.c iq2000/test.c $(wince_stub_exe_SOURCES) + $(riscv_libsim_a_SOURCES) $(xtensa_libgloss_a_SOURCES) \
AM_V_DVIPS = $(am__v_DVIPS_@AM_V@) $(xtensa_libsys_openocd_a_SOURCES) \
am__v_DVIPS_ = $(am__v_DVIPS_@AM_DEFAULT_V@) $(xtensa_libsys_qemu_a_SOURCES) bfin/sim-test.c iq2000/test.c \
am__v_DVIPS_0 = @echo " DVIPS " $@; $(wince_stub_exe_SOURCES)
@@ -662,7 +721,7 @@ ETAGS = etags @@ -761,7 +820,7 @@ ETAGS = etags
CTAGS = ctags CTAGS = ctags
CSCOPE = cscope CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS) DIST_SUBDIRS = $(SUBDIRS)
@@ -146,7 +190,16 @@ index a117577ea..2a1a2ff6f 100644
AARCH64_OBJTYPE = @AARCH64_OBJTYPE@ AARCH64_OBJTYPE = @AARCH64_OBJTYPE@
ACLOCAL = @ACLOCAL@ ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
@@ -772,6 +831,7 @@ pdfdir = @pdfdir@ @@ -779,7 +838,7 @@ CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@ $(am__append_38)
+CPPFLAGS = @CPPFLAGS@ $(am__append_40)
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
@@ -874,6 +933,7 @@ pdfdir = @pdfdir@
prefix = @prefix@ prefix = @prefix@
program_transform_name = @program_transform_name@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
@@ -154,34 +207,37 @@ index a117577ea..2a1a2ff6f 100644
sbindir = @sbindir@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@ srcdir = @srcdir@
@@ -797,12 +857,13 @@ multilibtooldir = $(tooldir)/lib$(MULTISUBDIR) @@ -899,14 +959,14 @@ multilibtooldir = $(tooldir)/lib$(MULTISUBDIR)
multilibtool_DATA = $(am__append_3) $(am__append_6) $(am__append_7) \ multilibtool_DATA = $(am__append_3) $(am__append_6) $(am__append_7) \
$(am__append_8) $(am__append_13) $(am__append_15) \ $(am__append_8) $(am__append_13) $(am__append_15) \
$(am__append_18) $(am__append_22) $(am__append_23) \ $(am__append_18) $(am__append_22) $(am__append_23) \
- $(am__append_27) $(am__append_29) $(am__append_32) \ - $(am__append_27) $(am__append_29) $(am__append_32) \
- $(am__append_34) - $(am__append_34) $(am__append_39) $(am__append_42) \
- $(am__append_44) $(am__append_48)
+ $(am__append_27) $(am__append_29) $(am__append_31) \ + $(am__append_27) $(am__append_29) $(am__append_31) \
+ $(am__append_34) $(am__append_36) + $(am__append_34) $(am__append_36) $(am__append_41) \
+ $(am__append_44) $(am__append_46) $(am__append_50)
multilibtool_LIBRARIES = $(am__append_2) $(am__append_5) \ multilibtool_LIBRARIES = $(am__append_2) $(am__append_5) \
$(am__append_9) $(am__append_11) $(am__append_20) \ $(am__append_9) $(am__append_11) $(am__append_20) \
$(am__append_21) $(am__append_24) $(am__append_28) \ $(am__append_21) $(am__append_24) $(am__append_28) \
- $(am__append_30) $(am__append_33) $(am__append_35) - $(am__append_30) $(am__append_33) $(am__append_35) \
- $(am__append_41) $(am__append_43)
+ $(am__append_30) $(am__append_32) $(am__append_35) \ + $(am__append_30) $(am__append_32) $(am__append_35) \
+ $(am__append_37) + $(am__append_37) $(am__append_43) $(am__append_45)
includetooldir = $(tooldir)/include includetooldir = $(tooldir)/include
includetool_DATA = $(am__append_16) includetool_DATA = $(am__append_16)
includesystooldir = $(tooldir)/include/sys includesystooldir = $(tooldir)/include/sys
@@ -813,7 +874,7 @@ AM_CPPFLAGS = -idirafter $(srcroot)/include @@ -917,7 +977,7 @@ AM_CPPFLAGS = -idirafter $(srcroot)/include
# to install (e.g. our crt0.o objects). # to install (e.g. our crt0.o objects).
noinst_LIBRARIES = libobjs.a noinst_LIBRARIES = libobjs.a
libobjs_a_SOURCES = $(am__append_14) $(am__append_19) $(am__append_25) \ libobjs_a_SOURCES = $(am__append_14) $(am__append_19) $(am__append_25) \
- $(am__append_31) - $(am__append_31) $(am__append_40)
+ $(am__append_33) + $(am__append_33) $(am__append_42)
FLAGS_TO_PASS = \ FLAGS_TO_PASS = \
"CC=$(CC)" \ "CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \ "CFLAGS=$(CFLAGS)" \
@@ -992,6 +1053,61 @@ TEXINFO_TEX = ../texinfo/texinfo.tex @@ -1098,6 +1158,61 @@ TEXINFO_TEX = ../texinfo/texinfo.tex
@CONFIG_LIBNOSYS_TRUE@ libnosys/write.c \ @CONFIG_LIBNOSYS_TRUE@ libnosys/getentropy.c \
@CONFIG_LIBNOSYS_TRUE@ libnosys/_exit.c @CONFIG_LIBNOSYS_TRUE@ libnosys/_exit.c
+@CONFIG_LIBSYSBASE_TRUE@libsysbase_libsysbase_a_CPPFLAGS = $(AM_CPPFLAGS) -D_BUILDING_LIBSYSBASE +@CONFIG_LIBSYSBASE_TRUE@libsysbase_libsysbase_a_CPPFLAGS = $(AM_CPPFLAGS) -D_BUILDING_LIBSYSBASE
@@ -242,25 +298,51 @@ index a117577ea..2a1a2ff6f 100644
@CONFIG_LM32_TRUE@lm32_libgloss_a_SOURCES = \ @CONFIG_LM32_TRUE@lm32_libgloss_a_SOURCES = \
@CONFIG_LM32_TRUE@ lm32/isatty.c \ @CONFIG_LM32_TRUE@ lm32/isatty.c \
@CONFIG_LM32_TRUE@ lm32/scall.S @CONFIG_LM32_TRUE@ lm32/scall.S
@@ -1099,7 +1215,7 @@ all: config.h @@ -1203,19 +1318,19 @@ TEXINFO_TEX = ../texinfo/texinfo.tex
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libgloss_a_SOURCES = xtensa/sleep.S \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/syscalls.c \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/window-vectors.S \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_45) \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_49)
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_47) \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_51)
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_qemu_a_CPPFLAGS = -DQEMU_SEMIHOSTING \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_46) \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_50)
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_48) \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_52)
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_qemu_a_SOURCES = \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/sim-vectors.S \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/sim-call.S \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/syscalls.c
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_openocd_a_CPPFLAGS = -DOPENOCD_SEMIHOSTING \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_47) \
-@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_51)
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_49) \
+@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ $(am__append_53)
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@xtensa_libsys_openocd_a_SOURCES = \
@CONFIG_XTENSA_TRUE@@HAVE_XTENSA_BOARD_ESP_TRUE@ xtensa/syscalls.c
@@ -1228,7 +1343,7 @@ all: config.h
.SUFFIXES: .S .c .dvi .o .obj .ps .SUFFIXES: .S .c .dvi .o .obj .ps
am--refresh: Makefile am--refresh: Makefile
@: @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__configure_deps) -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__configure_deps)
@for dep in $?; do \ @for dep in $?; do \
case '$(am__configure_deps)' in \ case '$(am__configure_deps)' in \
*$$dep*) \ *$$dep*) \
@@ -1121,7 +1237,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @@ -1250,7 +1365,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac; esac;
-$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__empty): -$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__empty):
+$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(am__empty): +$(top_srcdir)/../multilib.am $(srcdir)/doc/Makefile.inc $(srcdir)/aarch64/Makefile.inc $(srcdir)/aarch64/cpu-init/Makefile.inc $(srcdir)/arc/Makefile.inc $(srcdir)/arm/Makefile.inc $(srcdir)/arm/cpu-init/Makefile.inc $(srcdir)/bfin/Makefile.inc $(srcdir)/csky/Makefile.inc $(srcdir)/d30v/Makefile.inc $(srcdir)/iq2000/Makefile.inc $(srcdir)/libnosys/Makefile.inc $(srcdir)/libsysbase/Makefile.inc $(srcdir)/lm32/Makefile.inc $(srcdir)/nios2/Makefile.inc $(srcdir)/riscv/Makefile.inc $(srcdir)/wince/Makefile.inc $(srcdir)/xtensa/Makefile.inc $(am__empty):
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck $(SHELL) ./config.status --recheck
@@ -1585,6 +1701,173 @@ libobjs.a: $(libobjs_a_OBJECTS) $(libobjs_a_DEPENDENCIES) $(EXTRA_libobjs_a_DEPE @@ -1730,6 +1845,173 @@ libobjs.a: $(libobjs_a_OBJECTS) $(libobjs_a_DEPENDENCIES) $(EXTRA_libobjs_a_DEPE
$(AM_V_at)-rm -f libobjs.a $(AM_V_at)-rm -f libobjs.a
$(AM_V_AR)$(libobjs_a_AR) libobjs.a $(libobjs_a_OBJECTS) $(libobjs_a_LIBADD) $(AM_V_AR)$(libobjs_a_AR) libobjs.a $(libobjs_a_OBJECTS) $(libobjs_a_LIBADD)
$(AM_V_at)$(RANLIB) libobjs.a $(AM_V_at)$(RANLIB) libobjs.a
@@ -434,7 +516,7 @@ index a117577ea..2a1a2ff6f 100644
lm32/isatty.$(OBJEXT): lm32/$(am__dirstamp) \ lm32/isatty.$(OBJEXT): lm32/$(am__dirstamp) \
lm32/$(DEPDIR)/$(am__dirstamp) lm32/$(DEPDIR)/$(am__dirstamp)
lm32/scall.$(OBJEXT): lm32/$(am__dirstamp) \ lm32/scall.$(OBJEXT): lm32/$(am__dirstamp) \
@@ -1852,6 +2135,7 @@ mostlyclean-compile: @@ -2113,6 +2395,7 @@ mostlyclean-compile:
-rm -f d30v/*.$(OBJEXT) -rm -f d30v/*.$(OBJEXT)
-rm -f iq2000/*.$(OBJEXT) -rm -f iq2000/*.$(OBJEXT)
-rm -f libnosys/*.$(OBJEXT) -rm -f libnosys/*.$(OBJEXT)
@@ -442,7 +524,7 @@ index a117577ea..2a1a2ff6f 100644
-rm -f lm32/*.$(OBJEXT) -rm -f lm32/*.$(OBJEXT)
-rm -f nios2/*.$(OBJEXT) -rm -f nios2/*.$(OBJEXT)
-rm -f riscv/*.$(OBJEXT) -rm -f riscv/*.$(OBJEXT)
@@ -1973,6 +2257,58 @@ distclean-compile: @@ -2238,6 +2521,58 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/unlink.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/unlink.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/wait.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/wait.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/write.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libnosys/$(DEPDIR)/write.Po@am__quote@
@@ -501,7 +583,7 @@ index a117577ea..2a1a2ff6f 100644
@AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/crt0.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/crt0.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/isatty.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/isatty.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/scall.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@lm32/$(DEPDIR)/scall.Po@am__quote@
@@ -2717,6 +3053,734 @@ csky/csky_libsemi_a-getpid.obj: csky/getpid.c @@ -3082,6 +3417,734 @@ csky/csky_libsemi_a-getpid.obj: csky/getpid.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(csky_libsemi_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o csky/csky_libsemi_a-getpid.obj `if test -f 'csky/getpid.c'; then $(CYGPATH_W) 'csky/getpid.c'; else $(CYGPATH_W) '$(srcdir)/csky/getpid.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(csky_libsemi_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o csky/csky_libsemi_a-getpid.obj `if test -f 'csky/getpid.c'; then $(CYGPATH_W) 'csky/getpid.c'; else $(CYGPATH_W) '$(srcdir)/csky/getpid.c'; fi`
@@ -1236,7 +1318,7 @@ index a117577ea..2a1a2ff6f 100644
nios2/nios2_libnios2_a-io-close.o: nios2/io-close.c nios2/nios2_libnios2_a-io-close.o: nios2/io-close.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nios2_libnios2_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nios2/nios2_libnios2_a-io-close.o -MD -MP -MF nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo -c -o nios2/nios2_libnios2_a-io-close.o `test -f 'nios2/io-close.c' || echo '$(srcdir)/'`nios2/io-close.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(nios2_libnios2_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nios2/nios2_libnios2_a-io-close.o -MD -MP -MF nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo -c -o nios2/nios2_libnios2_a-io-close.o `test -f 'nios2/io-close.c' || echo '$(srcdir)/'`nios2/io-close.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Tpo nios2/$(DEPDIR)/nios2_libnios2_a-io-close.Po
@@ -4220,6 +5284,8 @@ distclean-generic: @@ -5103,6 +6166,8 @@ distclean-generic:
-rm -f iq2000/$(am__dirstamp) -rm -f iq2000/$(am__dirstamp)
-rm -f libnosys/$(DEPDIR)/$(am__dirstamp) -rm -f libnosys/$(DEPDIR)/$(am__dirstamp)
-rm -f libnosys/$(am__dirstamp) -rm -f libnosys/$(am__dirstamp)
@@ -1245,29 +1327,29 @@ index a117577ea..2a1a2ff6f 100644
-rm -f lm32/$(DEPDIR)/$(am__dirstamp) -rm -f lm32/$(DEPDIR)/$(am__dirstamp)
-rm -f lm32/$(am__dirstamp) -rm -f lm32/$(am__dirstamp)
-rm -f nios2/$(DEPDIR)/$(am__dirstamp) -rm -f nios2/$(DEPDIR)/$(am__dirstamp)
@@ -4239,7 +5305,7 @@ clean-am: clean-aminfo clean-binPROGRAMS clean-checkPROGRAMS \ @@ -5129,7 +6194,7 @@ clean-am: clean-aminfo clean-binPROGRAMS clean-checkPROGRAMS \
distclean: distclean-recursive distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) - -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
+ -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) + -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
-rm -f Makefile -rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \ distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-local distclean-tags distclean-hdr distclean-local distclean-tags
@@ -4382,7 +5448,7 @@ installcheck-am: @@ -5272,7 +6337,7 @@ installcheck-am:
maintainer-clean: maintainer-clean-recursive maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache -rm -rf $(top_srcdir)/autom4te.cache
- -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) - -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
+ -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) + -rm -rf ./$(DEPDIR) aarch64/$(DEPDIR) arc/$(DEPDIR) arm/$(DEPDIR) bfin/$(DEPDIR) csky/$(DEPDIR) d30v/$(DEPDIR) iq2000/$(DEPDIR) libnosys/$(DEPDIR) libsysbase/$(DEPDIR) lm32/$(DEPDIR) nios2/$(DEPDIR) riscv/$(DEPDIR) xtensa/$(DEPDIR) xtensa/boards/esp32/$(DEPDIR) xtensa/boards/esp32s3/$(DEPDIR)
-rm -f Makefile -rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-aminfo \ maintainer-clean-am: distclean-am maintainer-clean-aminfo \
maintainer-clean-generic maintainer-clean-local maintainer-clean-generic maintainer-clean-local
diff --git a/libgloss/configure b/libgloss/configure diff --git a/libgloss/configure b/libgloss/configure
index 28754b6d5..2e04092ab 100755 index 5f6bc5841..b5e41eb03 100755
--- a/libgloss/configure --- a/libgloss/configure
+++ b/libgloss/configure +++ b/libgloss/configure
@@ -638,6 +638,8 @@ CONFIG_NIOS2_FALSE @@ -649,6 +649,8 @@ CONFIG_NIOS2_FALSE
CONFIG_NIOS2_TRUE CONFIG_NIOS2_TRUE
CONFIG_LM32_FALSE CONFIG_LM32_FALSE
CONFIG_LM32_TRUE CONFIG_LM32_TRUE
@@ -1276,7 +1358,7 @@ index 28754b6d5..2e04092ab 100755
CONFIG_LIBNOSYS_FALSE CONFIG_LIBNOSYS_FALSE
CONFIG_LIBNOSYS_TRUE CONFIG_LIBNOSYS_TRUE
CONFIG_IQ2000_FALSE CONFIG_IQ2000_FALSE
@@ -722,6 +724,7 @@ infodir @@ -733,6 +735,7 @@ infodir
docdir docdir
oldincludedir oldincludedir
includedir includedir
@@ -1284,7 +1366,7 @@ index 28754b6d5..2e04092ab 100755
localstatedir localstatedir
sharedstatedir sharedstatedir
sysconfdir sysconfdir
@@ -800,6 +803,7 @@ datadir='${datarootdir}' @@ -811,6 +814,7 @@ datadir='${datarootdir}'
sysconfdir='${prefix}/etc' sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com' sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var' localstatedir='${prefix}/var'
@@ -1292,7 +1374,7 @@ index 28754b6d5..2e04092ab 100755
includedir='${prefix}/include' includedir='${prefix}/include'
oldincludedir='/usr/include' oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1052,6 +1056,15 @@ do @@ -1063,6 +1067,15 @@ do
| -silent | --silent | --silen | --sile | --sil) | -silent | --silent | --silen | --sile | --sil)
silent=yes ;; silent=yes ;;
@@ -1308,7 +1390,7 @@ index 28754b6d5..2e04092ab 100755
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;; ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1189,7 +1202,7 @@ fi @@ -1200,7 +1213,7 @@ fi
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \ datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
@@ -1317,7 +1399,7 @@ index 28754b6d5..2e04092ab 100755
do do
eval ac_val=\$$ac_var eval ac_val=\$$ac_var
# Remove trailing slashes. # Remove trailing slashes.
@@ -1342,6 +1355,7 @@ Fine tuning of the installation directories: @@ -1353,6 +1366,7 @@ Fine tuning of the installation directories:
--sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var] --localstatedir=DIR modifiable single-machine data [PREFIX/var]
@@ -1325,7 +1407,7 @@ index 28754b6d5..2e04092ab 100755
--libdir=DIR object code libraries [EPREFIX/lib] --libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include] --includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include] --oldincludedir=DIR C header files for non-gcc [/usr/include]
@@ -2745,6 +2759,8 @@ config_testsuite=true @@ -2756,6 +2770,8 @@ config_testsuite=true
config_libnosys=true config_libnosys=true
@@ -1334,7 +1416,7 @@ index 28754b6d5..2e04092ab 100755
host_makefile_frag=${srcdir}/config/default.mh host_makefile_frag=${srcdir}/config/default.mh
target_makefile_frag=${srcdir}/config/default.mt target_makefile_frag=${srcdir}/config/default.mt
@@ -3047,6 +3063,14 @@ else @@ -3061,6 +3077,14 @@ else
CONFIG_LIBNOSYS_FALSE= CONFIG_LIBNOSYS_FALSE=
fi fi
@@ -1349,10 +1431,10 @@ index 28754b6d5..2e04092ab 100755
if test x$config_lm32 = xtrue; then if test x$config_lm32 = xtrue; then
CONFIG_LM32_TRUE= CONFIG_LM32_TRUE=
CONFIG_LM32_FALSE='#' CONFIG_LM32_FALSE='#'
@@ -4924,6 +4948,35 @@ case "${target}" in @@ -4976,6 +5000,35 @@ $as_echo "#define MISSING_SYSCALL_NAMES 1" >>confdefs.h
;;
esac esac
+case "${target}" in +case "${target}" in
+ *-*-cygwin*) ;; + *-*-cygwin*) ;;
+ a29k-amd-udi) ;; + a29k-amd-udi) ;;
@@ -1382,10 +1464,10 @@ index 28754b6d5..2e04092ab 100755
+ ;; + ;;
+esac +esac
+ +
M68K_TARGET=m68k
case "${target}" in case "${target}" in
*-*-cygwin*) ;; fido-*-* | m68*-*-*)
a29k-amd-udi) ;; @@ -5398,6 +5451,10 @@ if test -z "${CONFIG_LIBNOSYS_TRUE}" && test -z "${CONFIG_LIBNOSYS_FALSE}"; then
@@ -5331,6 +5384,10 @@ if test -z "${CONFIG_LIBNOSYS_TRUE}" && test -z "${CONFIG_LIBNOSYS_FALSE}"; then
as_fn_error $? "conditional \"CONFIG_LIBNOSYS\" was never defined. as_fn_error $? "conditional \"CONFIG_LIBNOSYS\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5 Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi fi
@@ -1397,7 +1479,7 @@ index 28754b6d5..2e04092ab 100755
as_fn_error $? "conditional \"CONFIG_LM32\" was never defined. as_fn_error $? "conditional \"CONFIG_LM32\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5 Usually this means the macro was only invoked conditionally." "$LINENO" 5
diff --git a/libgloss/configure.ac b/libgloss/configure.ac diff --git a/libgloss/configure.ac b/libgloss/configure.ac
index 5fb26845c..cf07fb118 100644 index 268d86c51..1b918a61e 100644
--- a/libgloss/configure.ac --- a/libgloss/configure.ac
+++ b/libgloss/configure.ac +++ b/libgloss/configure.ac
@@ -43,6 +43,9 @@ config_testsuite=true @@ -43,6 +43,9 @@ config_testsuite=true
@@ -1410,16 +1492,16 @@ index 5fb26845c..cf07fb118 100644
host_makefile_frag=${srcdir}/config/default.mh host_makefile_frag=${srcdir}/config/default.mh
target_makefile_frag=${srcdir}/config/default.mt target_makefile_frag=${srcdir}/config/default.mt
@@ -247,7 +250,7 @@ AC_SUBST(subdirs) @@ -250,7 +253,7 @@ AC_SUBST(subdirs)
dnl These subdirs have converted to non-recursive make. Hopefully someday all dnl These subdirs have converted to non-recursive make. Hopefully someday all
dnl the ports above will too! dnl the ports above will too!
m4_foreach_w([SUBDIR], [ m4_foreach_w([SUBDIR], [
- aarch64 arc arm bfin csky d30v iq2000 libnosys lm32 nios2 riscv wince - aarch64 arc arm bfin csky d30v iq2000 libnosys lm32 nios2 riscv wince xtensa
+ aarch64 arc arm bfin csky d30v iq2000 libnosys libsysbase lm32 nios2 riscv wince + aarch64 arc arm bfin csky d30v iq2000 libnosys lm32 libsysbase nios2 riscv wince xtensa
], [dnl ], [dnl
AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue) AM_CONDITIONAL([CONFIG_]m4_toupper(SUBDIR), [test x$config_]SUBDIR = xtrue)
]) ])
@@ -343,6 +346,7 @@ m4_include([aarch64/acinclude.m4]) @@ -346,6 +349,7 @@ m4_include([aarch64/acinclude.m4])
m4_include([arm/acinclude.m4]) m4_include([arm/acinclude.m4])
m4_include([i386/acinclude.m4]) m4_include([i386/acinclude.m4])
m4_include([libnosys/acinclude.m4]) m4_include([libnosys/acinclude.m4])
@@ -8973,49 +9055,49 @@ index 36c30092d..7e54036ed 100644
converted to the new style linker. */ converted to the new style linker. */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }
diff --git a/newlib/Makefile.in b/newlib/Makefile.in diff --git a/newlib/Makefile.in b/newlib/Makefile.in
index bc967bd70..b0d8d64f0 100644 index 9a32646ab..fb28f3611 100644
--- a/newlib/Makefile.in --- a/newlib/Makefile.in
+++ b/newlib/Makefile.in +++ b/newlib/Makefile.in
@@ -668,7 +668,7 @@ check_PROGRAMS = @@ -679,7 +679,7 @@ check_PROGRAMS =
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy-stub.c \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy-stub.c \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy.S \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/memcpy.S \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen-stub.c \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen-stub.c \
-@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen.S -@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/strlen.S
+@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/sync_synchronize.c +@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/sync_synchronize.c
@HAVE_LIBC_MACHINE_BFIN_TRUE@am__append_69 = libc/machine/bfin/setjmp.S libc/machine/bfin/longjmp.S @HAVE_LIBC_MACHINE_BFIN_TRUE@am__append_70 = libc/machine/bfin/setjmp.S libc/machine/bfin/longjmp.S
@HAVE_LIBC_MACHINE_CR16_TRUE@am__append_70 = libc/machine/cr16/setjmp.S libc/machine/cr16/getenv.c @HAVE_LIBC_MACHINE_CR16_TRUE@am__append_71 = libc/machine/cr16/setjmp.S libc/machine/cr16/getenv.c
@@ -767,7 +767,9 @@ check_PROGRAMS = @@ -778,7 +778,9 @@ check_PROGRAMS =
@HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/misc.c libc/machine/nvptx/clock.c @HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/misc.c libc/machine/nvptx/clock.c
@HAVE_LIBC_MACHINE_OR1K_TRUE@am__append_108 = libc/machine/or1k/setjmp.S @HAVE_LIBC_MACHINE_OR1K_TRUE@am__append_109 = libc/machine/or1k/setjmp.S
-@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_109 = libc/machine/powerpc/setjmp.S -@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_110 = libc/machine/powerpc/setjmp.S
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_109 = libc/machine/powerpc/setjmp.S \ +@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__append_110 = libc/machine/powerpc/setjmp.S \
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/access.c +@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/access.c
+ +
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__append_110 = \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__append_111 = \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfprintf.c \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfprintf.c \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfscanf.c \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/vfscanf.c \
@@ -1893,7 +1895,7 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \ @@ -1943,7 +1945,7 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy-stub.$(OBJEXT) \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy-stub.$(OBJEXT) \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy.$(OBJEXT) \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-memcpy.$(OBJEXT) \
@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen-stub.$(OBJEXT) \ @HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen-stub.$(OBJEXT) \
-@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen.$(OBJEXT) -@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-strlen.$(OBJEXT)
+@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-sync_synchronize.$(OBJEXT) +@HAVE_LIBC_MACHINE_ARM_TRUE@ libc/machine/arm/libc_a-sync_synchronize.$(OBJEXT)
@HAVE_LIBC_MACHINE_BFIN_TRUE@am__objects_80 = libc/machine/bfin/libc_a-setjmp.$(OBJEXT) \ @HAVE_LIBC_MACHINE_BFIN_TRUE@am__objects_81 = libc/machine/bfin/libc_a-setjmp.$(OBJEXT) \
@HAVE_LIBC_MACHINE_BFIN_TRUE@ libc/machine/bfin/libc_a-longjmp.$(OBJEXT) @HAVE_LIBC_MACHINE_BFIN_TRUE@ libc/machine/bfin/libc_a-longjmp.$(OBJEXT)
@HAVE_LIBC_MACHINE_CR16_TRUE@am__objects_81 = libc/machine/cr16/libc_a-setjmp.$(OBJEXT) \ @HAVE_LIBC_MACHINE_CR16_TRUE@am__objects_82 = libc/machine/cr16/libc_a-setjmp.$(OBJEXT) \
@@ -2043,7 +2045,8 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \ @@ -2093,7 +2095,8 @@ am__objects_51 = libc/ssp/libc_a-chk_fail.$(OBJEXT) \
@HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-misc.$(OBJEXT) \ @HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-misc.$(OBJEXT) \
@HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-clock.$(OBJEXT) @HAVE_LIBC_MACHINE_NVPTX_TRUE@ libc/machine/nvptx/libc_a-clock.$(OBJEXT)
@HAVE_LIBC_MACHINE_OR1K_TRUE@am__objects_118 = libc/machine/or1k/libc_a-setjmp.$(OBJEXT) @HAVE_LIBC_MACHINE_OR1K_TRUE@am__objects_119 = libc/machine/or1k/libc_a-setjmp.$(OBJEXT)
-@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_119 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT) -@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_120 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT)
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_119 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT) \ +@HAVE_LIBC_MACHINE_POWERPC_TRUE@am__objects_120 = libc/machine/powerpc/libc_a-setjmp.$(OBJEXT) \
+@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/libc_a-access.$(OBJEXT) +@HAVE_LIBC_MACHINE_POWERPC_TRUE@ libc/machine/powerpc/libc_a-access.$(OBJEXT)
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__objects_120 = libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT) \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@am__objects_121 = libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT) \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vfscanf.$(OBJEXT) \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vfscanf.$(OBJEXT) \
@HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vec_malloc.$(OBJEXT) \ @HAVE_LIBC_MACHINE_POWERPC_TRUE@@HAVE_POWERPC_ALTIVEC_TRUE@ libc/machine/powerpc/libc_a-vec_malloc.$(OBJEXT) \
@@ -3768,6 +3771,7 @@ pdfdir = @pdfdir@ @@ -3937,6 +3940,7 @@ pdfdir = @pdfdir@
prefix = @prefix@ prefix = @prefix@
program_transform_name = @program_transform_name@ program_transform_name = @program_transform_name@
psdir = @psdir@ psdir = @psdir@
@@ -9023,7 +9105,7 @@ index bc967bd70..b0d8d64f0 100644
sbindir = @sbindir@ sbindir = @sbindir@
shared_machine_dir = @shared_machine_dir@ shared_machine_dir = @shared_machine_dir@
sharedstatedir = @sharedstatedir@ sharedstatedir = @sharedstatedir@
@@ -8021,7 +8025,7 @@ libc/machine/arm/libc_a-memcpy.$(OBJEXT): \ @@ -8326,7 +8330,7 @@ libc/machine/arm/libc_a-memcpy.$(OBJEXT): \
libc/machine/arm/libc_a-strlen-stub.$(OBJEXT): \ libc/machine/arm/libc_a-strlen-stub.$(OBJEXT): \
libc/machine/arm/$(am__dirstamp) \ libc/machine/arm/$(am__dirstamp) \
libc/machine/arm/$(DEPDIR)/$(am__dirstamp) libc/machine/arm/$(DEPDIR)/$(am__dirstamp)
@@ -9032,7 +9114,7 @@ index bc967bd70..b0d8d64f0 100644
libc/machine/arm/$(am__dirstamp) \ libc/machine/arm/$(am__dirstamp) \
libc/machine/arm/$(DEPDIR)/$(am__dirstamp) libc/machine/arm/$(DEPDIR)/$(am__dirstamp)
libc/machine/bfin/$(am__dirstamp): libc/machine/bfin/$(am__dirstamp):
@@ -8696,6 +8700,9 @@ libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp): @@ -9001,6 +9005,9 @@ libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp):
libc/machine/powerpc/libc_a-setjmp.$(OBJEXT): \ libc/machine/powerpc/libc_a-setjmp.$(OBJEXT): \
libc/machine/powerpc/$(am__dirstamp) \ libc/machine/powerpc/$(am__dirstamp) \
libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp) libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp)
@@ -9042,7 +9124,7 @@ index bc967bd70..b0d8d64f0 100644
libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT): \ libc/machine/powerpc/libc_a-vfprintf.$(OBJEXT): \
libc/machine/powerpc/$(am__dirstamp) \ libc/machine/powerpc/$(am__dirstamp) \
libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp) libc/machine/powerpc/$(DEPDIR)/$(am__dirstamp)
@@ -12338,7 +12345,7 @@ distclean-compile: @@ -12867,7 +12874,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcpy.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strcpy.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strlen-stub.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/arm/$(DEPDIR)/libc_a-strlen-stub.Po@am__quote@
@@ -9051,7 +9133,7 @@ index bc967bd70..b0d8d64f0 100644
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-longjmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-longjmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po@am__quote@
@@ -12487,6 +12494,7 @@ distclean-compile: @@ -13016,6 +13023,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-reallocr.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-reallocr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-write.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/nvptx/$(DEPDIR)/libc_a-write.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/or1k/$(DEPDIR)/libc_a-setjmp.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/or1k/$(DEPDIR)/libc_a-setjmp.Po@am__quote@
@@ -9059,7 +9141,7 @@ index bc967bd70..b0d8d64f0 100644
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix16.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix16.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix32.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix32.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix64.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@libc/machine/powerpc/$(DEPDIR)/libc_a-atosfix64.Po@am__quote@
@@ -16730,20 +16738,6 @@ libc/machine/arm/libc_a-memcpy.obj: libc/machine/arm/memcpy.S @@ -17357,20 +17365,6 @@ libc/machine/arm/libc_a-memcpy.obj: libc/machine/arm/memcpy.S
@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -c -o libc/machine/arm/libc_a-memcpy.obj `if test -f 'libc/machine/arm/memcpy.S'; then $(CYGPATH_W) 'libc/machine/arm/memcpy.S'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/memcpy.S'; fi` @am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -c -o libc/machine/arm/libc_a-memcpy.obj `if test -f 'libc/machine/arm/memcpy.S'; then $(CYGPATH_W) 'libc/machine/arm/memcpy.S'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/memcpy.S'; fi`
@@ -9080,7 +9162,7 @@ index bc967bd70..b0d8d64f0 100644
libc/machine/bfin/libc_a-setjmp.o: libc/machine/bfin/setjmp.S libc/machine/bfin/libc_a-setjmp.o: libc/machine/bfin/setjmp.S
@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -MT libc/machine/bfin/libc_a-setjmp.o -MD -MP -MF libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo -c -o libc/machine/bfin/libc_a-setjmp.o `test -f 'libc/machine/bfin/setjmp.S' || echo '$(srcdir)/'`libc/machine/bfin/setjmp.S @am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)$(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CCASFLAGS) $(CCASFLAGS) -MT libc/machine/bfin/libc_a-setjmp.o -MD -MP -MF libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo -c -o libc/machine/bfin/libc_a-setjmp.o `test -f 'libc/machine/bfin/setjmp.S' || echo '$(srcdir)/'`libc/machine/bfin/setjmp.S
@am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po @am__fastdepCCAS_TRUE@ $(AM_V_at)$(am__mv) libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Tpo libc/machine/bfin/$(DEPDIR)/libc_a-setjmp.Po
@@ -32734,6 +32728,20 @@ libc/machine/arm/libc_a-strlen-stub.obj: libc/machine/arm/strlen-stub.c @@ -33655,6 +33649,20 @@ libc/machine/arm/libc_a-strlen-stub.obj: libc/machine/arm/strlen-stub.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/arm/libc_a-strlen-stub.obj `if test -f 'libc/machine/arm/strlen-stub.c'; then $(CYGPATH_W) 'libc/machine/arm/strlen-stub.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/strlen-stub.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/arm/libc_a-strlen-stub.obj `if test -f 'libc/machine/arm/strlen-stub.c'; then $(CYGPATH_W) 'libc/machine/arm/strlen-stub.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/arm/strlen-stub.c'; fi`
@@ -9101,7 +9183,7 @@ index bc967bd70..b0d8d64f0 100644
libc/machine/cr16/libc_a-getenv.o: libc/machine/cr16/getenv.c libc/machine/cr16/libc_a-getenv.o: libc/machine/cr16/getenv.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/cr16/libc_a-getenv.o -MD -MP -MF libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo -c -o libc/machine/cr16/libc_a-getenv.o `test -f 'libc/machine/cr16/getenv.c' || echo '$(srcdir)/'`libc/machine/cr16/getenv.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/cr16/libc_a-getenv.o -MD -MP -MF libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo -c -o libc/machine/cr16/libc_a-getenv.o `test -f 'libc/machine/cr16/getenv.c' || echo '$(srcdir)/'`libc/machine/cr16/getenv.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Tpo libc/machine/cr16/$(DEPDIR)/libc_a-getenv.Po
@@ -33252,6 +33260,20 @@ libc/machine/nvptx/libc_a-clock.obj: libc/machine/nvptx/clock.c @@ -34173,6 +34181,20 @@ libc/machine/nvptx/libc_a-clock.obj: libc/machine/nvptx/clock.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/nvptx/libc_a-clock.obj `if test -f 'libc/machine/nvptx/clock.c'; then $(CYGPATH_W) 'libc/machine/nvptx/clock.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/nvptx/clock.c'; fi` @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -c -o libc/machine/nvptx/libc_a-clock.obj `if test -f 'libc/machine/nvptx/clock.c'; then $(CYGPATH_W) 'libc/machine/nvptx/clock.c'; else $(CYGPATH_W) '$(srcdir)/libc/machine/nvptx/clock.c'; fi`
@@ -9123,10 +9205,10 @@ index bc967bd70..b0d8d64f0 100644
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/powerpc/libc_a-vfprintf.o -MD -MP -MF libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo -c -o libc/machine/powerpc/libc_a-vfprintf.o `test -f 'libc/machine/powerpc/vfprintf.c' || echo '$(srcdir)/'`libc/machine/powerpc/vfprintf.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libc_a_CPPFLAGS) $(CPPFLAGS) $(libc_a_CFLAGS) $(CFLAGS) -MT libc/machine/powerpc/libc_a-vfprintf.o -MD -MP -MF libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo -c -o libc/machine/powerpc/libc_a-vfprintf.o `test -f 'libc/machine/powerpc/vfprintf.c' || echo '$(srcdir)/'`libc/machine/powerpc/vfprintf.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Po @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Tpo libc/machine/powerpc/$(DEPDIR)/libc_a-vfprintf.Po
diff --git a/newlib/configure.host b/newlib/configure.host diff --git a/newlib/configure.host b/newlib/configure.host
index 0a1ba282a..25722d004 100644 index 386183466..728170741 100644
--- a/newlib/configure.host --- a/newlib/configure.host
+++ b/newlib/configure.host +++ b/newlib/configure.host
@@ -627,6 +627,14 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID @@ -637,6 +637,14 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID
syscall_dir=syscalls syscall_dir=syscalls
default_newlib_io_long_long="yes" default_newlib_io_long_long="yes"
;; ;;
@@ -9141,7 +9223,7 @@ index 0a1ba282a..25722d004 100644
arm*-*-pe) arm*-*-pe)
syscall_dir=syscalls syscall_dir=syscalls
newlib_cflags="${newlib_cflags} -DHAVE_SYSCONF_PAGESIZE" newlib_cflags="${newlib_cflags} -DHAVE_SYSCONF_PAGESIZE"
@@ -799,7 +807,13 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID @@ -809,7 +817,13 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID
default_newlib_io_long_long="yes" default_newlib_io_long_long="yes"
newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES"
;; ;;
@@ -9195,10 +9277,10 @@ index a94e923a4..9171e98aa 100644
#define FNM_FILE_NAME FNM_PATHNAME #define FNM_FILE_NAME FNM_PATHNAME
#endif #endif
diff --git a/newlib/libc/include/reent.h b/newlib/libc/include/reent.h diff --git a/newlib/libc/include/reent.h b/newlib/libc/include/reent.h
index 23d572cd3..65310c084 100644 index b1dd2a7c4..16e29c037 100644
--- a/newlib/libc/include/reent.h --- a/newlib/libc/include/reent.h
+++ b/newlib/libc/include/reent.h +++ b/newlib/libc/include/reent.h
@@ -150,6 +150,7 @@ extern int _mkdir_r (struct _reent *, const char *, int); @@ -151,6 +151,7 @@ extern int _mkdir_r (struct _reent *, const char *, int);
extern int _open_r (struct _reent *, const char *, int, int); extern int _open_r (struct _reent *, const char *, int, int);
extern _ssize_t _read_r (struct _reent *, int, void *, size_t); extern _ssize_t _read_r (struct _reent *, int, void *, size_t);
extern int _rename_r (struct _reent *, const char *, const char *); extern int _rename_r (struct _reent *, const char *, const char *);
@@ -9232,10 +9314,10 @@ index 5dcc77a80..6930a751d 100644
#ifdef __AMDGCN__ #ifdef __AMDGCN__
diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h
index 45476ce4a..d76706321 100644 index a7d4bc52d..6b06ce5a5 100644
--- a/newlib/libc/include/sys/features.h --- a/newlib/libc/include/sys/features.h
+++ b/newlib/libc/include/sys/features.h +++ b/newlib/libc/include/sys/features.h
@@ -331,6 +331,9 @@ extern "C" { @@ -344,6 +344,9 @@ extern "C" {
# define __SSP_FORTIFY_LEVEL 0 # define __SSP_FORTIFY_LEVEL 0
#endif #endif
@@ -9391,10 +9473,10 @@ index 9a6f115a6..142e71d35 100644
#define MAXPATHLEN PATH_MAX #define MAXPATHLEN PATH_MAX
diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
index 6d8b005b2..8aefe6b0f 100644 index a02e7c2bd..61de73f88 100644
--- a/newlib/libc/include/sys/reent.h --- a/newlib/libc/include/sys/reent.h
+++ b/newlib/libc/include/sys/reent.h +++ b/newlib/libc/include/sys/reent.h
@@ -419,6 +419,8 @@ struct _reent @@ -420,6 +420,8 @@ struct _reent
__FILE *__sf; /* file descriptors */ __FILE *__sf; /* file descriptors */
struct _misc_reent *_misc; /* strtok, multibyte states */ struct _misc_reent *_misc; /* strtok, multibyte states */
char *_signal_buf; /* strsignal */ char *_signal_buf; /* strsignal */
@@ -9403,7 +9485,7 @@ index 6d8b005b2..8aefe6b0f 100644
}; };
# define _REENT_INIT(var) \ # define _REENT_INIT(var) \
@@ -639,6 +641,8 @@ struct _reent @@ -648,6 +650,8 @@ struct _reent
/* signal info */ /* signal info */
void (**_sig_func)(int); void (**_sig_func)(int);
@@ -9488,7 +9570,7 @@ index 5e937f103..b7b4de67d 100644
}; };
#endif #endif
diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c
index 65e2b1833..d3171515d 100644 index b16ec1511..655e01366 100644
--- a/newlib/libc/locale/locale.c --- a/newlib/libc/locale/locale.c
+++ b/newlib/libc/locale/locale.c +++ b/newlib/libc/locale/locale.c
@@ -198,7 +198,11 @@ static char *categories[_LC_LAST] = { @@ -198,7 +198,11 @@ static char *categories[_LC_LAST] = {
@@ -9564,7 +9646,7 @@ index 65e2b1833..d3171515d 100644
{ {
{ NULL, NULL }, /* LC_ALL */ { NULL, NULL }, /* LC_ALL */
diff --git a/newlib/libc/locale/setlocale.h b/newlib/libc/locale/setlocale.h diff --git a/newlib/libc/locale/setlocale.h b/newlib/libc/locale/setlocale.h
index 3530ec664..0a62bfd72 100644 index 7abf92f7e..511a616bc 100644
--- a/newlib/libc/locale/setlocale.h --- a/newlib/libc/locale/setlocale.h
+++ b/newlib/libc/locale/setlocale.h +++ b/newlib/libc/locale/setlocale.h
@@ -234,11 +234,11 @@ __get_locale_r (struct _reent *r) @@ -234,11 +234,11 @@ __get_locale_r (struct _reent *r)
@@ -9595,7 +9677,7 @@ index 2d6c08d71..81b4f119d 100644
+ %D%/sync_synchronize.c + %D%/sync_synchronize.c
+ +
diff --git a/newlib/libc/machine/arm/setjmp.S b/newlib/libc/machine/arm/setjmp.S diff --git a/newlib/libc/machine/arm/setjmp.S b/newlib/libc/machine/arm/setjmp.S
index c615f2428..3a3bfd05e 100644 index 5e5952296..9281cdb54 100644
--- a/newlib/libc/machine/arm/setjmp.S --- a/newlib/libc/machine/arm/setjmp.S
+++ b/newlib/libc/machine/arm/setjmp.S +++ b/newlib/libc/machine/arm/setjmp.S
@@ -2,6 +2,8 @@ @@ -2,6 +2,8 @@
@@ -9858,7 +9940,7 @@ index 000000000..04ebd1ee0
+#endif /* _NEWLIB_STDIO_H */ +#endif /* _NEWLIB_STDIO_H */
+ +
diff --git a/newlib/libc/stdio/fread.c b/newlib/libc/stdio/fread.c diff --git a/newlib/libc/stdio/fread.c b/newlib/libc/stdio/fread.c
index df8321461..6ea00229d 100644 index 8664dc3e5..dbaba0264 100644
--- a/newlib/libc/stdio/fread.c --- a/newlib/libc/stdio/fread.c
+++ b/newlib/libc/stdio/fread.c +++ b/newlib/libc/stdio/fread.c
@@ -135,7 +135,7 @@ crlf_r (struct _reent * ptr, @@ -135,7 +135,7 @@ crlf_r (struct _reent * ptr,
@@ -9870,7 +9952,7 @@ index df8321461..6ea00229d 100644
} }
#endif #endif
@@ -187,7 +187,6 @@ _fread_r (struct _reent * ptr, @@ -191,7 +191,6 @@ _fread_r (struct _reent * ptr,
int rc = 0; int rc = 0;
/* save fp buffering state */ /* save fp buffering state */
void *old_base = fp->_bf._base; void *old_base = fp->_bf._base;
@@ -9878,7 +9960,7 @@ index df8321461..6ea00229d 100644
int old_size = fp->_bf._size; int old_size = fp->_bf._size;
/* allow __refill to use user's buffer */ /* allow __refill to use user's buffer */
fp->_bf._base = (unsigned char *) p; fp->_bf._base = (unsigned char *) p;
@@ -197,7 +196,7 @@ _fread_r (struct _reent * ptr, @@ -201,7 +200,7 @@ _fread_r (struct _reent * ptr,
/* restore fp buffering back to original state */ /* restore fp buffering back to original state */
fp->_bf._base = old_base; fp->_bf._base = old_base;
fp->_bf._size = old_size; fp->_bf._size = old_size;
@@ -9887,7 +9969,7 @@ index df8321461..6ea00229d 100644
resid -= fp->_r; resid -= fp->_r;
p += fp->_r; p += fp->_r;
fp->_r = 0; fp->_r = 0;
@@ -218,27 +217,63 @@ _fread_r (struct _reent * ptr, @@ -222,27 +221,63 @@ _fread_r (struct _reent * ptr,
else else
#endif /* !PREFER_SIZE_OVER_SPEED && !__OPTIMIZE_SIZE__ */ #endif /* !PREFER_SIZE_OVER_SPEED && !__OPTIMIZE_SIZE__ */
{ {
@@ -9994,7 +10076,7 @@ index d8dfdbd82..a85b5a99b 100644
return 0; return 0;
} }
diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c
index 6a198e2c6..5ded3fd6e 100644 index feb1fab56..7a59eb21f 100644
--- a/newlib/libc/stdio/vfprintf.c --- a/newlib/libc/stdio/vfprintf.c
+++ b/newlib/libc/stdio/vfprintf.c +++ b/newlib/libc/stdio/vfprintf.c
@@ -108,6 +108,8 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>, @@ -108,6 +108,8 @@ Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>,
@@ -10006,7 +10088,7 @@ index 6a198e2c6..5ded3fd6e 100644
#if defined(LIBC_SCCS) && !defined(lint) #if defined(LIBC_SCCS) && !defined(lint)
/*static char *sccsid = "from: @(#)vfprintf.c 5.50 (Berkeley) 12/16/92";*/ /*static char *sccsid = "from: @(#)vfprintf.c 5.50 (Berkeley) 12/16/92";*/
static char *rcsid = "$Id$"; static char *rcsid = "$Id$";
@@ -1431,7 +1433,7 @@ reswitch: switch (ch) { @@ -1188,7 +1190,7 @@ reswitch: switch (ch) {
string: string:
#endif #endif
sign = '\0'; sign = '\0';
@@ -10015,7 +10097,7 @@ index 6a198e2c6..5ded3fd6e 100644
/* Behavior is undefined if the user passed a /* Behavior is undefined if the user passed a
NULL string when precision is not 0. NULL string when precision is not 0.
However, if we are not optimizing for size, However, if we are not optimizing for size,
@@ -1441,7 +1443,7 @@ string: @@ -1198,7 +1200,7 @@ string:
size = ((unsigned) prec > 6U) ? 6 : prec; size = ((unsigned) prec > 6U) ? 6 : prec;
} }
else else
@@ -10025,7 +10107,7 @@ index 6a198e2c6..5ded3fd6e 100644
if (ch == 'S' || (flags & LONGINT)) { if (ch == 'S' || (flags & LONGINT)) {
mbstate_t ps; mbstate_t ps;
diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c
index cfeea9876..ab7e9d7f1 100644 index 71e2c3e22..bd2d635ed 100644
--- a/newlib/libc/stdio/vfscanf.c --- a/newlib/libc/stdio/vfscanf.c
+++ b/newlib/libc/stdio/vfscanf.c +++ b/newlib/libc/stdio/vfscanf.c
@@ -74,6 +74,8 @@ These are GNU extensions. @@ -74,6 +74,8 @@ These are GNU extensions.
@@ -10038,7 +10120,7 @@ index cfeea9876..ab7e9d7f1 100644
#include <reent.h> #include <reent.h>
#include <newlib.h> #include <newlib.h>
diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c
index 7807a1229..30526cb70 100644 index 5a5c36829..3eaca0ce6 100644
--- a/newlib/libc/stdio/vfwprintf.c --- a/newlib/libc/stdio/vfwprintf.c
+++ b/newlib/libc/stdio/vfwprintf.c +++ b/newlib/libc/stdio/vfwprintf.c
@@ -92,6 +92,9 @@ SEEALSO @@ -92,6 +92,9 @@ SEEALSO
@@ -10052,7 +10134,7 @@ index 7807a1229..30526cb70 100644
#ifdef INTEGER_ONLY #ifdef INTEGER_ONLY
diff --git a/newlib/libc/stdio/vfwscanf.c b/newlib/libc/stdio/vfwscanf.c diff --git a/newlib/libc/stdio/vfwscanf.c b/newlib/libc/stdio/vfwscanf.c
index df966f929..106d99e94 100644 index d2f91dde2..de80cc0c0 100644
--- a/newlib/libc/stdio/vfwscanf.c --- a/newlib/libc/stdio/vfwscanf.c
+++ b/newlib/libc/stdio/vfwscanf.c +++ b/newlib/libc/stdio/vfwscanf.c
@@ -74,6 +74,9 @@ PORTABILITY @@ -74,6 +74,9 @@ PORTABILITY
@@ -10065,6 +10147,45 @@ index df966f929..106d99e94 100644
#include <_ansi.h> #include <_ansi.h>
#include <reent.h> #include <reent.h>
#include <newlib.h> #include <newlib.h>
diff --git a/newlib/libc/stdlib/__call_atexit.c b/newlib/libc/stdlib/__call_atexit.c
index 710440389..985e720bf 100644
--- a/newlib/libc/stdlib/__call_atexit.c
+++ b/newlib/libc/stdlib/__call_atexit.c
@@ -21,6 +21,7 @@ struct _atexit *__atexit = _NULL;
#ifdef _WANT_REGISTER_FINI
+#if 0
/* If "__libc_fini" is defined, finalizers (either
"__libc_fini_array", or "_fini", as appropriate) will be run after
all user-specified atexit handlers. For example, you can define
@@ -36,6 +37,7 @@ struct _atexit *__atexit = _NULL;
used with multiple BSPs, some of which register finalizers from
startup code, while others defer to the C library. */
extern char __libc_fini __attribute__((weak));
+#endif
/* Register the application finalization function with atexit. These
finalizers should run last. Therefore, we want to call atexit as
@@ -46,6 +48,7 @@ register_fini(void) __attribute__((constructor (0)));
static void
register_fini(void)
{
+#if 0
if (&__libc_fini) {
#ifdef _HAVE_INITFINI_ARRAY
extern void __libc_fini_array (void);
@@ -55,6 +58,10 @@ register_fini(void)
atexit (_fini);
#endif
}
+#else
+ extern void __fini (void);
+ atexit (__fini);
+#endif
}
#endif /* _WANT_REGISTER_FINI */
diff --git a/newlib/libc/stdlib/mlock.c b/newlib/libc/stdlib/mlock.c diff --git a/newlib/libc/stdlib/mlock.c b/newlib/libc/stdlib/mlock.c
index 23aa10173..ba88eb9fb 100644 index 23aa10173..ba88eb9fb 100644
--- a/newlib/libc/stdlib/mlock.c --- a/newlib/libc/stdlib/mlock.c

View File

@@ -101,7 +101,7 @@ then
--with-newlib \ --with-newlib \
--with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \ --with-headers=../../newlib-$NEWLIB_VER/newlib/libc/include \
--prefix=$prefix \ --prefix=$prefix \
--with-bugurl="https://github.com/devkitpro/buildscripts/issues" --with-pkgversion="devkitPPC release 43" \ --with-bugurl="https://github.com/devkitpro/buildscripts/issues" --with-pkgversion="devkitPPC release 45" \
$CROSS_PARAMS \ $CROSS_PARAMS \
$CROSS_GCC_PARAMS \ $CROSS_GCC_PARAMS \
$EXTRA_GCC_PARAMS \ $EXTRA_GCC_PARAMS \
@@ -144,6 +144,7 @@ then
--target=$target \ --target=$target \
--prefix=$prefix \ --prefix=$prefix \
--enable-newlib-mb \ --enable-newlib-mb \
--enable-newlib-register-fini \
|| { echo "Error configuring newlib"; exit 1; } || { echo "Error configuring newlib"; exit 1; }
touch configured-newlib touch configured-newlib
fi fi

View File

@@ -32,26 +32,26 @@ case "$VERSION" in
"1" ) "1" )
GCC_VER=13.2.0 GCC_VER=13.2.0
BINUTILS_VER=2.41 BINUTILS_VER=2.41
NEWLIB_VER=4.3.0.20230120 NEWLIB_VER=4.4.0.20231231
basedir='dkarm-eabi' basedir='dkarm-eabi'
package=devkitARM package=devkitARM
target=arm-none-eabi target=arm-none-eabi
toolchain=DEVKITARM toolchain=DEVKITARM
;; ;;
"2" ) "2" )
GCC_VER=13.1.0 GCC_VER=13.2.0
BINUTILS_VER=2.40 BINUTILS_VER=2.41
MN_BINUTILS_VER=2.24 MN_BINUTILS_VER=2.24
NEWLIB_VER=4.3.0.20230120 NEWLIB_VER=4.4.0.20231231
basedir='dkppc' basedir='dkppc'
package=devkitPPC package=devkitPPC
target=powerpc-eabi target=powerpc-eabi
toolchain=DEVKITPPC toolchain=DEVKITPPC
;; ;;
"3" ) "3" )
GCC_VER=13.1.0 GCC_VER=13.2.0
BINUTILS_VER=2.32 BINUTILS_VER=2.42
NEWLIB_VER=4.3.0.20230120 NEWLIB_VER=4.4.0.20231231
basedir='dka64' basedir='dka64'
package=devkitA64 package=devkitA64
target=aarch64-none-elf target=aarch64-none-elf