[all-commits] [llvm/llvm-project] 4edf35: Support for instrumenting only selected files or f...

Petr Hosek via All-commits all-commits at lists.llvm.org
Tue Jan 26 11:12:03 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4edf35f11a9e20bd5df3cb47283715f0ff38b751
      https://github.com/llvm/llvm-project/commit/4edf35f11a9e20bd5df3cb47283715f0ff38b751
  Author: Petr Hosek <phosek at google.com>
  Date:   2021-01-26 (Tue, 26 Jan 2021)

  Changed paths:
    M clang/docs/ClangCommandLineReference.rst
    M clang/docs/SourceBasedCodeCoverage.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/Basic/LangOptions.h
    A clang/include/clang/Basic/ProfileList.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/Basic/CMakeLists.txt
    A clang/lib/Basic/ProfileList.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/test/CodeGen/profile-filter.c
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/AsmParser/LLToken.h
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    A llvm/test/Transforms/PGOProfile/noprofile.ll

  Log Message:
  -----------
  Support for instrumenting only selected files or functions

This change implements support for applying profile instrumentation
only to selected files or functions. The implementation uses the
sanitizer special case list format to select which files and functions
to instrument, and relies on the new noprofile IR attribute to exclude
functions from instrumentation.

Differential Revision: https://reviews.llvm.org/D94820




More information about the All-commits mailing list