Commit Graph

1147 Commits

Author SHA1 Message Date
GCC Administrator
84790a9d4b Daily bump. 2021-12-31 00:16:26 +00:00
GCC Administrator
774269aa4b Daily bump. 2021-12-17 00:16:20 +00:00
GCC Administrator
8a89c39be0 Daily bump. 2021-12-16 00:16:28 +00:00
GCC Administrator
87cd82c81d Daily bump. 2021-11-30 00:16:44 +00:00
GCC Administrator
c2bd5d8a30 Daily bump. 2021-10-23 00:16:26 +00:00
GCC Administrator
f5b3743596 Daily bump. 2021-10-18 00:16:27 +00:00
GCC Administrator
5d5885c99c Daily bump. 2021-10-15 00:17:02 +00:00
GCC Administrator
52055987fb Daily bump. 2021-10-13 00:16:22 +00:00
GCC Administrator
9d116bcc55 Daily bump. 2021-10-02 00:16:31 +00:00
GCC Administrator
391b23e02b Daily bump. 2021-09-24 00:16:23 +00:00
GCC Administrator
e11c6046f9 Daily bump. 2021-09-02 00:16:59 +00:00
GCC Administrator
1e77fd4f17 Daily bump. 2021-08-30 00:16:44 +00:00
GCC Administrator
38b19c5b08 Daily bump. 2021-08-24 00:17:00 +00:00
GCC Administrator
6e529985d8 Daily bump. 2021-08-19 00:16:42 +00:00
GCC Administrator
25b6bfea5f Daily bump. 2021-07-01 00:16:41 +00:00
GCC Administrator
c8abc2058e Daily bump. 2021-06-29 00:16:42 +00:00
GCC Administrator
28c6247505 Daily bump. 2021-06-06 00:16:22 +00:00
GCC Administrator
cfe82a0cbe Daily bump. 2021-05-07 00:16:33 +00:00
GCC Administrator
99e8df7a4c Daily bump. 2021-05-05 00:16:54 +00:00
GCC Administrator
e690396da7 Daily bump. 2021-05-04 00:16:53 +00:00
GCC Administrator
c1ef0c9234 Daily bump. 2021-04-22 00:16:32 +00:00
GCC Administrator
95d217ab52 Daily bump. 2021-04-01 00:16:39 +00:00
GCC Administrator
bc2127767a Daily bump. 2021-03-17 00:16:25 +00:00
GCC Administrator
b2a55cafa8 Daily bump. 2021-02-21 00:16:18 +00:00
GCC Administrator
50352c6cd2 Daily bump. 2021-02-20 00:16:26 +00:00
GCC Administrator
f7884fb176 Daily bump. 2021-02-02 00:16:23 +00:00
GCC Administrator
7e73f51157 Daily bump. 2021-01-05 00:16:42 +00:00
GCC Administrator
077fefbfae Daily bump. 2020-12-23 00:16:35 +00:00
GCC Administrator
1a5e728a54 Daily bump. 2020-12-22 00:16:23 +00:00
GCC Administrator
360258daf5 Daily bump. 2020-11-26 00:16:41 +00:00
GCC Administrator
77f67db2a4 Daily bump. 2020-11-14 00:16:38 +00:00
GCC Administrator
0f5f9ed5e5 Daily bump. 2020-11-12 00:16:39 +00:00
GCC Administrator
2bee28dd41 Daily bump. 2020-11-10 00:16:24 +00:00
GCC Administrator
8e97b9052d Daily bump. 2020-10-07 00:16:35 +00:00
GCC Administrator
a2b7397b50 Daily bump. 2020-09-25 00:16:27 +00:00
GCC Administrator
31a0504624 Daily bump. 2020-09-09 00:16:29 +00:00
GCC Administrator
57ea089421 Daily bump. 2020-08-27 00:16:27 +00:00
GCC Administrator
6a1ad710ad Daily bump. 2020-08-04 00:16:24 +00:00
GCC Administrator
d48cca8f21 Daily bump. 2020-07-31 00:16:26 +00:00
GCC Administrator
8ca07a3072 Daily bump. 2020-07-15 00:16:35 +00:00
GCC Administrator
865362954f Daily bump. 2020-07-11 00:16:31 +00:00
GCC Administrator
c9c05f7323 Daily bump. 2020-06-27 00:16:24 +00:00
GCC Administrator
4543acc874 Daily bump. 2020-06-24 00:16:31 +00:00
GCC Administrator
885ef72f27 Daily bump. 2020-05-30 00:16:27 +00:00
Iain Buclaw
3a55774f0b libiberty: Handle @live attribute in D demangler.
Adds support for demangling D functions annotated with the new
ownership/borrowing system attribute.

libiberty/ChangeLog:

	* d-demangle.c (dlang_attributes): Add @live attribute.
	* testsuite/d-demangle-expected: Add new tests.
2020-05-15 10:40:47 +02:00
Iain Buclaw
3f30a27491 libiberty: Update D symbol demangling for latest ABI spec.
Some small improvements and clarifications have been done in the D ABI
specification to remove all ambiguities found in the current grammar,
this implementation now more closely resembles the spec, whilst
maintaining compatibility with the old ABI.

Three new rules have been added to the ABI.

1. Back references using 'Q', analogous to C++ substitutions, compresses
   repeated identifiers, types, and template symbol and value parameters.

2. Template aliases to externally mangled symbols are prefixed with 'X'.
   This includes any symbol that isn't extern(D), or has its name
   overriden with pragma(mangle).  This fixes an ambiguity where it was
   not clear whether 'V' was an encoded calling convention, or the next
   template value parameter.

