diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2021-11-13 06:11:41 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2021-12-15 14:20:49 -0800 |
commit | 4a5e71f2348adcc49939804889d9f1a64d97005a (patch) | |
tree | 6c16473f5b0033713a80c1f62e241cd0fd0d91b1 /gcc/gcc.c | |
parent | bf8cdd35117dea2049abbeebcdf14de11b323ef7 (diff) | |
download | gcc-4a5e71f2348adcc49939804889d9f1a64d97005a.zip gcc-4a5e71f2348adcc49939804889d9f1a64d97005a.tar.gz gcc-4a5e71f2348adcc49939804889d9f1a64d97005a.tar.bz2 |
Sync with binutils: Support the PGO build for binutils+gdb
Sync with binutils for building binutils with LTO:
1dbde357be3 Add missing changes to Makefile.tpl
af019bfde9b Support the PGO build for binutils+gdb
Add the --enable-pgo-build[=lto] configure option. When binutils+gdb
is not built together with GCC, --enable-pgo-build enables the PGO build:
1. First build with -fprofile-generate.
2. Use "make maybe-check-*" to generate profiling data and pass -i to make
to ignore errors when generating profiling data.
3. Use "make clean" to remove the previous build.
4. Rebuild with -fprofile-use.
With --enable-pgo-build=lto, -flto=jobserver -ffat-lto-objects are used
together with -fprofile-generate and -fprofile-use. Add '+' to the command
line for recursive make to support -flto=jobserver -ffat-lto-objects.
NB: --enable-pgo-build=lto enables the PGO build with LTO while
--enable-lto enables LTO support in toolchain.
BZ binutils/26766
* Makefile.tpl (BUILD_CFLAGS): New.
(CFLAGS): Append $(BUILD_CFLAGS).
(CXXFLAGS): Likewise.
(PGO_BUILD_GEN_FLAGS_TO_PASS): New.
(PGO_BUILD_TRAINING_CFLAGS): Likewise.
(PGO_BUILD_TRAINING_CXXFLAGS): Likewise.
(PGO_BUILD_TRAINING_FLAGS_TO_PASS): Likewise.
(PGO_BUILD_TRAINING_MFLAGS): Likewise.
(PGO_BUILD_USE_FLAGS_TO_PASS): Likewise.
(PGO-TRAINING-TARGETS): Likewise.
(PGO_BUILD_TRAINING): Likewise.
(all): Add '+' to the command line for recursive make. Support
the PGO build.
* configure.ac: Add --enable-pgo-build[=lto].
AC_SUBST PGO_BUILD_GEN_CFLAGS, PGO_BUILD_USE_CFLAGS and
PGO_BUILD_LTO_CFLAGS. Enable the PGO build in Makefile.
* Makefile.in: Regenerated.
* configure: Likewise.
Diffstat (limited to 'gcc/gcc.c')
0 files changed, 0 insertions, 0 deletions