bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/26766] Support standalone PGO build


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/26766] Support standalone PGO build
Date: Sat, 09 Jan 2021 15:19:43 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=26766

--- Comment #21 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by H.J. Lu <hjl@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=af019bfde9b13d628202fe58054ec7ff08d92a0f

commit af019bfde9b13d628202fe58054ec7ff08d92a0f
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sat Jan 9 06:51:15 2021 -0800

    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.

            PR 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.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]