SuccessChanges

Summary

  1. [AArch64][GlobalISel] Add a post-legalize combine for lowering vector-immediate G_ASHR/G_LSHR. (details)
  2. [AArch64][GlobalISel] Merge selection of vector-vector G_ASHR/G_LSHR and support more cases. (details)
  3. Fix comment typos. NFC. (details)
  4. [lldb/test] Clean up version checking. (details)
  5. [llvm] Fix comment typos.  NFC. (details)
  6. [RISCV] Do not mandate scheduling for CSR instructions (details)
  7. [SimplifyCFG] Override options in default constructor (details)
  8. [MLIR][Affine][VectorOps] Utility to vectorize loop nest using strategy (details)
  9. [NewPM] Support -disable-simplify-libcall/-disable-builtin in NPM opt (details)
  10. [EarlyCSE] Handle masked loads and stores (details)
  11. [docs] Update ExtendingLLVM.rst (details)
  12. Add a "Trace" plug-in to LLDB to add process trace support in stages. (details)
  13. NFC: Add whitespace-changing revisions to .git-blame-ignore-revs (details)
  14. [libc++] Fix failures when running the test suite without RTTI (details)
  15. Revert D71539 "Recommit "[SCEV] Look through single value PHIs."" (details)
  16. Fix reporting the lack of global variables in "target var". (details)
  17. [libc++] Fix copy/paste error that broke a test (details)
  18. Include sstream after D85705 (details)
  19. [NewPM] Pin -lazy-branch-prob and -lazy-block-freq tests to legacy PM (details)
  20. [Delinearization][NewPM] Port delinearization to NPM (details)
  21. [UnifyLoopExits] Pin tests with -unify-loop-exits to legacy PM (details)
  22. [lldb] Delete two unneeded <regex> (details)
  23. Implement a new kind of Pass: dynamic pass pipeline (details)
  24. [mlir] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D85869 (details)
  25. [LoopUnswitch] Trivial simplification: remove trivial dead condition after unswitch (details)
  26. [WebAssembly][MC] Fix computation of relative symbol offset (details)
  27. Reorder linalg.conv indexing_maps loop order (details)
  28. [AlwaysInliner] Emit optimization remarks (details)
Commit a513fdec90de6b0719e8dc4f079bbdd78eb9aaf1 by Amara Emerson
[AArch64][GlobalISel] Add a post-legalize combine for lowering vector-immediate G_ASHR/G_LSHR.

In order to select the immediate forms using the imported patterns, we need to
lower them into new G_VASHR/G_VLSHR target generic ops. Add a combine to do this
matching build_vector of constant operands.