3. Alias parameters, templates, and tuple symbols no longer encode the
   symbol length of its subpart.  Tuples are now terminated with 'Z'.
   This fixes another ambiguity where the first character of the mangled
   name can be a digit as well, so the demangler had to figure out where
   to split the two adjacent numbers by trying out each combination.

libiberty/ChangeLog:

	* d-demangle.c (enum dlang_symbol_kinds): Remove enum.
	(struct dlang_info): New struct
	(dlang_decode_backref): New function.
	(dlang_backref): New function.
	(dlang_symbol_backref): New function.
	(dlang_type_backref): New function.
	(dlang_symbol_name_p): New function.
	(dlang_function_type_noreturn): New function.
	(dlang_function_type): Add 'info' parameter.  Decode function type
	with dlang_function_type_noreturn.
	(dlang_function_args): Add 'info' parameter.
	(dlang_type): Add 'info' parameter.  Handle back referenced types.
	(dlang_identifier): Replace 'kind' parameter with 'info'.  Handle back
	referenced symbols.  Split off decoding of plain identifiers to...
	(dlang_lname): ...here.
	(dlang_parse_mangle): Replace 'kind' parameter with 'info'.  Decode
	function type and return with dlang_type.
	(dlang_parse_qualified): Replace 'kind' parameter with 'info', add
	'suffix_modifier' parameter.  Decode function type with
	dlang_function_type_noreturn.
	(dlang_parse_tuple): Add 'info' parameter.
	(dlang_template_symbol_param): New function.
	(dlang_template_args): Add 'info' parameter.  Decode symbol parameter
	with dlang_template_symbol_param.  Handle back referenced values, and
	externally mangled parameters.
	(dlang_parse_template): Add 'info' parameter.
	(dlang_demangle_init_info): New function.
	(dlang_demangle): Initialize and pass 'info' parameter.
	* testsuite/d-demangle-expected: Add new tests.

Co-Authored-By: Rainer Schuetze <r.sagitario@gmx.de>
2020-05-14 23:43:17 +02:00
H.J. Lu
d17cdc17c9 Enable CET in cross compiler if possible
Don't perform CET run-time check for host when cross compiling.  Instead,
enable CET in cross compiler if possible so that it will run on both CET
and non-CET hosts.

config/

	PR bootstrap/94998
	* cet.m4 (GCC_CET_HOST_FLAGS): Enable CET in cross compiler if
	possible.

libiberty/

	PR bootstrap/94998
	* configure: Regenerated.

lto-plugin/

	PR bootstrap/94998
	* configure: Regenerated.
2020-05-12 10:39:54 -07:00
H.J. Lu
eedc73a224 Check whether -fcf-protection=none -Wl,-z,ibt,-z,shstk work first
GCC_CET_HOST_FLAGS uses -Wl,-z,ibt,-z,shstk to check if Linux/x86 host
has Intel CET enabled by introducing an Intel CET violation on purpose.
To avoid false positive, check whether -Wl,-z,ibt,-z,shstk works first.
-fcf-protection=none is added to avoid false negative when -fcf-protection
is enabled by default.

config/

	PR bootstrap/94739
	* cet.m4 (GCC_CET_HOST_FLAGS): Add -fcf-protection=none to
	-Wl,-z,ibt,-z,shstk.  Check whether -fcf-protection=none
	-Wl,-z,ibt,-z,shstk works first.

libiberty/

	PR bootstrap/94739
	* configure: Regenerated.

lto-plugin/

	PR bootstrap/94739
	* configure: Regenerated.
2020-04-28 05:42:50 -07:00
Jakub Jelinek
76458c912b demangler: Handle <=> operator in the demangler [PR94797]
The demangler didn't handle spaceship operator.

2020-04-27  Jakub Jelinek  <jakub@redhat.com>

	PR demangler/94797
	* cp-demangle.c (cplus_demangle_operators): Add ss <=> operator.
	* testsuite/demangle-expected: Add operator<=> test.
2020-04-27 20:59:25 +02:00
H.J. Lu
8fc8bf801e Enable Intel CET in liblto_plugin.so on Intel CET enabled host
Since ld is Intel CET enabled on Intel CET enabled host, dlopen fails on
liblto_plugin.so if it isn't Intel CET enabled.  Add GCC_CET_HOST_FLAGS
to cet.m4, use it in libiberty and lto-plugin to always enable Intel
CET in liblto_plugin.so on Intel CET enabled host.

On Linux/x86 host, enable Intel CET by default if assembler and compiler
support Intel CET so that the generated liblto_plugin.so can be used on
both CET and non-CET machines.  It is an error to disable Intel CET in
liblto_plugin.so on Intel CET enabled host.

config/

	PR bootstrap/94739
	* cet.m4 (GCC_CET_HOST_FLAGS): New.

libiberty/

	PR bootstrap/94739
	* Makefile.in (COMPILE.c): Add @CET_HOST_FLAGS@.
	(configure_deps): Add $(srcdir)/../config/cet.m4 and
	$(srcdir)/../config/enable.m4.
	* aclocal.m4: Include ../config/cet.m4 and ../config/enable.m4.
	* configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
	AC_SUBST(CET_HOST_FLAGS).
	* configure: Regenerated.

lto-plugin/

	PR bootstrap/94739
	* Makefile.am (AM_CFLAGS): Add $(CET_HOST_FLAGS).
	* configure.ac: Add GCC_CET_HOST_FLAGS(CET_HOST_FLAGS) and
	AC_SUBST(CET_HOST_FLAGS).
	* Makefile.in: Regenerated.
	* aclocal.m4: Likewise.
	* configure: Likewise.
2020-04-25 10:07:16 -07:00