Skip to content
Snippets Groups Projects
  1. Jun 10, 2016
  2. Jun 09, 2016
  3. Jun 03, 2016
  4. May 31, 2016
  5. Apr 27, 2016
  6. Apr 09, 2016
    • Chris Bieneman's avatar
      [Perf-Training] Reworked workflow improvements for order-file generation · 5f12fe84
      Chris Bieneman authored
      This is re-landing r260742. I've reworked the conditionals so that it only hits when targeting Apple platforms with ld64.
      
      Original Summary:
      With this change generating clang order files using dtrace uses the following workflow:
      
      cmake <whatever options you want>
      
      ninja generate-order-file
      
      ninja clang
      
      This patch works by setting a default path to the order file (which can be overridden by the user). If the order file doesn't exist during configuration CMake will create an empty one.
      
      CMake then ties up the dependencies between the clang link job and the order file, and generate-order-file overwrites CLANG_ORDER_FILE with the new order file.
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@265864 91177308-0d34-0410-b5e6-96231b3b80d8
      5f12fe84
  7. Mar 28, 2016
  8. Mar 15, 2016
  9. Feb 26, 2016
  10. Feb 17, 2016
  11. Feb 12, 2016
  12. Feb 10, 2016
  13. Feb 05, 2016
  14. Feb 04, 2016
  15. Jan 20, 2016
  16. Jan 19, 2016
  17. Jan 14, 2016
  18. Jan 06, 2016
    • Chris Bieneman's avatar
      [CMake] Support a simple case for bootstrap builds to generate PGO data · 5be48041
      Chris Bieneman authored
      Summary:
      This patch adds support for the clang multi-stage bootstrapping to support PGO profdata generation, and can build a 2 or 3 stage compiler.
      
      With this patch applied you can configure your build directory with the following invocation of CMake:
      
      cmake -G <generator> -C <path_to_clang>/cmake/caches/PGO.cmake <source dir>
      
      After configuration the following additional targets will be generated:
      
      stage2-instrumented:
      Builds a stage1 x86 compiler, runtime, and required tools (llvm-config, llvm-profdata) then uses that compiler to build an instrumented stage2 compiler.
      
      stage2-instrumented-generate-profdata:
      Depends on "stage2-instrumented" and will use the instrumented compiler to generate profdata based on the training files in <clang>/utils/perf-training
      
      stage2:
      Depends on "stage2-instrumented-generate-profdata" and will use the stage1 compiler with the stage2 profdata to build a PGO-optimized compiler.
      
      stage2-check-llvm:
      Depends on stage2 and runs check-llvm using the stage3 compiler.
      
      stage2-check-clang:
      Depends on stage2 and runs check-clang using the stage3 compiler.
      
      stage2-check-all:
      Depends on stage2 and runs check-all using the stage3 compiler.
      
      stage2-test-suite:
      Depends on stage2 and runs the test-suite using the stage3 compiler (requires in-tree test-suite).
      
      Reviewers: bogner, silvas, chandlerc
      
      Subscribers: cfe-commits
      
      Differential Revision: http://reviews.llvm.org/D15584
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256873 91177308-0d34-0410-b5e6-96231b3b80d8
      5be48041
  19. Dec 19, 2015
    • Chris Bieneman's avatar
      Revert "[CMake] Support a simple case for bootstrap builds to generate PGO data" · 3ba7676a
      Chris Bieneman authored
      This reverts commit r256069, which was an unintentional tag along on
      another commit.
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256088 91177308-0d34-0410-b5e6-96231b3b80d8
      3ba7676a
    • Chris Bieneman's avatar
      [CMake] Support a simple case for bootstrap builds to generate PGO data · 38b19417
      Chris Bieneman authored
      Summary:
      This patch adds support for the clang multi-stage bootstrapping to support PGO profdata generation, and can build a 2 or 3 stage compiler.
      
      With this patch applied you can configure your build directory with the following invocation of CMake:
      
      cmake -G <generator> -C <path_to_clang>/cmake/caches/PGO.cmake <source dir>
      
      After configuration the following additional targets will be generated:
      
      stage2-instrumented:
      Builds a stage1 x86 compiler, runtime, and required tools (llvm-config, llvm-profdata) then uses that compiler to build an instrumented stage2 compiler.
      
      stage2-instrumented-generate-profdata:
      Depends on "stage2-instrumented" and will use the instrumented compiler to generate profdata based on the training files in <clang>/utils/perf-training
      
      stage2:
      Depends on "stage2-instrumented-generate-profdata" and will use the stage1 compiler with the stage2 profdata to build a PGO-optimized compiler.
      
      stage2-check-llvm:
      Depends on stage2 and runs check-llvm using the stage3 compiler.
      
      stage2-check-clang:
      Depends on stage2 and runs check-clang using the stage3 compiler.
      
      stage2-check-all:
      Depends on stage2 and runs check-all using the stage3 compiler.
      
      stage2-test-suite:
      Depends on stage2 and runs the test-suite using the stage3 compiler (requires in-tree test-suite).
      
      Reviewers: bogner, silvas, chandlerc
      
      Subscribers: cfe-commits
      
      Differential Revision: http://reviews.llvm.org/D15584
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@256069 91177308-0d34-0410-b5e6-96231b3b80d8
      38b19417
  20. Dec 16, 2015
  21. Dec 10, 2015
  22. Nov 24, 2015
  23. Nov 20, 2015
    • Chris Bieneman's avatar
      [CMake] Add support for specifying arguments to the bootstrap build. · 3bec932e
      Chris Bieneman authored
      This adds support for three types of argument specifications for bootstrap builds:
      
      (1) Arguments prefixed with BOOTSTRAP_* will be passed through with the leading BOOTSTRAP_ removed.
      (2) CLANG_BOOTSTRAP_PASSTHROUGH can specify a list of variables to be passed through as they are set.
      (3) BOOTSTRAP_DEFAULT_PASSTHROUGH is a list of some default passthrough variables that are always passed through. Those variables include the version string and should only specify variables that are always expected to be the same between the stage1 and stage2
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@253721 91177308-0d34-0410-b5e6-96231b3b80d8
      3bec932e
Loading