With this, we get selection for free.
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp (diff)
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-vashr-vlshr.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrGISel.td (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64Combine.td (diff)
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-vector-shift.mir (diff)
Commit e3f5046e44772d41632796389716930bafa96b74 by Amara Emerson
[AArch64][GlobalISel] Merge selection of vector-vector G_ASHR/G_LSHR and support more cases.

The vector-immediate cases are handled elsewhere in an earlier commit.
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp (diff)
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-vector-shift.mir (diff)
Commit ca8321574d62cdccc85cf222ae43e0b48c3dfe96 by kazu
Fix comment typos. NFC.
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/irreducible.ll (diff)
The file was modifiedllvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h (diff)
Commit 307b7a1d665898d0e980461919996b6a670a4847 by rupprecht
[lldb/test] Clean up version checking.

A few fixes while trying to figure out why tests are being skipped for arsenm:

- We check `$compiler -v`, but `-v` is `--verbose`, not `--version`. Use the long flag name.
- We check all lines matching `version ...`, but we should exit early for the first version string we see (which should be the main one). I'm not sure if this is the issue, but perhaps this is causing some users to skip some tests if another "version ..." is showing up later.
- Having `\.` in a python string is triggering pylint warnings, because it should be escaped as a regex string, e.g. `r'\.' However, `.` in a character class does not need to be escaped, as it matches only a literal `.` in that context.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D88051
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py (diff)
Commit 161159888b430dad90605563259cd28b1ad25b14 by kazu
[llvm] Fix comment typos.  NFC.
The file was modifiedllvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h (diff)
Commit 394d02016705e4b0fdfaa34c53be695f3f61922d by ebahapo
[RISCV] Do not mandate scheduling for CSR instructions

Scheduling information is of little value when they may disrupt the
pipeline.  This patch allows omitting the scheduling information for CSR
instructions while still setting `SchedMachineModel::CompleteModel`.  For
specific cases, any scheduling information added will be used by the
scheduler.

Differential revision: https://reviews.llvm.org/D85366
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.td (diff)
Commit 1747f7776403626b23ef0389264643fe4d6bec17 by aeubanks
[SimplifyCFG] Override options in default constructor

SimplifyCFG's options should always be overridden by command line flags,
but they mistakenly weren't in the default constructor.

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D87718
The file was modifiedllvm/include/llvm/Transforms/Scalar/SimplifyCFG.h (diff)
The file was modifiedllvm/test/Transforms/SimplifyCFG/HoistCode.ll (diff)
The file was modifiedllvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp (diff)
Commit 14d0735d3453fb6403da916d7aee6a9f25af4147 by diego.caballero
[MLIR][Affine][VectorOps] Utility to vectorize loop nest using strategy

This patch adds a utility based on SuperVectorizer to vectorize an
affine loop nest using a given vectorization strategy. This strategy allows
targeting specific loops for vectorization instead of relying of the
SuperVectorizer analysis to choose the right loops to vectorize.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D85869
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/vectorize_2d.mlir (diff)
The file was modifiedmlir/include/mlir/Dialect/Affine/Utils.h (diff)
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp (diff)
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir (diff)
Commit 44b1643d17753fb2f35ef1d42420a4578bb8d55d by aeubanks
[NewPM] Support -disable-simplify-libcall/-disable-builtin in NPM opt

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D87932
The file was modifiedllvm/tools/opt/NewPMDriver.cpp (diff)
The file was modifiedllvm/tools/opt/NewPMDriver.h (diff)
The file was modifiedllvm/test/Transforms/InstCombine/disable-simplify-libcalls.ll (diff)
The file was modifiedllvm/tools/opt/opt.cpp (diff)
Commit ae3f54c1e909743a89d48a8a05e18d2c8fd652ba by kparzysz
[EarlyCSE] Handle masked loads and stores

Extend the handling of memory intrinsics to also include non-
target-specific intrinsics, in particular masked loads and stores.

Invent "isHandledNonTargetIntrinsic" to distinguish between intrin-
sics that should be handled natively from intrinsics that can be
passed to TTI.

Add code that handles masked loads and stores and update the
testcase to reflect the results.

Differential Revision: https://reviews.llvm.org/D87340
The file was modifiedllvm/test/Transforms/EarlyCSE/masked-intrinsics-unequal-masks.ll (diff)
The file was modifiedllvm/lib/Transforms/Scalar/EarlyCSE.cpp (diff)
The file was modifiedllvm/test/Transforms/EarlyCSE/masked-intrinsics.ll (diff)
Commit c82c0f99a5c12eabdfc099f6e24c789deff05f94 by ncv
[docs] Update ExtendingLLVM.rst

Updated file paths and function signatures in section
"Adding a new type".

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D88049
The file was modifiedllvm/docs/ExtendingLLVM.rst (diff)
Commit 74c93956e1c1f1054dfb040ce26830016e0f3095 by walter erquinigo
Add a "Trace" plug-in to LLDB to add process trace support in stages.

This is the first in a series of patches that will adds a new processor trace plug-in to LLDB.

The idea for this first patch to to add the plug-in interface with simple commands for the trace files that can "load" and "dump" the trace information. We can test the functionality and ensure people are happy with the way things are done and how things are organized before moving on to adding more functionality.

Processor trace information can be view in a few different ways:
- post mortem where a trace is saved off that can be viewed later in the debugger
- gathered while a process is running and allow the user to step back in time (with no variables, memory or registers) to see how each thread arrived at where it is currently stopped.

This patch attempts to start with the first solution of loading a trace file after the fact. The idea is that we will use a JSON file to load the trace information. JSON allows us to specify information about the trace like:
- plug-in name in LLDB
- path to trace file
- shared library load information so we can re-create a target and symbolicate the information in the trace
- any other info that the trace plug-in will need to be able to successfully parse the trace information
  - cpu type
  - version info
  - ???

A new "trace" command was added at the top level of the LLDB commmands:
- "trace load"
- "trace dump"

I did this because if we load trace information we don't need to have a process and we might end up creating a new target for the trace information that will become active. If anyone has any input on where this would be better suited, please let me know. Walter Erquinigo will end up filling in the Intel PT specific plug-in so that it works and is tested once we can agree that the direction of this patch is the correct one, so please feel free to chime in with ideas on comments!

Reviewed By: clayborg

Differential Revision: https://reviews.llvm.org/D85705
The file was addedlldb/test/API/commands/trace/intelpt-trace/3842849.trace
The file was addedlldb/source/Plugins/Trace/intel-pt/TraceIntelPT.cpp
The file was modifiedlldb/source/Target/CMakeLists.txt (diff)
The file was addedlldb/test/API/commands/trace/intelpt-trace/main.cpp
The file was addedlldb/test/API/commands/trace/TestTraceLoad.py
The file was modifiedlldb/source/Plugins/CMakeLists.txt (diff)
The file was addedlldb/source/Plugins/Trace/intel-pt/TraceIntelPTSettingsParser.cpp
The file was modifiedlldb/source/Commands/Options.td (diff)
The file was addedlldb/test/API/commands/trace/TestTraceSchema.py
The file was modifiedlldb/include/lldb/lldb-forward.h (diff)
The file was addedlldb/source/Target/TraceSettingsParser.cpp
The file was modifiedlldb/source/Utility/StructuredData.cpp (diff)
The file was addedlldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h
The file was addedlldb/source/Commands/CommandObjectTrace.cpp
The file was addedlldb/include/lldb/Target/TraceSettingsParser.h
The file was modifiedlldb/source/Commands/CMakeLists.txt (diff)
The file was modifiedlldb/source/Core/PluginManager.cpp (diff)
The file was addedlldb/include/lldb/Target/Trace.h
The file was addedlldb/source/Commands/CommandObjectTrace.h
The file was addedlldb/test/API/commands/trace/intelpt-trace/trace.json
The file was addedlldb/test/API/commands/trace/intelpt-trace/trace_bad2.json
The file was modifiedlldb/include/lldb/lldb-private-interfaces.h (diff)
The file was modifiedlldb/source/Interpreter/CommandInterpreter.cpp (diff)
The file was addedlldb/source/Plugins/Trace/intel-pt/TraceIntelPTSettingsParser.h
The file was addedlldb/source/Plugins/Trace/intel-pt/CMakeLists.txt
The file was modifiedlldb/include/lldb/Core/PluginManager.h (diff)
The file was addedlldb/source/Target/Trace.cpp
The file was addedlldb/source/Plugins/Trace/CMakeLists.txt
The file was addedlldb/test/API/commands/trace/intelpt-trace/trace_bad.json
The file was addedlldb/test/API/commands/trace/intelpt-trace/a.out
The file was addedlldb/test/API/commands/trace/intelpt-trace/trace_bad3.json
Commit 8e4bb9e2d85794ef3e5e424caf1e16e797b41ea3 by Louis Dionne
NFC: Add whitespace-changing revisions to .git-blame-ignore-revs
The file was modified.git-blame-ignore-revs (diff)
Commit bb09ef959811ec4dc68f5a0b4bb6105a090c3919 by Louis Dionne
[libc++] Fix failures when running the test suite without RTTI
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.mod/reset_pointer_deleter_allocator.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.overview/copy_ctor.pass.cpp (diff)
The file was modifiedlibcxx/test/libcxx/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/move_reentrant.pass.cpp (diff)
The file was removedlibcxx/test/support/demangle.h
The file was modifiedlibcxx/test/support/type_id.h (diff)
The file was removedlibcxx/test/support/test.support/test_macros_header_rtti.fail.cpp
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_deleter.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.cast/dynamic_pointer_cast.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/any/any.nonmembers/any.cast/any_cast_pointer.pass.cpp (diff)
The file was removedlibcxx/test/support/test.support/test_macros_header_rtti.pass.cpp
The file was modifiedlibcxx/test/support/test_macros.h (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.alg/swap.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.getdeleter/get_deleter.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.members/lt.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_move.pass.cpp (diff)
The file was modifiedlibcxx/test/libcxx/utilities/function.objects/func.blocks.sh.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.members/ctor.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.mod/swap.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/nullptr_t_deleter_allocator.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.obs/op_bool.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.members/hash_code.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_rfunction.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.targ/target_type.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.members/eq.pass.cpp (diff)
The file was removedlibcxx/test/support/test.support/test_macros_header_exceptions.pass.cpp
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.mod/reset_pointer_deleter.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/F.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_assign.pass.cpp (diff)
The file was removedlibcxx/test/support/test.support/test_macros_header_exceptions.fail.cpp
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.overview/copy_assign.pass.cpp (diff)
The file was modifiedlibcxx/include/any (diff)
The file was modifiedlibcxx/test/libcxx/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/nullptr_t_assign_reentrant.pass.cpp (diff)
The file was modifiedlibcxx/test/std/language.support/support.rtti/type.info/type_info_hash.pass.cpp (diff)
The file was addedlibcxx/test/support/test.support/test_macros_header.rtti.pass.cpp
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.synopsis/hash_type_index.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/F_nullptr.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.members/name.pass.cpp (diff)
The file was addedlibcxx/test/support/test.support/test_macros_header.exceptions.pass.cpp
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/nullptr_t_deleter.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_function.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.targ/target.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/type.index/type.index.hash/hash.pass.cpp (diff)
The file was addedlibcxx/test/support/test.support/test_macros_header.no_rtti.verify.cpp
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/nullptr_t_assign.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_deleter_allocator.pass.cpp (diff)
The file was addedlibcxx/test/support/test.support/test_macros_header.no_exceptions.verify.cpp
The file was modifiedlibcxx/test/support/experimental_any_helpers.h (diff)
The file was modifiedlibcxx/test/std/language.support/support.rtti/type.info/type_info.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/utility/utility.inplace/inplace.pass.cpp (diff)
The file was modifiedlibcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/F_assign.pass.cpp (diff)
The file was removedlibcxx/test/support/test.support/test_demangle.pass.cpp
Commit 8fdac7cb7abbeeaed016ef9eb7a087458e41e33f by i
Revert D71539 "Recommit "[SCEV] Look through single value PHIs.""

This reverts commit 11dccf8d3aa5d55210f8b886fb21926c7a8353ca.

A bootstrapped clang crashes (due to ArrayRef::front called on an empty
ArrayRef) when compiling some files.  Very strangely, this only reproduces with
modules.

```
13 0x0000564d3349e968 llvm::ArrayRef<llvm::BasicBlock*>::front() const /proc/self/cwd/llvm/include/llvm/ADT/ArrayRef.h:160:7
14 0x0000564d3349e896 llvm::LoopBase<llvm::BasicBlock, llvm::Loop>::getHeader() const /proc/self/cwd/llvm/include/llvm/Analysis/LoopInfo.h:104:50
15 0x0000564d3349fd9d llvm::LoopBase<llvm::BasicBlock, llvm::Loop>::getLoopLatch() const /proc/self/cwd/llvm/include/llvm/Analysis/LoopInfoImpl.h:210:11
16 0x0000564d33593c8a llvm::ScalarEvolution::computeBackedgeTakenCount(llvm::Loop const*, bool) /proc/self/cwd/llvm/lib/Analysis/ScalarEvolution.cpp:6933:15
17 0x0000564d33592ebc llvm::ScalarEvolution::getBackedgeTakenInfo(llvm::Loop const*) /proc/self/cwd/llvm/lib/Analysis/ScalarEvolution.cpp:0:30
18 0x0000564d33593a54 llvm::ScalarEvolution::getBackedgeTakenCount(llvm::Loop const*, llvm::ScalarEvolution::ExitCountKind) /proc/self/cwd/llvm/lib/Analysis/ScalarEvolution.cpp:6487:36
19 0x0000564d32be2402 llvm::ScalarEvolution::getConstantMaxBackedgeTakenCount(llvm::Loop const*) /proc/self/cwd/llvm/include/llvm/Analysis/ScalarEvolution.h:768:5
20 0x0000564d33590807 llvm::ScalarEvolution::getRangeRef(llvm::SCEV const*, llvm::ScalarEvolution::RangeSignHint) /proc/self/cwd/llvm/lib/Analysis/ScalarEvolution.cpp:5495:19
21 0x0000564d320abab7 llvm::ScalarEvolution::getSignedRange(llvm::SCEV const*) /proc/self/cwd/llvm/include/llvm/Analysis/ScalarEvolution.h:840:12
22 0x0000564d335a03aa llvm::ScalarEvolution::isKnownPredicateViaConstantRanges(llvm::CmpInst::Predicate, llvm::SCEV const*, llvm::SCEV const*) /proc/self/cwd/llvm/lib/Analysis/ScalarEvolution.cpp:9239:60
23 0x0000564d33586a80 llvm::ScalarEvolution::isKnownViaNonRecursiveReasoning(llvm::CmpInst::Predicate, llvm::SCEV const*, llvm::SCEV const*) /proc/self/cwd/llvm/lib/Analysis/ScalarEvolution.cpp:10284:60
```
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp (diff)
The file was modifiedllvm/test/Transforms/LoopStrengthReduce/funclet.ll (diff)
The file was modifiedllvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll (diff)
The file was modifiedllvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll (diff)
Commit 94b0d836a105116220052313df5a58473f706cdf by jingham
Fix reporting the lack of global variables in "target var".

There was a little thinko which meant when stopped in a frame with
debug information but whose CU didn't have any global variables we
report:

no debug info for frame <N>

This patch fixes that error message to say the intended:

no global variables in current compile unit

<rdar://problem/69086361>
The file was modifiedlldb/source/Commands/CommandObjectTarget.cpp (diff)
The file was addedlldb/test/API/functionalities/target_var/no_vars/Makefile
The file was addedlldb/test/API/functionalities/target_var/no_vars/TestTargetVarNoVars.py
The file was addedlldb/test/API/functionalities/target_var/no_vars/main.c
Commit ac65e3d2ce10d6867b62faf107ff2aed05086ecf by Louis Dionne
[libc++] Fix copy/paste error that broke a test
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.mod/reset_pointer_deleter_allocator.pass.cpp (diff)
Commit 0b9f9eced9c532ee9bbf320216a2e85b314eb5f0 by i
Include sstream after D85705
The file was modifiedlldb/source/Target/TraceSettingsParser.cpp (diff)
Commit 84a8ca1e6ce1400345e693fe7495e5d271fb2dc6 by aeubanks
[NewPM] Pin -lazy-branch-prob and -lazy-block-freq tests to legacy PM

NPM passes just use the normal versions of these analyses instead.
Also pin any tests with -analyze to legacy PM.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D87857
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/libfunc_call.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/basic.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/redundant_edges.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/fcmp.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/loop_with_branch.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/basic.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/loop_with_invoke.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/extremely-likely-loop-successor.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/zero_heuristics.ll (diff)
The file was modifiedllvm/test/Transforms/Util/PR37334-break-crit-edges-require-dt.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/double_exit.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/noreturn.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/irreducible_loop_crash.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/nested_loop_with_branches.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/loops_with_profile_info.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/pr18705.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/bad_input.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/irreducible_pgo.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/irreducible.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/switch.ll (diff)
The file was modifiedllvm/test/Analysis/BlockFrequencyInfo/double_backedge.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/deopt-intrinsic.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/pr22718.ll (diff)
The file was modifiedllvm/test/Analysis/BranchProbabilityInfo/loop.ll (diff)
Commit 9db0c572c1fc07fef5e2ed46203da3772c2d7765 by aeubanks
[Delinearization][NewPM] Port delinearization to NPM

Also make tests in Analysis/Delinearization work under NPM.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D87741
The file was modifiedllvm/test/Analysis/Delinearization/multidim_only_ivs_2d.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_ivs_and_integer_offsets_3d.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_only_ivs_2d_nested.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/iv_times_constant_in_subscript.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/parameter_addrec_product.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_ivs_and_integer_offsets_nts_3d.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/terms_with_identity_factor.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_only_ivs_3d.ll (diff)
The file was modifiedllvm/lib/Passes/PassBuilder.cpp (diff)
The file was modifiedllvm/test/Analysis/Delinearization/a.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/gcd_multiply_expr.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/himeno_1.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_ivs_and_parameteric_offsets_3d.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/divide_by_one.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_only_ivs_3d_cast.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/type_mismatch.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/undef.ll (diff)
The file was addedllvm/include/llvm/Analysis/Delinearization.h
The file was modifiedllvm/test/Analysis/Delinearization/himeno_2.ll (diff)
The file was modifiedllvm/test/Analysis/Delinearization/constant_functions_multi_dim.ll (diff)
The file was modifiedllvm/lib/Analysis/Delinearization.cpp (diff)
The file was modifiedllvm/lib/Passes/PassRegistry.def (diff)
The file was modifiedllvm/test/Analysis/Delinearization/multidim_two_accesses_different_delinearization.ll (diff)
Commit 89df0fda1767d9f91cb9bfaf6d0e839bbc04c76f by aeubanks
[UnifyLoopExits] Pin tests with -unify-loop-exits to legacy PM

The pass is not used in tree, so no reason to port it.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D88058
The file was modifiedllvm/test/Transforms/UnifyLoopExits/nested.ll (diff)
The file was modifiedllvm/test/Transforms/UnifyLoopExits/restore-ssa.ll (diff)
The file was modifiedllvm/test/Transforms/UnifyLoopExits/switch.ll (diff)
The file was modifiedllvm/test/Transforms/StructurizeCFG/workarounds/needs-unified-loop-exits.ll (diff)
The file was modifiedllvm/test/Transforms/UnifyLoopExits/basic.ll (diff)
The file was modifiedllvm/test/Transforms/StructurizeCFG/workarounds/needs-fr-ule.ll (diff)
Commit 95bfeb5903c7b75a0a9ddf5c4b53e4308bb05486 by i
[lldb] Delete two unneeded <regex>
The file was modifiedlldb/source/Target/Trace.cpp (diff)
The file was modifiedlldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp (diff)
Commit 385c3f43fceba227be2e4dce84a59075733541c1 by joker.eph
Implement a new kind of Pass: dynamic pass pipeline

Instead of performing a transformation, such pass yields a new pass pipeline
to run on the currently visited operation.
This feature can be used for example to implement a sub-pipeline that
would run only on an operation with specific attributes. Another example
would be to compute a cost model and dynamic schedule a pipeline based
on the result of this analysis.

Discussion: https://llvm.discourse.group/t/rfc-dynamic-pass-pipeline/1637

Reviewed By: silvas

Differential Revision: https://reviews.llvm.org/D86392
The file was addedmlir/test/Pass/dynamic-pipeline-nested.mlir
The file was modifiedmlir/test/lib/Transforms/CMakeLists.txt (diff)
The file was addedmlir/test/Pass/dynamic-pipeline-fail-on-parent.mlir
The file was modifiedmlir/lib/Pass/Pass.cpp (diff)
The file was addedmlir/test/lib/Transforms/TestDynamicPipeline.cpp
The file was addedmlir/test/Pass/dynamic-pipeline.mlir
The file was modifiedmlir/include/mlir/Pass/Pass.h (diff)
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp (diff)
The file was modifiedmlir/include/mlir/Pass/PassManager.h (diff)
Commit 91671e13efbc5dbd17b832d7973401350d0a6ee6 by i
[mlir] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D85869
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp (diff)
Commit 5502cfa091e0f6b35a6d96435b2ec15a43a324eb by serguei.katkov
[LoopUnswitch] Trivial simplification: remove trivial dead condition after unswitch

Non trivial loop unswitch can keep the dead condition instruction.
CL adds trivial dead code elimination for unused condition.

Reviewers: asbirlea, aqjune, fhahn, DaniilSuchkov, reames
Reviewed By: asbirlea
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D88014
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp (diff)
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/nontrivial-unswitch.ll (diff)
Commit 9c7b58080ebd7ad3a63b892b5ae7f92e41587327 by d.c.ddcc
[WebAssembly][MC] Fix computation of relative symbol offset

For relative symbols, add its offset when computing relocation value.
Also, warn on unsupported absolute symbols.

Differential Revision: https://reviews.llvm.org/D87407
The file was removedllvm/test/MC/WebAssembly/offset.s
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp (diff)
The file was addedllvm/test/MC/WebAssembly/alias-offset.s
Commit 9b47525824df9be5ae23c39e7ce0d220d12f85e5 by ataei
Reorder linalg.conv indexing_maps loop order

Change the indexing map to iterate over the (b, x0, x1, z0, z1, q, k) instead of (b, x0, x1, k, q, z0, z1) to evaluate the convolution expression:
Y[b, x0, x1, k] = sum(W[z0, z1, q, k] * X[b, x0 + z0, x1 + z1, q], z0, z1, q)

This allows llvm auto vectorize to work and has better locality resulting significant performance improvments

Differential Revision: https://reviews.llvm.org/D87781
The file was modifiedmlir/test/Dialect/Linalg/loops.mlir (diff)
The file was modifiedmlir/test/Dialect/Linalg/tile_conv.mlir (diff)
The file was modifiedmlir/test/Dialect/Linalg/affine.mlir (diff)
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td (diff)
Commit 3bf703fb6d55b23d29c792325a78cd3ead9ad07c by aeubanks
[AlwaysInliner] Emit optimization remarks

To match the normal inliner in preparation for https://reviews.llvm.org/D86988.

Also change a FIXME to an assert.

Reviewed By: davidxl

Differential Revision: https://reviews.llvm.org/D88067
The file was modifiedllvm/test/Transforms/Inline/optimization-remarks.ll (diff)
The file was modifiedllvm/lib/Transforms/IPO/AlwaysInliner.cpp (diff)

Summary

  1. Update recipe for flang-aarch64 slaves (details)
  2. clang-x86-ninja-win10 - replacing backslashes (details)
Commit 965bd9eb785ee6929a9dd71b741c6e81745357fb by caroline.concatto
Update recipe for flang-aarch64 slaves

- Update compiler location for flang-aarch64-ubuntu-{clang and gcc10}
- Add another email to the extra recipient for flang-aarch64
- Make flang-aarch64 slaves build new flang driver by default
- Add a missing coma to flang-aarch64-ubuntu-gcc10 recipe

Differential Revision: https://reviews.llvm.org/D87125
The file was modifiedbuildbot/osuosl/master/config/status.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit bc6f110d29f33b97e734d3d9a15ec7dbc63733e3 by kuhnel
clang-x86-ninja-win10 - replacing backslashes

in buildbot.tac with forward slashes to address re-configuration
cycles in cmake
The file was modifiedbuildbot/google/docker/buildbot-windows10-vs2019/VERSION (diff)
The file was modifiedbuildbot/google/docker/buildbot-windows10-vs2019/run.ps1 (diff)
The file was modifiedbuildbot/google/terraform/main.tf (diff)