Searched +full:clang +full:- +full:pgo (Results 1 – 25 of 107) sorted by relevance
12345
11 `CMake <http://www.cmake.org/>`_ is a cross-platform build-generator tool. CMake25 The Clang CMake build system supports bootstrap (aka multi-stage) builds. At a26 high level a multi-stage build is a chain of builds that pass data from one30 In a simple two-stage bootstrap build, we build clang using the system compiler,31 then use that just-built clang to build clang again. In CMake this simplest form35 .. code-block:: console37 $ cmake -G Ninja -DCLANG_ENABLE_BOOTSTRAP=On <path to source>44 The clang build system refers to builds as stages. A stage1 build is a standard47 general a stage*n* build is built using the output from stage*n-1*.49 Apple Clang Builds (A More Complex Bootstrap)[all …]
3 # Use of this source code is governed by a BSD-style license that can be6 """Generates a PGO profile for LLVM.10 Note that this script has a few (perhaps surprising) side-effects:39 HOST_TRIPLE = "x86_64-pc-linux-gnu"44 "x86_64-cros-linux-gnu",45 "armv7a-cros-linux-gnueabihf",46 "aarch64-cros-linux-gnu",49 # Set of all of the cross-* libraries we need.51 f"cross-{triple}/{package}"54 for package in ("glibc", "libcxx", "llvm-libunwind", "linux-headers")[all …]
4 This directory contains CMake cache scripts that pre-populate the CMakeCache in9 cmake -G <build system>10 -C <path to cache file>11 [additional CMake options (i.e. -DCMAKE_INSTALL_PREFIX=<install path>)]18 Apple-stage119 ------------22 the clang shipped with Xcode. The build files generated from this invocation has23 a target named "stage2" which performs an LTO build of clang.25 The Apple-stage2 cache can be used directly to match the build settings Apple28 PGO[all …]
5 set(CLANG_BOOTSTRAP_TARGETS check-all check-llvm check-clang test-suite CACHE STRING "")8 -C ${CMAKE_CURRENT_LIST_DIR}/PGO-stage2.cmake
8 generate-profdata10 stage2-check-all11 stage2-check-llvm12 stage2-check-clang13 stage2-test-suite CACHE STRING "")16 -C ${CMAKE_CURRENT_LIST_DIR}/PGO-stage2-instrumented.cmake
2 # All test suites added here should be excuded from check-all16 ${CMAKE_CURRENT_BINARY_DIR}/pgo-data/lit.site.cfg19 add_lit_testsuite(generate-profraw "Generating clang PGO data"20 ${CMAKE_CURRENT_BINARY_DIR}/pgo-data/21 DEPENDS clang clear-profraw24 add_custom_target(clear-profraw25 …COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py clean ${CMAKE_CURRENT_BINA…29 find_program(LLVM_PROFDATA llvm-profdata)33 …message(FATAL_ERROR "Must set LLVM_PROFDATA to point to llvm-profdata to use for merging PGO data")36 add_custom_target(generate-profdata[all …]
2 # Use of this source code is governed by a BSD-style license that can be6 import("//build/config/clang/clang.gni")8 import("//build/config/compiler/pgo/pgo.gni")12 # Configuration that enables PGO instrumentation.17 # are not required to be defined when we're not actually using PGO.19 cflags = [ "-fprofile-generate" ]24 ldflags = [ "-fprofile-generate" ]34 # are not required to be defined when we're not actually using PGO.45 _pgo_target = "win-arm64"53 _pgo_target = "mac-arm"[all …]
2 # Use of this source code is governed by a BSD-style license that can be6 import("//build/config/clang/clang.gni")8 import("//build/config/compiler/pgo/pgo.gni")12 # Configuration that enables PGO instrumentation.17 # are not required to be defined when we're not actually using PGO.19 cflags = [ "-fprofile-generate" ]22 "-mllvm",23 "-pgo-temporal-instrumentation",30 ldflags = [ "-fprofile-generate" ]40 # are not required to be defined when we're not actually using PGO.[all …]
1 //===--- CodeGenPGO.h - PGO Instrumentation for LLVM CodeGen ----*- C++ -*-===//8 //===----------------------------------------------------------------------===//10 // Instrumentation-based profile-guided optimization12 //===----------------------------------------------------------------------===//20 #include "clang/Frontend/CodeGenOptions.h"27 namespace clang {30 /// Per-function PGO state.54 /// Whether or not we have PGO region data for the current function. This is63 /// of changes to the most recent counter from control flow and non-local72 auto I = StmtCountMap->find(S); in getStmtCount()[all …]
1 //===--- CodeGenPGO.cpp - PGO Instrumentation for LLVM CodeGen --*- C++ -*-===//8 //===----------------------------------------------------------------------===//10 // Instrumentation-based profile-guided optimization12 //===----------------------------------------------------------------------===//17 #include "clang/AST/RecursiveASTVisitor.h"18 #include "clang/AST/StmtVisitor.h"26 "enable-value-profiling", llvm::cl::ZeroOrMore,29 using namespace clang;37 PGOReader ? PGOReader->getVersion() : llvm::IndexedInstrProf::Version); in setFuncName()45 setFuncName(Fn->getName(), Fn->getLinkage()); in setFuncName()[all …]
2 # Use of this source code is governed by a BSD-style license that can be5 import("//build/config/compiler/pgo/pgo.gni")14 "Clang Source-based profiling requires clang.")
1 name: dev-short-tests6 group: fast-${{ github.ref }}7 cancel-in-progress: true13 permissions: read-all16 linux-kernel:17 runs-on: ubuntu-latest19 - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # tag=v4.1.120 - name: linux kernel, library + build + test21 …run: make -C contrib/linux-kernel test CFLAGS="-Werror -Wunused-const-variable -Wunused-but-set-va…24 runs-on: ubuntu-latest[all …]
1 // Test if PGO instrumentation and use pass are invoked.4 …_cc1 -O2 -fprofile-instrument=llvm %s -mllvm -debug-pass=Structure -emit-llvm -o - 2>&1 | FileChec…5 // CHECK-PGOGENPASS-INVOKED-INSTR-GEN: PGOInstrumentationGenPass8 …-O2 -fprofile-instrument=clang %s -mllvm -debug-pass=Structure -emit-llvm -o - 2>&1 | FileCheck %s…9 // CHECK-PGOGENPASS-INVOKED-INSTR-GEN-CLANG-NOT: PGOInstrumentationGenPass12 // RUN: llvm-profdata merge -o %t.profdata %S/Inputs/pgotestir.profraw13 …-O2 -fprofile-instrument-use-path=%t.profdata %s -mllvm -debug-pass=Structure -emit-llvm -o - 2>&1…14 // CHECK-PGOUSEPASS-INVOKED-INSTR-USE: PGOInstrumentationUsePass17 // RUN: llvm-profdata merge -o %t.profdata %S/Inputs/pgotestclang.profraw18 …-O2 -fprofile-instrument-use-path=%t.profdata %s -mllvm -debug-pass=Structure -emit-llvm -o - 2>&1…[all …]
1 //===--- CodeGenOptions.h ---------------------------------------*- C++ -*-===//8 //===----------------------------------------------------------------------===//12 //===----------------------------------------------------------------------===//17 #include "clang/Basic/DebugInfoOptions.h"18 #include "clang/Basic/Sanitizers.h"26 namespace clang {34 #include "clang/Frontend/CodeGenOptions.def"39 #include "clang/Frontend/CodeGenOptions.def"42 /// CodeGenOptions - Track various options which control how the code79 SRCK_OnStack, // Small structs on the stack (-fpcc-struct-return).[all …]
4 # This is based on LLVM `utils/gn/build/BUILD.gn`. Only the LLVM and Clang12 # llvm/utils/prepare-code-coverage-artifact.py \13 # --compilation-dir=out/gn \14 # .../llvm-profdata .../llvm-cov out/gn/profiles/ report/ \15 # out/gn/bin/llvm-undname ...19 # Whether to build everything with instrumentation for PGO24 # 3. Run `llvm-profdata merge *.profraw -o llvm.profdata` to merge them.29 # If non-empty, path to merged profiling data used for optimization37 # http://blog.llvm.org/2019/11/deterministic-builds-with-clang-and-lld.html46 "llvm_build_instrumented_coverage requires clang as host compiler")[all …]
3 # Use of this source code is governed by a BSD-style license that can be6 # pylint: disable=line-too-long8 """Handle most aspects of creating and benchmarking PGO profiles for Rust.13 gs://chromeos-localmirror/distfiles/rust-pgo-{rust_version}-frontend.profdata{s}.tz15 gs://chromeos-localmirror/distfiles/rust-pgo-{rust_version}-llvm.profdata{s}.tz22 you need to generate manifests for dev-lang/rust and dev-lang/rust-host before25 variable SRC_URI in cros-rustc.eclass which refer to profdata files.31 $ ./pgo_rust.py benchmark-pgo # benchmark with PGO32 $ ./pgo_rust.py benchmark-nopgo # benchmark without PGO33 $ ./pgo_rust.py upload-profdata # upload profdata to localmirror[all …]
1 //===- InstrProf.h - Instrumented profiling format support ------*- C++ -*-===//5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception7 //===----------------------------------------------------------------------===//9 // Instrumentation-based profiling data is generated by instrumented10 // binaries through library functions in compiler-rt, and read by the clang11 // frontend to feed PGO.13 //===----------------------------------------------------------------------===//65 return std::numeric_limits<uint64_t>::max() - 2; in getInstrMaxCountValue()92 /// Return the name prefix of variables containing per-function control data.105 /// of all function's PGO names.[all …]
5 .. _configure-options:12 ./configure --help17 ---------------19 .. cmdoption:: --enable-loadable-sqlite-extensions29 .. cmdoption:: --disable-ipv634 .. cmdoption:: --enable-big-digits=[15|30]44 .. cmdoption:: --with-cxx-main45 .. cmdoption:: --with-cxx-main=COMPILER50 .. cmdoption:: --with-suffix=SUFFIX63 .. cmdoption:: --with-tzpath=<list of absolute paths separated by pathsep>[all …]
... : LLD 17.0.4 Android (11039501, +pgo, +bolt, +lto, +mlgo, ...
1 // Check that the -fprofile-instrument-path= form works.2 …-main-file-name c-generate.c %s -o - -emit-llvm -fprofile-instrument=clang -fprofile-instrument-pa…3 // RUN: %clang_cc1 %s -o - -emit-llvm -fprofile-instrument=none | FileCheck %s --check-prefix=PROF-…4 // RUN: not %clang_cc1 %s -o - -emit-llvm -fprofile-instrument=garbage 2>&1 | FileCheck %s --check-…6 // PROF-INSTR-PATH: private constant [24 x i8] c"c-generate-test.profraw\00"7 // PROF-INSTR-PATH: call void @__llvm_profile_override_default_filename(i8* getelementptr inbounds …8 // PROF-INSTR-PATH: declare void @__llvm_profile_override_default_filename(i8*)10 // PROF-INSTR-NONE-NOT: @__profn_main11 // PROF-INSTR-GARBAGE: invalid PGO instrumentor in argument '-fprofile-instrument=garbage'
2 # Use of this source code is governed by a BSD-style license that can be10 import("//build/config/compiler/pgo/pgo.gni")34 # In late bring-up on macOS (see docs/mac_lld.md).49 # With GCC, warnings in no-Chromium code are always not treated as errors.59 # -1 means auto-set according to debug/release and platform.60 symbol_level = -162 # Android-only: Strip the debug info of libraries within lib.unstripped to74 # gcc >= 4.8 or clang.79 # Enables support for ThinLTO, which links 3x-10x faster than full LTO. See80 # also http://blog.llvm.org/2016/06/thinlto-scalable-and-incremental-lto.html[all …]
1 //===-- InstrProf.h - Instrumented profiling format support -----*- C++ -*-===//8 //===----------------------------------------------------------------------===//10 // Instrumentation-based profiling data is generated by instrumented11 // binaries through library functions in compiler-rt, and read by the clang12 // frontend to feed PGO.14 //===----------------------------------------------------------------------===//54 /// Return the name of the data section containing per-function control91 /// Return the name prefix of variables containing per-function control data.108 /// of all function's PGO names.121 /// of PGO name vars referenced by the coverage mapping. The owning[all …]
2 # Use of this source code is governed by a BSD-style license that can be10 import("//build/config/compiler/pgo/pgo.gni")35 # In late bring-up on macOS (see docs/mac_lld.md).49 # With GCC, warnings in no-Chromium code are always not treated as errors.59 # -1 means auto-set according to debug/release and platform.60 symbol_level = -162 # Android-only: Strip the debug info of libraries within lib.unstripped to74 # gcc >= 4.8 or clang.83 # Enables support for ThinLTO, which links 3x-10x faster than full LTO. See84 # also http://blog.llvm.org/2016/06/thinlto-scalable-and-incremental-lto.html[all …]
1 //===- InstrProf.h - Instrumented profiling format support ------*- C++ -*-===//5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception7 //===----------------------------------------------------------------------===//9 // Instrumentation-based profiling data is generated by instrumented10 // binaries through library functions in compiler-rt, and read by the clang11 // frontend to feed PGO.13 //===----------------------------------------------------------------------===//84 /// Return the name prefix of variables containing per-function control data.97 /// of all function's PGO names.110 /// of PGO name vars referenced by the coverage mapping. The owning[all …]