Find a file
Jan Hubicka edc038863d Avoid quadratic behaviour of LTO symbol promotion
LTO partitioning does renaming of symbols that ends up in same partition
and clash with assembler name.  This is done for "ordinary" symbols (such
as static functions) but also for symbols that are kept only as master
clones holding bodies of functions to be specialized later.
This is done only becuase we stream bodies to named section and clash
in names would mean that ltrans will load wrong body and crash.

Martin recently added bit to stream body for clones that are needed
since this makes it easier to bookeep what summaries are output.  THis
however triggers mass renaming of inline clones that is very slow
and unnecesary since their bodies are never streamed.

Bootstrapped/regtested x86_64-linux, comitted.

gcc/lto/ChangeLog:

2023-01-04  Jan Hubicka  <hubicka@ucw.cz>

	* lto-partition.cc (may_need_named_section_p): Clones with no body
	need no remaning.
2023-01-04 18:04:42 +01:00
c++tools Update copyright years. 2023-01-02 09:40:19 +01:00
config Daily bump. 2022-11-15 08:32:29 +00:00
contrib Daily bump. 2022-12-29 00:17:39 +00:00
fixincludes Daily bump. 2022-11-24 00:17:47 +00:00
gcc Avoid quadratic behaviour of LTO symbol promotion 2023-01-04 18:04:42 +01:00
gnattools Daily bump. 2022-09-01 00:17:39 +00:00
gotools Daily bump. 2022-08-31 00:16:45 +00:00
include Daily bump. 2022-12-22 00:17:29 +00:00
INSTALL
intl Daily bump. 2022-11-24 00:17:47 +00:00
libada Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libatomic Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libbacktrace Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libcc1 Daily bump. 2022-11-02 00:17:38 +00:00
libcody Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libcpp Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libdecnumber Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libffi Daily bump. 2022-12-22 00:17:29 +00:00
libgcc Daily bump. 2023-01-04 00:17:22 +00:00
libgfortran Rotate ChangeLog files. 2023-01-01 16:20:13 +01:00
libgm2 modula-2: Fix registration of modules via constructors [PR108183]. 2023-01-04 14:54:41 +00:00
libgo libgo: check for makecontext in -lucontext 2022-12-20 19:34:55 -08:00
libgomp Daily bump. 2023-01-03 00:17:09 +00:00
libiberty Daily bump. 2022-11-24 00:17:47 +00:00
libitm Daily bump. 2023-01-03 00:17:09 +00:00
libobjc Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libphobos Update Copyright year in ChangeLog files 2023-01-02 09:23:36 +01:00
libquadmath Daily bump. 2023-01-03 00:17:09 +00:00
libsanitizer Daily bump. 2022-12-20 00:17:00 +00:00
libssp Daily bump. 2022-10-13 00:17:37 +00:00
libstdc++-v3 libstdc++: Export the __gnu_cxx::zoneinfo_dir_override symbol [PR108228]. 2023-01-04 15:33:16 +00:00
libvtv changelog: Fix extra space after tab. 2022-11-21 10:13:44 +01:00
lto-plugin Daily bump. 2022-11-24 00:17:47 +00:00
maintainer-scripts Daily bump. 2022-12-01 00:17:51 +00:00
zlib Daily bump. 2022-11-24 00:17:47 +00:00
.dir-locals.el dir-locals: Use https for bug references 2021-07-20 11:40:34 +01:00
.gitattributes
.gitignore .gitignore: do not ignore config.h 2022-07-19 17:07:04 +03:00
ABOUT-NLS
ar-lib
ChangeLog Daily bump. 2023-01-01 00:17:17 +00:00
ChangeLog.jit
ChangeLog.tree-ssa
compile
config-ml.in
config.guess config.sub, config.guess : Import upstream 2021-01-25. 2021-02-23 17:21:10 +08:00
config.rpath
config.sub config.sub: change mode to 755. 2021-12-21 09:10:57 +01:00
configure [PATCH] Use toplevel configure for GMP and MPFR for gdb 2022-12-21 17:18:53 +00:00
configure.ac [PATCH] Use toplevel configure for GMP and MPFR for gdb 2022-12-21 17:18:53 +00:00
COPYING
COPYING.LIB
COPYING.RUNTIME
COPYING3
COPYING3.LIB
depcomp
install-sh
libtool-ldflags
libtool.m4 Generic configury support for shared libs on VxWorks 2022-10-11 07:31:07 +00:00
ltgcc.m4
ltmain.sh
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
MAINTAINERS MAINTAINERS: Add myself as Modula-2 front-end maintainer 2023-01-04 12:52:15 +00:00
Makefile.def configure: Do not build the ununsed libffi shared library. 2022-12-31 17:51:47 +00:00
Makefile.in configure: Do not build the ununsed libffi shared library. 2022-12-31 17:51:47 +00:00
Makefile.tpl Merge modula-2 front end onto gcc. 2022-12-14 17:43:08 +00:00
missing
mkdep
mkinstalldirs
move-if-change
multilib.am
README
symlink-tree
test-driver
ylwrap

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the files whose
names start with COPYING for copying permission.  The manuals, and
some of the runtime libraries, are under different terms; see the
individual source files for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs/ for how to report bugs usefully.

Copyright years on GCC source files may be listed using range
notation, e.g., 1987-2012, indicating that every year in the range,
inclusive, is a copyrightable year that could otherwise be listed
individually.