Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CMake][PGO] Build Sema.cpp to generate profdata for PGO builds #77347

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Commits on Jan 8, 2024

  1. [CMake][PGO] Use check-clang target to generate profdata for PGO builds

    When doing a multi-stage PGO build of clang, run the check-clang and
    check-llvm targets using the instrumented clang and use that profile
    data for building the final stage2 clang.  This is what is recommended
    by our official documentation: https://llvm.org/docs/HowToBuildWithPGO.html#building-clang-with-pgo
    
    I benchmarked this change by compiling the SemaChecking.cpp file from
    clang.  Using check-clang/check-llvm to generate the profile data gives a 25% speedup
    in the PGO+LTO stage2 clang when compared to the stage1 clang (no-LTO).
    
    Prior to this change, I was only seeing ~5% speedup when comparing the
    stage2 and stage1 builds.
    tstellar committed Jan 8, 2024
    Configuration menu
    Copy the full SHA
    127e2ae View commit details
    Browse the repository at this point in the history
  2. Fix python formatting

    tstellar committed Jan 8, 2024
    Configuration menu
    Copy the full SHA
    4f77345 View commit details
    Browse the repository at this point in the history

Commits on Jan 11, 2024

  1. Build Sema.cpp to generate profile data instead of using check-clang and

    check-llvm
    
    Also add an option to supply a cmake project to use to generate profile
    data.
    tstellar committed Jan 11, 2024
    Configuration menu
    Copy the full SHA
    d330bff View commit details
    Browse the repository at this point in the history
  2. Update documentatin

    tstellar committed Jan 11, 2024
    Configuration menu
    Copy the full SHA
    9b6543d View commit details
    Browse the repository at this point in the history

Commits on Jan 12, 2024

  1. Fix documentation build

    tstellar committed Jan 12, 2024
    Configuration menu
    Copy the full SHA
    adcbfc0 View commit details
    Browse the repository at this point in the history
  2. Fix documentation

    tstellar committed Jan 12, 2024
    Configuration menu
    Copy the full SHA
    8b8837a View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2024

  1. Configuration menu
    Copy the full SHA
    44aca59 View commit details
    Browse the repository at this point in the history