Merge upstream GCC changes for include/ and libiberty/ directories
This commit pulls in the latest changes for the include/ and libiberty/ directories. The last sync was in commit 533da48302a26885a972e4379eccc26b364e5b53. This commit also removes the file libiberty/rust-demangle.h, this file has been removed in upstream GCC, and should have been deleted as part of the previous sync up, which included this ChangeLog entry: 2019-11-16 Eduard-Mihai Burtescu <eddyb@lyken.rs> .... * rust-demangle.h: Remove. I've grep'd over the binutils-gdb source and can find no reference to the rust-demangle.h file, and everything seems to build fine without it, so I assume its continued existence was a mistake. include/ChangeLog: Import from gcc mainline: 2020-02-05 Andrew Burgess <andrew.burgess@embecosm.com> * hashtab.h (htab_remove_elt): Make a parameter const. (htab_remove_elt_with_hash): Likewise. libiberty/ChangeLog: * rust-demangle.h: Removed. Import from gcc mainline: 2020-02-05 Andrew Burgess <andrew.burgess@embecosm.com> * hashtab.c (htab_remove_elt): Make a parameter const. (htab_remove_elt_with_hash): Likewise. 2020-01-23 Alexandre Oliva <oliva@adacore.com> * argv.c (writeargv): Output empty args as "". 2020-01-18 Iain Sandoe <iain@sandoe.co.uk> * cp-demangle.c (cplus_demangle_operators): Add the co_await operator. * testsuite/demangle-expected: Test co_await operator mangling.
This commit is contained in:
parent
9e80cfa14e
commit
99e4741014
@ -1,3 +1,11 @@
|
||||
2020-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
Import from gcc mainline:
|
||||
2020-02-05 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* hashtab.h (htab_remove_elt): Make a parameter const.
|
||||
(htab_remove_elt_with_hash): Likewise.
|
||||
|
||||
2020-02-20 Nelson Chu <nelson.chu@sifive.com>
|
||||
|
||||
* opcode/riscv-opc.h: Extend DECLARE_CSR and DECLARE_CSR_ALIAS to
|
||||
|
@ -173,8 +173,8 @@ extern void * htab_find_with_hash (htab_t, const void *, hashval_t);
|
||||
extern void ** htab_find_slot_with_hash (htab_t, const void *,
|
||||
hashval_t, enum insert_option);
|
||||
extern void htab_clear_slot (htab_t, void **);
|
||||
extern void htab_remove_elt (htab_t, void *);
|
||||
extern void htab_remove_elt_with_hash (htab_t, void *, hashval_t);
|
||||
extern void htab_remove_elt (htab_t, const void *);
|
||||
extern void htab_remove_elt_with_hash (htab_t, const void *, hashval_t);
|
||||
|
||||
extern void htab_traverse (htab_t, htab_trav, void *);
|
||||
extern void htab_traverse_noresize (htab_t, htab_trav, void *);
|
||||
|
@ -1,3 +1,23 @@
|
||||
2020-02-25 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* rust-demangle.h: Removed.
|
||||
|
||||
Import from gcc mainline:
|
||||
2020-02-05 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* hashtab.c (htab_remove_elt): Make a parameter const.
|
||||
(htab_remove_elt_with_hash): Likewise.
|
||||
|
||||
2020-01-23 Alexandre Oliva <oliva@adacore.com>
|
||||
|
||||
* argv.c (writeargv): Output empty args as "".
|
||||
|
||||
2020-01-18 Iain Sandoe <iain@sandoe.co.uk>
|
||||
|
||||
* cp-demangle.c (cplus_demangle_operators): Add the co_await
|
||||
operator.
|
||||
* testsuite/demangle-expected: Test co_await operator mangling.
|
||||
|
||||
2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||
|
||||
* configure: Regenerate.
|
||||
|
@ -327,6 +327,14 @@ writeargv (char * const *argv, FILE *f)
|
||||
arg++;
|
||||
}
|
||||
|
||||
/* Write out a pair of quotes for an empty argument. */
|
||||
if (arg == *argv)
|
||||
if (EOF == fputs ("\"\"", f))
|
||||
{
|
||||
status = 1;
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (EOF == fputc ('\n', f))
|
||||
{
|
||||
status = 1;
|
||||
|
@ -1802,6 +1802,7 @@ const struct demangle_operator_info cplus_demangle_operators[] =
|
||||
{ "ad", NL ("&"), 1 },
|
||||
{ "an", NL ("&"), 2 },
|
||||
{ "at", NL ("alignof "), 1 },
|
||||
{ "aw", NL ("co_await "), 1 },
|
||||
{ "az", NL ("alignof "), 1 },
|
||||
{ "cc", NL ("const_cast"), 2 },
|
||||
{ "cl", NL ("()"), 2 },
|
||||
|
@ -709,7 +709,7 @@ htab_find_slot (htab_t htab, const PTR element, enum insert_option insert)
|
||||
element in the hash table, this function does nothing. */
|
||||
|
||||
void
|
||||
htab_remove_elt (htab_t htab, PTR element)
|
||||
htab_remove_elt (htab_t htab, const PTR element)
|
||||
{
|
||||
htab_remove_elt_with_hash (htab, element, (*htab->hash_f) (element));
|
||||
}
|
||||
@ -720,7 +720,7 @@ htab_remove_elt (htab_t htab, PTR element)
|
||||
function does nothing. */
|
||||
|
||||
void
|
||||
htab_remove_elt_with_hash (htab_t htab, PTR element, hashval_t hash)
|
||||
htab_remove_elt_with_hash (htab_t htab, const PTR element, hashval_t hash)
|
||||
{
|
||||
PTR *slot;
|
||||
|
||||
|
@ -1,45 +0,0 @@
|
||||
/* Internal demangler interface for the Rust programming language.
|
||||
Copyright (C) 2016-2019 Free Software Foundation, Inc.
|
||||
Written by David Tolnay (dtolnay@gmail.com).
|
||||
|
||||
This file is part of the libiberty library.
|
||||
Libiberty is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
In addition to the permissions in the GNU Library General Public
|
||||
License, the Free Software Foundation gives you unlimited permission
|
||||
to link the compiled version of this file into combinations with other
|
||||
programs, and to distribute those combinations without any restriction
|
||||
coming from the use of this file. (The Library Public License
|
||||
restrictions do apply in other respects; for example, they cover
|
||||
modification of the file, and distribution when not linked into a
|
||||
combined executable.)
|
||||
|
||||
Libiberty 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with libiberty; see the file COPYING.LIB.
|
||||
If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* This file provides some definitions shared by cplus-dem.c and
|
||||
rust-demangle.c. It should not be included by any other files. */
|
||||
|
||||
/* Returns non-zero iff MANGLED is a rust mangled symbol. MANGLED must
|
||||
already have been demangled through cplus_demangle_v3. If this function
|
||||
returns non-zero then MANGLED can be demangled (in-place) using
|
||||
RUST_DEMANGLE_SYM. */
|
||||
extern int
|
||||
rust_is_mangled (const char *mangled);
|
||||
|
||||
/* Demangles SYM (in-place) if RUST_IS_MANGLED returned non-zero for SYM.
|
||||
If RUST_IS_MANGLED returned zero for SYM then RUST_DEMANGLE_SYM might
|
||||
replace characters that cannot be demangled with '?' and might truncate
|
||||
SYM. After calling RUST_DEMANGLE_SYM SYM might be shorter, but never
|
||||
larger. */
|
||||
extern void
|
||||
rust_demangle_sym (char *sym);
|
@ -1450,3 +1450,6 @@ Foo<int>()::{lambda(auto:1)#1}::operator()<char>(char) const::X::fn
|
||||
|
||||
_Z3fooILPv0EEvPN9enable_ifIXeqT_LDnEEvE4typeE
|
||||
void foo<(void*)0>(enable_if<((void*)0)==(decltype(nullptr)), void>::type*)
|
||||
|
||||
_ZNK5coro15emptyawEv
|
||||
coro1::empty::operator co_await() const
|
||||
|
Loading…
x
Reference in New Issue
Block a user