Changes from Git (git http://labmaster3.local/git/llvm-project.git)


  1. [llvm-exegesis][NFC] Refactor Mips tests fixtures into a base class. (details)
  2. [llvm-exegesis][mips] Add RegisterAliasingTest unit test (details)
  3. [Hexagon] Fix alignment info for __builtin_circ_lduh (details)
  4. [gn build] Port 6b357866496 (details)
  5. [llvm] Make new pass manager's OptimizationLevel a class (details)
Commit 31458a9feecb636e64a360d87081f836f2920ccb by Milos.Stojanovic
[llvm-exegesis][NFC] Refactor Mips tests fixtures into a base class.
Differential Revision:
The file was addedllvm/unittests/tools/llvm-exegesis/Mips/TestBase.h
The file was modifiedllvm/unittests/tools/llvm-exegesis/Mips/SnippetGeneratorTest.cpp
The file was modifiedllvm/unittests/tools/llvm-exegesis/Mips/BenchmarkResultTest.cpp
The file was modifiedllvm/unittests/tools/llvm-exegesis/Mips/TargetTest.cpp
Commit 6b3578664961d474cc06c44e1723913ddeb499cd by Milos.Stojanovic
[llvm-exegesis][mips] Add RegisterAliasingTest unit test
Differential Revision:
The file was modifiedllvm/unittests/tools/llvm-exegesis/Mips/CMakeLists.txt
The file was addedllvm/unittests/tools/llvm-exegesis/Mips/RegisterAliasingTest.cpp
Commit bc413da0865d6c0dba1c39f185298806c60890e3 by kparzysz
[Hexagon] Fix alignment info for __builtin_circ_lduh
The file was modifiedclang/lib/Sema/SemaChecking.cpp
Commit c29a9f64b78e98ff4f23e7a48df7cb7a100a9676 by llvmgnsyncbot
[gn build] Port 6b357866496
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/tools/llvm-exegesis/Mips/
Commit 7acfda633f1378344efde22bfed242dd56c26cdd by mtrofin
[llvm] Make new pass manager's OptimizationLevel a class
Summary: The old pass manager separated speed optimization and size
optimization levels into two unsigned values. Coallescing both in an
enum in the new pass manager may lead to unintentional casts and
In particular, taking a look at how the loop unroll passes were
constructed previously, the Os/Oz are now (==new pass manager) treated
just like O3, likely unintentionally.
This change disallows raw comparisons between optimization levels, to
avoid such unintended effects. As an effect, the O{s|z} behavior changes
for loop unrolling and loop unroll and jam, matching O2 rather than O3.
The change also parameterizes the threshold values used for loop
unrolling, primarily to aid testing.
Reviewers: tejohnson, davidxl
Reviewed By: tejohnson
Subscribers: zzheng, ychen, mehdi_amini, hiraditya, steven_wu,
dexonsmith, dang, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision:
The file was addedllvm/test/Transforms/LoopUnrollAndJam/opt-levels.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
The file was modifiedllvm/include/llvm/Passes/PassBuilder.h
The file was addedllvm/test/Transforms/LoopUnroll/opt-levels.ll