SuccessChanges

Summary

  1. [InstCombine] Add a test file that contains safe select transforms (NFC) (details)
  2. [InstCombine] Add more tests to select-safe-transforms.ll (NFC) (details)
  3. [InstCombine] Add more tests for select operand replacement (NFC) (details)
  4. [ASTMatchers] Add mapAnyOf matcher (details)
  5. [ASTMatchers] Make cxxOperatorCallExpr matchers API-compatible with n-ary operators (details)
  6. [LegalizeDAG] Handle NeedInvert when expanding BR_CC (details)
  7. [ASTMatchers] Add binaryOperation matcher (details)
  8. [ASTMatchers] Add support for CXXRewrittenBinaryOperator (details)
  9. Fix llvm::Optional build breaks in MSVC using std::is_trivially_copyable (details)
  10. [Tests] Added tests for new instcombine or simplification; NFC (details)
  11. [InstSimplify] Add (~A & B) | ~(A | B) --> ~A (details)
  12. [RISCV] Correct alignment settings for vector registers. (details)
  13. [InstSimplify] Update comments, remove redundant tests (details)
  14. [LTO] Remove options to disable inlining, vectorization & GVNLoadPRE. (details)
  15. [StringExtras] Fix comment typos (NFC) (details)
  16. [llvm] Construct SmallVector with iterator ranges (NFC) (details)
  17. [llvm] Use *::empty (NFC) (details)
  18. [InstSimplify] Precommit new testcases; NFC (details)
  19. [ARM] Remove LLC tests from transform/hardware loop tests. (details)
  20. [ARM] Add low overhead loops terminators to AnalyzeBranch (details)
  21. [InstSimplify] Handle commutativity for 'and' and 'outer or' for (~A & B) | ~(A | B) --> ~A (details)
  22. [SLP] remove unnecessary use of 'OperationData' (details)
  23. [SLP] fix typos; NFC (details)
  24. [SLP] remove opcode field from reduction data class (details)
  25. [OpenMP] Added the support for hidden helper task in RTL (details)
  26. [mlir][sparse] improved sparse runtime support library (details)
  27. [NFC] Removed extra text in comments (details)
  28. [ARM] Test for aligned blocks. NFC (details)
  29. [ARM] Align blocks that are not fallthough targets (details)
  30. [SimplifyCFG] markAliveBlocks(): catchswitch: preserve PostDomTree (details)
  31. [InstCombine] Replace one-use select operand based on condition (details)
  32. [X86] Default to -x86-pad-for-align=false to drop assembler difference with or w/o -g (details)
  33. [RISCV] Remove unneeded StringRef to std::string conversions in RISCVCompressInstEmitter. NFC (details)
  34. [RISC] Replace dyn_casts that are only checked by an assert with a cast. NFC (details)
  35. [RISCV] Simplify mergeCondAndCode in RISCVCompressInstEmitter.cpp. NFC (details)
  36. [RISCV] Few more minor cleanups to RISCVCompressInstEmitter. NFC (details)
  37. [RISCV] Remove an extra map lookup from RISCVCompressInstEmitter. NFC (details)
  38. [VE] Support VE in libunwind (details)
  39. [ELF] Support R_PPC_ADDR24 (ba foo; bla foo) (details)
  40. [BasicAA] Move assumption tracking into AAQI (details)
  41. Reapply [BasicAA] Handle recursive queries more efficiently (details)
  42. [clang-format] Revert e9e6e3b34a8e (details)
  43. Reland [lldb][docs] Use sphinx instead of epydoc to generate LLDB's Python reference (details)
  44. [clang-format] PR48594 BraceWrapping: SplitEmptyRecord ignored for templates (details)
  45. [clangd] Use empty() instead of size()>0 (details)
  46. [clangd] Use !empty() instead of size()>0 (details)
  47. [InstSimplify] Add tests for x*C1/C2<=x (NFC) (details)
  48. [InstSimplify] Fold x*C1/C2 <= x (PR48744) (details)
  49. [lldb][docs] Cleanup the Python doc strings for SB API classes (details)
  50. [Tests] Add test for PR45691 (details)
  51. [InstCombine] Transform abs pattern using multiplication to abs intrinsic (PR45691) (details)
  52. [lldb][docs] Fix some RST formatting errors related to code examples. (details)
  53. [llvm] Use llvm::sort (NFC) (details)
  54. [IRBuilder] "Zero"-initialize SmallVector (NFC) (details)
  55. [TableGen] Drop redundant const from return types (NFC) (details)
  56. NFC: Minor cleanup of function calls (details)
  57. [SimplifyCFG] Add test for PR48778 (NFC) (details)
  58. [ValueTracking] Fix isSafeToSpeculativelyExecute for sdiv (PR48778) (details)
  59. [lldb] Skip TestPlatformProcessConnect on windows and darwin (details)
  60. Makefile.rules: Delete GCC 4.6 workaround (details)
  61. Fix openmp CMake build on non-Linux AArch64 systems. (details)
  62. [NFC] [TargetRegisterInfo] add one use check to lookThruCopyLike. (details)
  63. Makefile.rules: Make HOST_OS/OS simply expanded variable to avoid excess uname -s invocations (details)
  64. [JITLink][ELF] Skip DWARF sections in ELF objects. (details)
  65. [InstCombine] more tests for D94861 (NFC) (details)
  66. [PowerPC] [NFC] Add AIX triple to some regression tests (details)
  67. [Legalizer] Promote result type in expanding FP_TO_XINT (details)
  68. [test] Autogen a loop vectorizer test to make future changes visible (details)
  69. [test] pre commit a couple more tests for vectorizing multiple exit loops (details)
  70. [JITLink][ELF] New ELF skip-debug-sections test requires asserts. (details)
  71. [PowerPC] support register pressure reduction in machine combiner. (details)
  72. [clang-format] Add StatementAttributeLikeMacros option (details)
  73. [IR] Allow scalable vectors in structs to support intrinsics returning multiple values. (details)
  74. [RISCV] Use tail agnostic policy for instructions with tied defs if the use operand is IMPLICIT_DEF. (details)
  75. [lldb][docs] Resolve the remaining sphinx formatter warnings in the SB API docs (details)
  76. [Object, llvm-readelf] - Move the API for retrieving symbol versions to ELF.h (details)
  77. [clang-format] Fix documentation of bcc1dee600 (details)
  78. [lldb][docs] Use inline literals for code/paths instead of rendering it with the default role (details)
  79. [X86][SSE] isHorizontalBinOp - reuse any existing horizontal ops. (details)
  80. [RISCV] Add scalable vector truncate patterns (details)
  81. [DAG] SimplifyDemandedBits - use KnownBits comparisons to remove ISD::UMIN/UMAX ops (details)
  82. [mlir] Fix cross-compilation (Linalg ODS gen) (details)
  83. Revert "[PowerPC] support register pressure reduction in machine combiner." (details)
  84. [VectorUtils] Do not try to add indices matching tombstone/empty values. (details)
  85. Revert "[OpenMP] Added the support for hidden helper task in RTL" (details)
  86. [AMDGPU][MC][GFX10] Improved dpp8 errors handling (details)
  87. [SystemZ][z/OS] Fix No such file or directory expression error matching in lit tests (details)
  88. [Statepoint] Handle `undef` operands in statepoint. (details)
  89. [Doc] Fix example in codegen doc. (details)
  90. [NFC]Migrate VectorCombine.cpp to use InstructionCost (details)
  91. [InferAttrs] Mark some library functions as willreturn. (details)
  92. [PowerPC][AIX]Do not emit xxspltd mnemonic on AIX. (details)
  93. [CSInfo][MIPS] Update CSInfo in delay slot filler (details)
  94. [SLP] reduce opcode API dependency in reduction cost calc; NFC (details)
  95. [SLP] rename reduction query for min/max ops; NFC (details)
  96. [AMDGPU][MC] Refactored parsing of dpp ctrl (details)
  97. [LoopRotate] Precommit test for prepare-for-lto handling. (details)
  98. Fix for sanitizer issue in 55c557a (details)
  99. [X86][AVX] IsElementEquivalent - add matchShuffleWithUNPCK + VBROADCAST/VBROADCAST_LOAD handling (details)
  100. [WebAssembly] Add support for table linking to wasm-ld (details)
  101. [WebAssembly] MC layer writes table symbols to object files (details)
  102. [AArch64] Further restricts when a dup(*ext) can be rearranged (details)
  103. Reland "[AArch64] Attempt to sink mul operands"" (details)
  104. [MLIR] Support checking if two FlatAffineConstraints are equal (details)
  105. [ARM] Update test target triple. NFC (details)
  106. [clangd] Derive new signals in CC from ASTSignals. (details)
  107. [Coroutine] Do not CoroElide if there are musttail calls (details)
  108. [ARM] Don't handle low overhead branches in AnalyzeBranch (details)
  109. [MLIR] NFC: simplify PresburgerSet::isEqual (details)
  110. [AArch64] Add test to check the attributes for some intrinsics. (details)
  111. [SLP] add more FMF tests for fmax/fmin reductions; NFC (details)
  112. [RISCV][NFC] Increase test coverage of Zbt extension (details)
  113. [AArch64] Make target intrinsics DefaultAttrIntrinsics. (details)
  114. [LLD][ELF][AArch64] Set _GLOBAL_OFFSET_TABLE_ at the start of .got (details)
  115. [AArch64] Revert back to Intrinsic<> for TME instructions. (details)
  116. [lldb][docs] Use 'any' as the default role in LLDB's sphinx project (details)
  117. [llvm] Populate std::vector at construction time (NFC) (details)
  118. [STLExtras] Add a default value to drop_begin (details)
  119. [llvm] Use the default value of drop_begin (NFC) (details)
  120. [clang] Allow LifetimeExtendedTemporary to have no access specifier (details)
  121. [RISCV] Add a test of vector sadd.overflow to demonstrate intrinsics with multiple scalable vector results. (details)
  122. Revert "[RISCV] Add a test of vector sadd.overflow to demonstrate intrinsics with multiple scalable vector results." (details)
  123. Recommit "[RISCV] Add a test of vector sadd.overflow to demonstrate intrinsics with multiple scalable vector results." (details)
  124. [libc++] Rename check-cxx-deps to cxx-test-depends for consistency (details)
  125. [NFC] Update some mlir python documentation. (details)
  126. [libc++] improve feature test macro script (details)
  127. NFC: Document current MLIR Python ODS conventions. (details)
  128. [OpenMP][NFC] Fix test (details)
  129. [PredicateInfo] Add more and/or tests (NFC) (details)
  130. [RISCV] Remove empty Sched instantiations from the end of InstAlias defs. NFCI (details)
  131. [SLP] match maxnum/minnum intrinsics as FP reduction ops (details)
  132. [libc++] NFCI: Refactor allocator_traits (details)
  133. [x86] add cast to avoid compile-time warning; NFC (details)
  134. [LoopInfo] Fix a typo in compareLoops (details)
  135. [SimplifyCFG] Update SimplifyBranchOnICmpChain to recognize select form of and/or (details)
  136. [OpenMP][Docs] Fix typos in FAQ (NFC) (details)
  137. Regenerate the feature test macro unit-tests. NFCI. (details)
  138. [InstCombine,InstSimplify] Optimize select followed by and/or/xor (details)
  139. Address unused variable warning (details)
  140. Revert "[NFC] [TargetRegisterInfo] add one use check to lookThruCopyLike." (details)
  141. [X86] Fix tile spill merge issue. (details)
  142. PR48763: Better handling for classes that inherit a default constructor. (details)
  143. [PowerPC] Sign extend comparison operand for signed atomic comparisons (details)
  144. [X86][AMX] Clear AMX lit test case. (details)
  145. DR2064: decltype(E) is only a dependent type if E is type-dependent, not (details)
  146. PR24076, PR33655, C++ CWG 1558: Consider the instantiation-dependence of (details)
  147. Following up on PR48517, fix handling of template arguments that refer (details)
  148. [c++20] P1907R1: Support for generalized non-type template arguments of scalar type. (details)
  149. [ORC] Move OrcError.h to include/llvm/ExecutionEngine/Orc/Shared. (details)
  150. [libc][NFC] Use ASSERT_EQ instead of EXPECT_EQ in fenv/exception_status_test (details)
  151. Fix a few GCC compiler warnings (NFC) (details)
  152. [libc][NFC][Obvious] Add a missing dep. (details)
  153. [NFC][AIX][XCOFF] Fix compile warning on strncpy (details)
  154. [RISCV] Add intrinsics for vector AMO operations (details)
  155. [libc++] [P0935] [C++20] Eradicating unnecessarily explicit default constructors from the standard library. (details)
  156. [libc][NFC] Remove dead code (details)
  157. [libc][NFC] remove dependency on non standard ssize_t (details)
  158. [clang][driver][NFC][obvious] Remove obsolete unistd.h include (details)
  159. [WebAssembly] call_indirect issues table number relocs (details)
  160. [WebAssembly] Change prefix on data segment flags to WASM_DATA_SEGMENT (details)
  161. [clang][cli] Parse Lang and CodeGen options separately (details)
  162. [X86][AMX] Fix the typo. (details)
  163. [NFC] Make remaining cost functions in LoopVectorize.cpp use InstructionCost (details)
  164. [llvm][nvptx] add atomicity to counter in ISelLowering (details)
  165. [ORC] Move LookupRequest from OrcShared to Orc. (details)
  166. [lit] Harmonize lit and llvm versionning (details)
Commit b664bef2ad9a7d32192b9351f39a222332da8c6d by aqjune
[InstCombine] Add a test file that contains safe select transforms (NFC)
The file was addedllvm/test/Transforms/InstCombine/select-safe-transforms.ll
Commit e0a979ccadd81c71d78be816e893dd1bcd6508ee by aqjune
[InstCombine] Add more tests to select-safe-transforms.ll (NFC)
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-transforms.ll
Commit f0a0ec2d085b0bc53e20643b740b20b49cfd9bd5 by nikita.ppv
[InstCombine] Add more tests for select operand replacement (NFC)
The file was modifiedllvm/test/Transforms/InstCombine/select-binop-cmp.ll
Commit a7101450a42e4f1ed5af1a38a6def08f1b5b58fe by steveire
[ASTMatchers] Add mapAnyOf matcher

Make it possible to compose a matcher for different base nodes.

This accepts one or more node matcher functors and zero or more
matchers, composing the latter into the former.

This allows composing of matchers where the same inner matcher name is
used for the same concept, but with a different node functor. Currently,
there is a limitation that the nodes must be in the same "clade", so
while

  mapAnyOf(ifStmt, forStmt).with(hasBody(stmt()))

can be used, functionDecl can not be added to the tuple.

It is possible to use this in clang-query, but it will require changes
to the QueryParser, so is deferred to a future review.

Differential Revision: https://reviews.llvm.org/D94127
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/docs/tools/dump_ast_matchers.py
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
Commit dbe056c2e37f00b9f33ab63bba73dbb004e13562 by steveire
[ASTMatchers] Make cxxOperatorCallExpr matchers API-compatible with n-ary operators

This makes them composable with mapAnyOf().

Differential Revision: https://reviews.llvm.org/D94128
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
Commit 4f155567317d3187bc18be866b3f3b5352f1bfa5 by bjorn.a.pettersson
[LegalizeDAG] Handle NeedInvert when expanding BR_CC

This is a follow-up fix to commit 03c8d6a0c4bd0016bdfd1e5.
Seems like we now end up with NeedInvert being set in the result
from LegalizeSetCCCondCode more often than in the past, so we
need to handle NeedInvert when expanding BR_CC.

Not sure how to deal with the "Tmp4.getNode()" case properly,
but current assumption is that that code path isn't impacted
by the changes in 03c8d6a0c4bd0016bdfd1e5 so we can simply move
the old assert into the if-branch and only handle NeedInvert in the
else-branch.

I think that the test case added here, for PowerPC, might have
failed also before commit 03c8d6a0c4bd0016bdfd1e5. But we started
to hit the assert more often downstream when having merged that
commit.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D94762
The file was addedllvm/test/CodeGen/PowerPC/legalize-invert-br_cc.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Commit e810e95e4bb908d1c8844e2c6f7da999732cabc9 by steveire
[ASTMatchers] Add binaryOperation matcher

This is a simple utility which allows matching on binaryOperator and
cxxOperatorCallExpr. It can also be extended to support
cxxRewrittenBinaryOperator.

Add generic support for MapAnyOfMatchers to auto-marshalling functions.

Differential Revision: https://reviews.llvm.org/D94129
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Registry.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/docs/tools/dump_ast_matchers.py
The file was modifiedclang/lib/ASTMatchers/ASTMatchersInternal.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Marshallers.h
Commit b765eaf9a617bd3da30f47ece731b33593929885 by steveire
[ASTMatchers] Add support for CXXRewrittenBinaryOperator

Differential Revision: https://reviews.llvm.org/D94130
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchersInternal.cpp
The file was modifiedclang/lib/ASTMatchers/Dynamic/Registry.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/unittests/AST/ASTTraverserTest.cpp
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/include/clang/AST/ASTNodeTraverser.h
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
The file was modifiedclang/include/clang/AST/ExprCXX.h
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
Commit 25c1578a46ff93f920b7ad4e3057465902ced8f5 by alexandre.ganea
Fix llvm::Optional build breaks in MSVC using std::is_trivially_copyable

Current code breaks this version of MSVC due to a mismatch between `std::is_trivially_copyable` and `llvm::is_trivially_copyable` for `std::pair` instantiations.  Hence I was attempting to use `std::is_trivially_copyable` to set `llvm::is_trivially_copyable<T>::value`.

I spent some time root causing an `llvm::Optional` build error on MSVC 16.8.3 related to the change described above:

```
62>C:\src\ocg_llvm\llvm-project\llvm\include\llvm/ADT/BreadthFirstIterator.h(96,12): error C2280: 'llvm::Optional<std::pair<std::pair<unsigned int,llvm::Graph<4>::NodeSubset> *,llvm::Optional<llvm::Graph<4>::ChildIterator>>> &llvm::Optional<std::pair<std::pair<unsigned int,llvm::Graph<4>::NodeSubset> *,llvm::Optional<llvm::Graph<4>::ChildIterator>>>::operator =(const llvm::Optional<std::pair<std::pair<unsigned int,llvm::Graph<4>::NodeSubset> *,llvm::Optional<llvm::Graph<4>::ChildIterator>>> &)': attempting to reference a deleted function (compiling source file C:\src\ocg_llvm\llvm-project\llvm\unittests\ADT\BreadthFirstIteratorTest.cpp)
...
```
The "trivial" specialization of `optional_detail::OptionalStorage` assumes that the value type is trivially copy constructible and trivially copy assignable. The specialization is invoked based on a check of `is_trivially_copyable` alone, which does not imply both `is_trivially_copy_assignable` and `is_trivially_copy_constructible` are true.

[[ https://en.cppreference.com/w/cpp/named_req/TriviallyCopyable | According to the spec ]], a deleted assignment operator does not make `is_trivially_copyable` false. So I think all these properties need to be checked explicitly in order to specialize `OptionalStorage` to the "trivial" version:
```
/// Storage for any type.
template <typename T, bool = std::is_trivially_copy_constructible<T>::value
                          && std::is_trivially_copy_assignable<T>::value>
class OptionalStorage {
```
Above fixed my build break in MSVC, but I think we need to explicitly check `is_trivially_copy_constructible` too since it might be possible the copy constructor is deleted.  Also would be ideal to move over to `std::is_trivially_copyable` instead of the `llvm` namespace verson.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D93510
The file was modifiedllvm/unittests/ADT/OptionalTest.cpp
The file was modifiedllvm/include/llvm/ADT/Optional.h
Commit 9fc814ed59669d8f1d06cde5714c17fac652f2a1 by Dávid Bolvanský
[Tests] Added tests for new instcombine or simplification; NFC
The file was modifiedllvm/test/Transforms/InstCombine/or.ll
Commit a4e2a5145a29af678139f33e94ab3df0fc973e59 by Dávid Bolvanský
[InstSimplify] Add (~A & B) | ~(A | B) --> ~A
The file was modifiedllvm/test/Transforms/InstSimplify/or.ll
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit 098dbf190a5586d02f48b84eb41b93b701cdeb97 by kai.wang
[RISCV] Correct alignment settings for vector registers.

According to "9. Vector Memory Alignment Constraints" in V
specification, the alignment of vector memory access is aligned to the
size of the element. In our current implementation, we support ELEN up
to 64. We could assume the alignment of vector registers is 64 under the
assumption.

Differential Revision: https://reviews.llvm.org/D94751
The file was modifiedllvm/lib/Target/RISCV/RISCVRegisterInfo.td
Commit bdd4dda58b0de08bd3474fb8d4589a9ba9349e88 by Dávid Bolvanský
[InstSimplify] Update comments, remove redundant tests
The file was modifiedllvm/test/Transforms/InstCombine/or.ll
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit bca16e2fbb451f125c13f811f9f5a37bb38e54e2 by flo
[LTO] Remove options to disable inlining, vectorization & GVNLoadPRE.

This patch removes some ancient options as a clean-up before moving
code-gen to use LTOBackend in D94487.

I think it would preferable to remove those ancient options, because

  1. There are no corresponding options in LTOBackend based tools,
  2. There are no unit tests for them,
  3. They are not passed through by Clang,
  4. At least for GNVLoadPRE, users could just use GVN's `enable-load-pre`.

Alternatively we could add support for those options to lto::Config &
co, but I think it would be better to remove them, unless they are
actually used in practice.

Reviewed By: steven_wu, tejohnson

Differential Revision: https://reviews.llvm.org/D94783
The file was modifiedllvm/tools/lto/lto.cpp
The file was modifiedllvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
Commit ba0fc7e1f8d57a7a7dce1a2d604b12e5210dc10f by kazu
[StringExtras] Fix comment typos (NFC)
The file was modifiedllvm/include/llvm/ADT/StringExtras.h
Commit 19aacdb715aea1de56a47b807a555335610a11c2 by kazu
[llvm] Construct SmallVector with iterator ranges (NFC)
The file was modifiedllvm/lib/Transforms/IPO/ArgumentPromotion.cpp
The file was modifiedllvm/lib/Transforms/Utils/CallPromotionUtils.cpp
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
The file was modifiedllvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
The file was modifiedllvm/lib/Transforms/Utils/LCSSA.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp
The file was modifiedllvm/lib/IR/LLVMContextImpl.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/lib/Transforms/Utils/Debugify.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
Commit 2082b10d100e8dbaffc2ba8f497db5d2ab61beb2 by kazu
[llvm] Use *::empty (NFC)
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
The file was modifiedllvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SROA.cpp
The file was modifiedllvm/lib/CodeGen/PHIElimination.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/Target.cpp
The file was modifiedllvm/lib/CodeGen/RegisterScavenging.cpp
The file was modifiedllvm/lib/Target/ARM/ARMConstantIslandPass.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
The file was modifiedllvm/lib/Target/X86/X86CmovConversion.cpp
The file was modifiedllvm/lib/Object/SymbolSize.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 416854d0f7cda90def07e9b4aee14505f222b0b3 by Dávid Bolvanský
[InstSimplify] Precommit new testcases; NFC
The file was modifiedllvm/test/Transforms/InstSimplify/or.ll
Commit c1ab698dce8dd4e751e63142ebb333d5b90bb8dc by david.green
[ARM] Remove LLC tests from transform/hardware loop tests.

We now have a lot of llc tests for hardware loops in CodeGen, which test
a larger variety of loops and are easier to maintain. This removes the
llc from mixed llc/opt tests.
The file was modifiedllvm/test/Transforms/HardwareLoops/ARM/structure.ll
Commit 372eb2bbb6fb903ce76266e659dfefbaee67722b by david.green
[ARM] Add low overhead loops terminators to AnalyzeBranch

This treats low overhead loop branches the same as jump tables and
indirect branches in analyzeBranch - they cannot be analyzed but the
direct branches on the end of the block may be removed. This helps
remove the unnecessary branches earlier, which can help produce better
codegen (and change block layout in a number of cases).

Differential Revision: https://reviews.llvm.org/D94392
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vldshuffle.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float16regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-tailpred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-increment.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vcmp-vpst-combination.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-scatter-increment.ll
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/sibling-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
Commit 63bedc80da36cf5eb71b06b453c186e057607bf4 by Dávid Bolvanský
[InstSimplify] Handle commutativity for 'and' and 'outer or' for (~A & B) | ~(A | B) --> ~A

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D94870
The file was modifiedllvm/test/Transforms/InstSimplify/or.ll
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit 48dbac5b6b0bc7a03e9af42cb99176abba8d0467 by spatel
[SLP] remove unnecessary use of 'OperationData'

This is another NFC-intended patch to allow matching
intrinsics (example: maxnum) as candidates for reductions.

It's possible that the loop/if logic can be reduced now,
but it's still difficult to understand how this all works.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit fcfcc3cc6b16e4fd7d7d2d07937634cca360b46e by spatel
[SLP] fix typos; NFC
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 49b96cd9ef2f81d193641796b8a85781292faf7a by spatel
[SLP] remove opcode field from reduction data class

This is NFC-intended and another step towards supporting
intrinsics as reduction candidates.

The remaining bits of the OperationData class do not make
much sense as-is, so I will try to improve that, but I'm
trying to take minimal steps because it's still not clear
how this was intended to work.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit ed939f853da1f2266f00ea087f778fda88848f73 by tianshilei1992
[OpenMP] Added the support for hidden helper task in RTL

The basic design is to create an outer-most parallel team. It is not a regular team because it is only created when the first hidden helper task is encountered, and is only responsible for the execution of hidden helper tasks.  We first use `pthread_create` to create a new thread, let's call it the initial and also the main thread of the hidden helper team. This initial thread then initializes a new root, just like what RTL does in initialization. After that, it directly calls `__kmpc_fork_call`. It is like the initial thread encounters a parallel region. The wrapped function for this team is, for main thread, which is the initial thread that we create via `pthread_create` on Linux, waits on a condition variable. The condition variable can only be signaled when RTL is being destroyed. For other work threads, they just do nothing. The reason that main thread needs to wait there is, in current implementation, once the main thread finishes the wrapped function of this team, it starts to free the team which is not what we want.

Two environment variables, `LIBOMP_NUM_HIDDEN_HELPER_THREADS` and `LIBOMP_USE_HIDDEN_HELPER_TASK`, are also set to configure the number of threads and enable/disable this feature. By default, the number of hidden helper threads is 8.

Here are some open issues to be discussed:
1. The main thread goes to sleeping when the initialization is finished. As Andrey mentioned, we might need it to be awaken from time to time to do some stuffs. What kind of update/check should be put here?

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D77609
The file was modifiedopenmp/runtime/src/kmp_wait_release.h
The file was addedopenmp/runtime/test/tasking/hidden_helper_task/gtid.cpp
The file was modifiedopenmp/runtime/src/kmp_tasking.cpp
The file was modifiedopenmp/runtime/src/kmp_taskdeps.h
The file was modifiedopenmp/runtime/src/kmp_global.cpp
The file was modifiedopenmp/runtime/src/kmp_settings.cpp
The file was modifiedopenmp/runtime/test/worksharing/for/kmp_sch_simd_guided.c
The file was addedopenmp/runtime/test/tasking/hidden_helper_task/taskgroup.cpp
The file was addedopenmp/runtime/test/tasking/hidden_helper_task/common.h
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/z_Linux_util.cpp
The file was addedopenmp/runtime/test/tasking/hidden_helper_task/depend.cpp
Commit d8fc27301d18f0935ba99ead7ac61aa6a53f16e4 by ajcbik
[mlir][sparse] improved sparse runtime support library

Added the ability to read (an extended version of) the FROSTT
file format, so that we can now read in sparse tensors of arbitrary
rank. Generalized the API to deal with more than two dimensions.

Also added the ability to sort the indices of sparse tensors
lexicographically. This is an important step towards supporting
auto gen of initialization code, since sparse storage formats
are easier to initialize if the indices are sorted. Since most
external formats don't enforce such properties, it is convenient
to have this ability in our runtime support library.

Lastly, the re-entrant problem of the original implementation
is fixed by passing an opaque object around (rather than having
a single static variable, ugh!).

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D94852
The file was addedmlir/integration_test/data/test.tns
The file was modifiedmlir/integration_test/Sparse/CPU/matrix-market-example.mlir
The file was modifiedmlir/lib/ExecutionEngine/SparseUtils.cpp
The file was modifiedmlir/integration_test/CMakeLists.txt
The file was modifiedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was addedmlir/integration_test/Sparse/CPU/frostt-example.mlir
Commit bfd75bdf3fd62d4f5e7028d4122f9ffa517f2a09 by Dávid Bolvanský
[NFC] Removed extra text in comments
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit 2a5b576e3ea41c30537435d989a3dce7a409f8e2 by david.green
[ARM] Test for aligned blocks. NFC
The file was addedllvm/test/CodeGen/Thumb2/aligned-nonfallthrough.ll
Commit 145472421535c71a9ea60af7e5d012ab69dc85ff by david.green
[ARM] Align blocks that are not fallthough targets

If the previous block in a function does not fallthough, adding nop's to
align it will never be executed. This means we can freely (except for
codesize) align more branches. This happens in constantislandspass (as
it cannot happen later) and only happens at aggressive optimization
levels as it does increase codesize.

Differential Revision: https://reviews.llvm.org/D94394
The file was modifiedllvm/test/CodeGen/Thumb2/aligned-nonfallthrough.ll
The file was modifiedllvm/lib/Target/ARM/ARMConstantIslandPass.cpp
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/multi-use-loads.ll
Commit 32fc32317a31fc00e7e4086d6c93dd1eab75960c by lebedev.ri
[SimplifyCFG] markAliveBlocks(): catchswitch: preserve PostDomTree

When removing catchpad's from catchswitch, if that removes a successor,
we need to record that in DomTreeUpdater.

This fixes PostDomTree preservation failure in an existing test.
This appears to be the single issue that i see in my current test coverage.
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
Commit 5238e7b302ffc40707677960da9d64e872745dac by nikita.ppv
[InstCombine] Replace one-use select operand based on condition

InstCombine already performs a fold where X == Y ? f(X) : Z is
transformed to X == Y ? f(Y) : Z if f(Y) simplifies. However,
if f(X) only has one use, then we can always directly replace the
use inside the instruction. To actually be profitable, limit it to
the case where Y is a non-expr constant.

This could be further extended to replace uses further up a one-use
instruction chain, but for now this only looks one level up.

Among other things, this also subsumes D94860.

Differential Revision: https://reviews.llvm.org/D94862
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-binop-cmp.ll
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-transforms.ll
Commit a048ce13e32daa255d26533c00da8abd0b67e819 by i
[X86] Default to -x86-pad-for-align=false to drop assembler difference with or w/o -g

Fix PR48742: the D75203 assembler optimization locates MCRelaxableFragment's
within two MCSymbol's and relaxes some MCRelaxableFragment's to reduce the size
of a MCAlignFragment.  A -g build has more MCSymbol's and therefore may have
different assembler output (e.g. a MCRelaxableFragment (jmp) may have 5 bytes
with -O1 while 2 bytes with -O1 -g).

`.p2align 4, 0x90` is common due to loops. For a larger program, with a
lot of temporary labels, the assembly output difference is somewhat
destined. The cost seems to overweigh the benefits so we default to
-x86-pad-for-align=false until the heuristic is improved.

Reviewed By: skan

Differential Revision: https://reviews.llvm.org/D94542
The file was modifiedllvm/test/MC/X86/align-via-padding.s
The file was modifiedllvm/test/MC/X86/align-via-relaxation.s
The file was modifiedllvm/test/MC/X86/prefix-padding-32.s
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
The file was modifiedllvm/test/MC/X86/prefix-padding-64.s
The file was modifiedllvm/test/MC/X86/align-via-padding-corner.s
Commit 633c5afccfbb0a985976aa3e6493f1a08061cb10 by craig.topper
[RISCV] Remove unneeded StringRef to std::string conversions in RISCVCompressInstEmitter. NFC

Stop concatenating std::string before streaming into a raw_ostream.
Just stream the pieces.

Remove some new lines from asserts. Remove std::string concatenation
from an assert. assert strings aren't really evaluated like this at
runtime. An assertion failure will just print exactly what's between
the parentheses in the source.
The file was modifiedllvm/utils/TableGen/RISCVCompressInstEmitter.cpp
Commit 97f7e4e8c9309e0806f9b8f8afcf8ce2ef63656c by craig.topper
[RISC] Replace dyn_casts that are only checked by an assert with a cast. NFC
The file was modifiedllvm/utils/TableGen/RISCVCompressInstEmitter.cpp
Commit 2b6a92625fdf11928bff1a31cdc06d7dbd193f85 by craig.topper
[RISCV] Simplify mergeCondAndCode in RISCVCompressInstEmitter.cpp. NFC

Instead forming a std::string and returning it to pass into another
raw_ostream, just pass the raw_ostream as a parameter.

Take StringRef as arguments instead raw_string_ostream references
making the caller responsible for converting to strings. Use
StringRef operations instead of std::string::substr.a
The file was modifiedllvm/utils/TableGen/RISCVCompressInstEmitter.cpp
Commit 1327c730bb9a0bff963af3745869cf244ae37241 by craig.topper
[RISCV] Few more minor cleanups to RISCVCompressInstEmitter. NFC

-Use StringRef instead of std::string.
-Const correct a parameter.
-Don't call StringRef::data() before printing. Just pass the StringRef.
The file was modifiedllvm/utils/TableGen/RISCVCompressInstEmitter.cpp
Commit 061f681c0dfa4d279dc656802bf81f3b9bfa3d34 by craig.topper
[RISCV] Remove an extra map lookup from RISCVCompressInstEmitter. NFC

When we looked up the map to see if the entry already existed,
this created the new entry for us. So save a reference to it so
we can use it to update the entry instead of looking it up again.

Also remove unnecessary StringRef constructors around string
literals on calls to this function.
The file was modifiedllvm/utils/TableGen/RISCVCompressInstEmitter.cpp
Commit 3cbd476c54886e8ebac64b4145d4517732a71023 by marukawa
[VE] Support VE in libunwind

Modify libunwind to support SjLj exception handling routines for VE.
In order to do that, we need to implement not only SjLj exception
handling routines but also a Registers_ve class.  This implementation
of Registers_ve is incomplete.  We will work on it later when we need
backtrace in libunwind.

Reviewed By: #libunwind, compnerd

Differential Revision: https://reviews.llvm.org/D94591
The file was modifiedlibunwind/src/Registers.hpp
The file was modifiedlibunwind/src/libunwind.cpp
The file was modifiedlibunwind/include/__libunwind_config.h
The file was modifiedlibunwind/include/libunwind.h
The file was modifiedlibunwind/src/Unwind-sjlj.c
Commit 3809f4ebabde98bfdc1fdcdad2963a874151820b by i
[ELF] Support R_PPC_ADDR24 (ba foo; bla foo)
The file was modifiedlld/test/ELF/ppc32-reloc-addr.s
The file was modifiedlld/ELF/Arch/PPC.cpp
Commit b1c2f1282a237e9bc60f1b0020bc7535ca019739 by nikita.ppv
[BasicAA] Move assumption tracking into AAQI

D91936 placed the tracking for the assumptions into BasicAA.
However, when recursing over phis, we may use fresh AAQI instances.
In this case AssumptionBasedResults from an inner AAQI can reesult
in a removal of an element from the outer AAQI.

To avoid this, move the tracking into AAQI. This generally makes
more sense, as the NoAlias assumptions themselves are also stored
in AAQI.

The test case only produces an assertion failure with D90094
reapplied. I think the issue exists independently of that change
as well, but I wasn't able to come up with a reproducer.
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was modifiedllvm/include/llvm/Analysis/BasicAliasAnalysis.h
The file was addedllvm/test/Transforms/MemCpyOpt/aa-recursion-assertion-failure.ll
The file was modifiedllvm/include/llvm/Analysis/AliasAnalysis.h
Commit 0b84afa5fcb41429004db72a0588656a8d76bf48 by nikita.ppv
Reapply [BasicAA] Handle recursive queries more efficiently

There are no changes relative to the original commit. However, an issue
this exposed in BasicAA assumption tracking has been fixed in the
previous commit.

-----

An alias query currently works out roughly like this:

* Look up location pair in cache.
* Perform BasicAA logic (including cache lookup and insertion...)
* Perform a recursive query using BestAAResults.
   * Look up location pair in cache (and thus do not recurse into BasicAA)
   * Query all the other AA providers.
* Query all the other AA providers.

This is a lot of unnecessary work, all ultimately caused by the
BestAAResults query at the end of aliasCheck(). The reason we perform
it, is that aliasCheck() is getting called recursively, and we of
course want those recursive queries to also make use of other AA
providers, not just BasicAA. We can solve this by making the recursive
queries directly use BestAAResults (which will check both BasicAA
and other providers), rather than recursing into aliasCheck().

There are some tradeoffs:

* We can no longer pass through the precomputed underlying object
   to aliasCheck(). This is not a major concern, because nowadays
   getUnderlyingObject() is quite cheap.
* Results from other AA providers are no longer cached inside
   BasicAA. The way this worked was already a bit iffy, in that a
   result could be cached, but if it was MayAlias, we'd still end
   up re-querying other providers anyway. If we want to cache
   non-BasicAA results, we should do that in a more principled manner.

In any case, despite those tradeoffs, this works out to be a decent
compile-time improvment. I think it also simplifies the mental model
of how BasicAA works. It took me quite a while to fully understand
how these things interact.

Differential Revision: https://reviews.llvm.org/D90094
The file was modifiedllvm/lib/Analysis/GlobalsModRef.cpp
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was modifiedllvm/include/llvm/Analysis/BasicAliasAnalysis.h
Commit 9af03864df746aa9a9cf3573da952ce6c5d902cd by mydeveloperday
[clang-format] Revert e9e6e3b34a8e

Reverting {D92753} due to issues with #pragma indentation in #ifdef/endif structure
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
The file was modifiedclang/include/clang/Format/Format.h
The file was modifiedclang/lib/Format/Format.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/lib/Format/UnwrappedLineFormatter.cpp
The file was modifiedclang/lib/Format/ContinuationIndenter.cpp
The file was modifiedclang/lib/Format/UnwrappedLineParser.h
Commit e7bc6c594b75602c23cb901f53b3a30d48e2ee78 by Raphael Isemann
Reland [lldb][docs] Use sphinx instead of epydoc to generate LLDB's Python reference

The build server should now have the missing dependencies.

Original summary:

Currently LLDB uses epydoc to generate the Python API reference for the website.
epydoc however is unmaintained since more than a decade and no longer works with
Python 3. Also whatever setup we had once for generating the documentation on
the website server no longer seems to work, so the current website documentation
has been stale since more than a year.

This patch replaces epydoc with sphinx and its automodapi plugin that can
generate Python API references. LLVM already uses sphinx for the rest of the
documentation, so this way we are more consistent with the rest of LLVM. The
only new dependency is the automodapi plugin for sphinx.

This patch effectively does the following things:
* Remove the epydoc code.
* Make a new dummy Python API page in our website that just calls the Sphinx
  command for generated the API documentation.
* Add a mock _lldb module that is only used when generating the Python API.
This way we don't have to build all of LLDB to generate the API reference.

Some notes:
* The long list of skips is necessary due to boilerplate functions that SWIG
  is generating. Sadly automodapi is not really scriptable from what I can see,
  so we have to blacklist this stuff manually.
* The .gitignore change because automodapi wants a subfolder of our
  documentation directory to place generated documentation files there. The path
  is also what is used on the website, so we can't really workaround this
  (without copying the whole `docs` dir somewhere else when we build).
* We have to use environment variables to pass our build path to our sphinx
  configuration. Sphinx doesn't support passing variables onto that script.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D94489
The file was modified.gitignore
The file was modifiedlldb/docs/index.rst
The file was addedlldb/docs/python_api.rst
The file was modifiedllvm/cmake/modules/AddSphinxTarget.cmake
The file was modifiedlldb/docs/CMakeLists.txt
The file was addedlldb/docs/_lldb/__init__.py
The file was modifiedlldb/docs/conf.py
Commit 00dc97f16708aad67834552285c0af01b37303d6 by mydeveloperday
[clang-format] PR48594 BraceWrapping: SplitEmptyRecord ignored for templates

https://bugs.llvm.org/show_bug.cgi?id=48594

Empty or small templates were not being treated the same way as small classes especially when SplitEmptyRecord was set to true

This revision aims to help this by identifying a case when we should try not to merge the lines together

Reviewed By: curdeius, JohelEGP

Differential Revision: https://reviews.llvm.org/D93839
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
The file was modifiedclang/lib/Format/UnwrappedLineFormatter.cpp
Commit 0f9908a7c9c547f2675e00f88cc11ec02ca28e8d by usx
[clangd] Use empty() instead of size()>0
The file was modifiedclang-tools-extra/clangd/Quality.cpp
Commit 9abbc050974ff117b79e8e049c52c56db3f49aec by usx
[clangd] Use !empty() instead of size()>0
The file was modifiedclang-tools-extra/clangd/Quality.cpp
Commit 4bfbfb9bcb790931b97da972ff02865810f43ce8 by nikita.ppv
[InstSimplify] Add tests for x*C1/C2<=x (NFC)

Tests for PR48744.
The file was modifiedllvm/test/Transforms/InstSimplify/icmp.ll
Commit a13c0f62c38131ef2656b06de02d82110abaf272 by nikita.ppv
[InstSimplify] Fold x*C1/C2 <= x (PR48744)

We can fold x*C1/C2 <= x to true if C1 <= C2. This is valid even
if the multiplication is not nuw: https://alive2.llvm.org/ce/z/vULors

The multiplication or division can be replaced by shifts. We don't
handle the case where both are shifts, as that should get folded
away by InstCombine.
The file was modifiedllvm/test/Transforms/InstSimplify/icmp.ll
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit acdc74568927d47f94816e73b6e105c9460cc3e4 by Raphael Isemann
[lldb][docs] Cleanup the Python doc strings for SB API classes

The first line of the doc string ends up on the SB API class summary at
the root page of the Python API  web page of LLDB. Currently many of the
descriptions are missing or are several lines which makes the table really
hard to read.

This just adds the missing docstrings where possible and fixes the formatting
where necessary.
The file was modifiedlldb/bindings/interface/SBData.i
The file was modifiedlldb/bindings/interface/SBQueue.i
The file was modifiedlldb/bindings/interface/SBTrace.i
The file was modifiedlldb/bindings/interface/SBHostOS.i
The file was modifiedlldb/bindings/interface/SBLanguageRuntime.i
The file was modifiedlldb/bindings/interface/SBModuleSpec.i
The file was modifiedlldb/bindings/interface/SBPlatform.i
The file was modifiedlldb/bindings/interface/SBExecutionContext.i
The file was modifiedlldb/bindings/python/python-extensions.swig
The file was modifiedlldb/bindings/interface/SBLaunchInfo.i
The file was modifiedlldb/bindings/interface/SBTraceOptions.i
The file was modifiedlldb/bindings/interface/SBQueueItem.i
The file was modifiedlldb/bindings/interface/SBThreadPlan.i
The file was modifiedlldb/bindings/interface/SBMemoryRegionInfoList.i
The file was modifiedlldb/bindings/interface/SBBreakpoint.i
The file was modifiedlldb/bindings/interface/SBTypeEnumMember.i
The file was modifiedlldb/bindings/interface/SBFileSpecList.i
The file was modifiedlldb/bindings/interface/SBStringList.i
The file was modifiedlldb/bindings/interface/SBInstruction.i
The file was modifiedlldb/bindings/interface/SBAttachInfo.i
The file was modifiedlldb/bindings/interface/SBReproducer.i
The file was modifiedlldb/bindings/interface/SBCommunication.i
The file was modifiedlldb/bindings/interface/SBFrame.i
The file was modifiedlldb/bindings/interface/SBLineEntry.i
The file was modifiedlldb/bindings/interface/SBVariablesOptions.i
The file was modifiedlldb/bindings/interface/SBType.i
Commit 469ceaf53892d26f7b68f86f1feb38fe7057815e by Dávid Bolvanský
[Tests] Add test for PR45691
The file was addedllvm/test/Transforms/InstCombine/ashr-or-mul-abs.ll
Commit ed396212da41feed9bffb8cc1ca6518ab031a3c7 by Dávid Bolvanský
[InstCombine] Transform abs pattern using multiplication to abs intrinsic (PR45691)

```
unsigned r(int v)
{
    return (1 | -(v < 0)) * v;
}

`r` is equivalent to `abs(v)`.

```

```
define <4 x i8> @src(<4 x i8> %0) {
%1:
  %2 = ashr <4 x i8> %0, { 31, undef, 31, 31 }
  %3 = or <4 x i8> %2, { 1, 1, 1, undef }
  %4 = mul nsw <4 x i8> %3, %0
  ret <4 x i8> %4
}
=>
define <4 x i8> @tgt(<4 x i8> %0) {
%1:
  %2 = icmp slt <4 x i8> %0, { 0, 0, 0, 0 }
  %3 = sub nsw <4 x i8> { 0, 0, 0, 0 }, %0
  %4 = select <4 x i1> %2, <4 x i8> %3, <4 x i8> %0
  ret <4 x i8> %4
}
Transformation seems to be correct!
```

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D94874
The file was modifiedllvm/test/Transforms/InstCombine/ashr-or-mul-abs.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
Commit 7e9e6ac526ebd90fe8ec0b8d2bb6edd3516ab908 by Raphael Isemann
[lldb][docs] Fix some RST formatting errors related to code examples.

Mostly just making sure the indentation is right (SBDebugger had 0 spaces
as it was still plain text, the others had too much indentation or other
minor issues).
The file was modifiedlldb/bindings/interface/SBCommandInterpreterRunOptions.i
The file was modifiedlldb/bindings/interface/SBProcess.i
The file was modifiedlldb/bindings/interface/SBType.i
The file was modifiedlldb/bindings/interface/SBBroadcaster.i
The file was modifiedlldb/bindings/interface/SBDebugger.i
The file was modifiedlldb/bindings/interface/SBStructuredData.i
Commit 352fcfc69788093b50971a9f5540a61fa0887ce1 by kazu
[llvm] Use llvm::sort (NFC)
The file was modifiedllvm/lib/TextAPI/MachO/TextStub.cpp
The file was modifiedllvm/lib/Bitcode/Writer/BitcodeWriter.cpp
The file was modifiedllvm/lib/Object/COFFObjectFile.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink.cpp
The file was modifiedllvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonBlockRanges.cpp
The file was modifiedllvm/lib/Support/DebugCounter.cpp
The file was modifiedllvm/lib/DebugInfo/GSYM/GsymCreator.cpp
The file was modifiedllvm/lib/FileCheck/FileCheck.cpp
The file was modifiedllvm/tools/llvm-cov/CoverageExporterJson.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/SpeculateAnalyses.cpp
The file was modifiedllvm/tools/llvm-cov/CoverageExporterLcov.cpp
The file was modifiedllvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp
The file was modifiedllvm/lib/DWARFLinker/DWARFLinker.cpp
Commit a59126115e9586dd7fda4bb365ee43682814fc53 by kazu
[IRBuilder] "Zero"-initialize SmallVector (NFC)
The file was modifiedllvm/lib/IR/IRBuilder.cpp
Commit 50be8e447152b8512521e568e4918dec486c25a5 by kazu
[TableGen] Drop redundant const from return types (NFC)

Identified with readability-const-return-type.
The file was modifiedllvm/utils/TableGen/DAGISelMatcher.h
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.cpp
The file was modifiedllvm/utils/TableGen/CodeGenTarget.h
The file was modifiedllvm/utils/TableGen/OptParserEmitter.cpp
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/utils/TableGen/CodeGenRegisters.h
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
Commit 9a7fb0848771e3d38baf10e4d1078b50dd884265 by steveire
NFC: Minor cleanup of function calls
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
Commit 1cc477f030bdeb6de98c6bde89fa7850630def24 by nikita.ppv
[SimplifyCFG] Add test for PR48778 (NFC)

The sdiv is incorrectly speculated.
The file was addedllvm/test/Transforms/SimplifyCFG/pr48778-sdiv-speculation.ll
Commit 4229b87ed36cf20b95b363393452aa4815e344e2 by nikita.ppv
[ValueTracking] Fix isSafeToSpeculativelyExecute for sdiv (PR48778)

The != -1 check does not work correctly for all bitwidths. Use
isAllOnesValue() instead.
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/pr48778-sdiv-speculation.ll
Commit a89242d874df72cddeafbebc75ac377371e72796 by pavel
[lldb] Skip TestPlatformProcessConnect on windows and darwin

The test fails (for different reasons) on these platforms. Skip for now.
The file was modifiedlldb/test/API/tools/lldb-server/platform-process-connect/TestPlatformProcessConnect.py
Commit 95d146182fdf2315e74943b93fb3bb0cbafc5d89 by i
Makefile.rules: Delete GCC 4.6 workaround

5.1 is the minimum supported version.
The file was modifiedlldb/packages/Python/lldbsuite/test/make/Makefile.rules
Commit f855751c1284c82c1c46b98f6d1b3ca2021d6cb9 by chandlerc
Fix openmp CMake build on non-Linux AArch64 systems.

This just checks for `/proc/cpuinfo` existing before reading it.

Tested on an ARM macOS machine.
The file was modifiedopenmp/runtime/cmake/LibompGetArchitecture.cmake
Commit 3bdf4507b66348ad78df4655a8e4f36c3fc10f3c by czhengsz
[NFC] [TargetRegisterInfo] add one use check to lookThruCopyLike.

add one use check to lookThruCopyLike.

The root node is safe to be deleted if we are sure that every
definition in the copy chain only has one use.

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D92069
The file was modifiedllvm/lib/CodeGen/TargetRegisterInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetRegisterInfo.h
Commit b74ae43c44b1c954508149409d3cfe6477be4079 by i
Makefile.rules: Make HOST_OS/OS simply expanded variable to avoid excess uname -s invocations

This decreases the number of runs from 18 to 1.
The file was modifiedlldb/packages/Python/lldbsuite/test/make/Makefile.rules
Commit a817f46d50c34ea6b798d28bd5fa6a3ee7435497 by Lang Hames
[JITLink][ELF] Skip DWARF sections in ELF objects.

This matches current JITLink/MachO behavior and avoids processing currently
unsupported relocations.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
The file was addedllvm/test/ExecutionEngine/JITLink/X86/ELF_skip_debug_sections.s
Commit 2639c162b71f4b9e5c0ffefaa861fe915b73cb87 by aqjune
[InstCombine] more tests for D94861 (NFC)
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-transforms.ll
Commit 2d9890775f523a7a7ed2d7d064273bf7e28ebf20 by qiucofan
[PowerPC] [NFC] Add AIX triple to some regression tests

As part of the effort to improve AIX support, regression test coverage
misses quite a lot for AIX subtarget. This patch adds AIX triple to
those don't need extra change, and we can cover more cases in following
commits.

Reviewed By: steven.zhang

Differential Revision: https://reviews.llvm.org/D94159
The file was modifiedllvm/test/CodeGen/PowerPC/pr39478.ll
The file was modifiedllvm/test/CodeGen/PowerPC/cmpb-ppc32.ll
The file was modifiedllvm/test/CodeGen/PowerPC/inc-of-add.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_constants.ll
The file was modifiedllvm/test/CodeGen/PowerPC/shift-cmp.ll
The file was modifiedllvm/test/CodeGen/PowerPC/constant-combines.ll
The file was modifiedllvm/test/CodeGen/PowerPC/fdiv.ll
The file was modifiedllvm/test/CodeGen/PowerPC/rotl-2.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vmladduhm.ll
The file was modifiedllvm/test/CodeGen/PowerPC/bswap64.ll
The file was modifiedllvm/test/CodeGen/PowerPC/ori_imm32.ll
The file was modifiedllvm/test/CodeGen/PowerPC/pr33093.ll
The file was modifiedllvm/test/CodeGen/PowerPC/bool-math.ll
The file was modifiedllvm/test/CodeGen/PowerPC/mulli.ll
The file was modifiedllvm/test/CodeGen/PowerPC/hoist-logic.ll
The file was modifiedllvm/test/CodeGen/PowerPC/builtins-ppc-p9-darn.ll
The file was modifiedllvm/test/CodeGen/PowerPC/and-mask.ll
The file was modifiedllvm/test/CodeGen/PowerPC/maddld.ll
The file was modifiedllvm/test/CodeGen/PowerPC/ftrunc-vec.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_shuffle_p8vector.ll
The file was modifiedllvm/test/CodeGen/PowerPC/popcnt-zext.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_revb.ll
The file was modifiedllvm/test/CodeGen/PowerPC/constants-i64.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vec_clz.ll
The file was modifiedllvm/test/CodeGen/PowerPC/setcc-to-sub.ll
The file was modifiedllvm/test/CodeGen/PowerPC/cmpb.ll
The file was modifiedllvm/test/CodeGen/PowerPC/unal-vec-ldst.ll
The file was modifiedllvm/test/CodeGen/PowerPC/ori_imm64.ll
The file was modifiedllvm/test/CodeGen/PowerPC/mi-peephole-splat.ll
The file was modifiedllvm/test/CodeGen/PowerPC/fma-assoc.ll
Commit f776d8b12f0ec19cfff60c967565788ce4f926e6 by qiucofan
[Legalizer] Promote result type in expanding FP_TO_XINT

This patch promotes result integer type of FP_TO_XINT in expanding.
So crash in conversion from ppc_fp128 to i1 will be fixed.

Reviewed By: steven.zhang

Differential Revision: https://reviews.llvm.org/D92473
The file was modifiedllvm/test/CodeGen/PowerPC/ppcf128-constrained-fp-intrinsics.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
Commit 7011086dc1cd5575f971db0138a62387939e6a73 by listmail
[test] Autogen a loop vectorizer test to make future changes visible
The file was modifiedllvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
Commit 8356610f8d48ca7ecbb930dd9b987e4269784710 by listmail
[test] pre commit a couple more tests for vectorizing multiple exit loops
The file was modifiedllvm/test/Transforms/LoopVectorize/loop-form.ll
Commit e5619065b8b8c441c0cbccbb81f5fa7857cf670a by Lang Hames
[JITLink][ELF] New ELF skip-debug-sections test requires asserts.

This should fix the failures on Release mode testers.
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_skip_debug_sections.s
Commit 26a396c4ef481cb159bba631982841736a125a9c by czhengsz
[PowerPC] support register pressure reduction in machine combiner.

Reassociating some patterns to generate more fma instructions to
reduce register pressure.

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D92071
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.h
The file was modifiedllvm/include/llvm/CodeGen/MachineCombinerPattern.h
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was addedllvm/test/CodeGen/PowerPC/register-pressure-reduction.ll
The file was modifiedllvm/lib/CodeGen/MachineCombiner.cpp
Commit bcc1dee60019f3a488a04dc7f701f7a692040fed by bjoern
[clang-format] Add StatementAttributeLikeMacros option

This allows to ignore for example Qts emit when
AlignConsecutiveDeclarations is set, otherwise it is parsed as a type
and it results in some misformating:

unsigned char MyChar = 'x';
emit          signal(MyChar);

Differential Revision: https://reviews.llvm.org/D93776
The file was modifiedclang/lib/Format/FormatTokenLexer.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
The file was modifiedclang/lib/Format/Format.cpp
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
The file was modifiedclang/lib/Format/WhitespaceManager.cpp
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/include/clang/Format/Format.h
The file was modifiedclang/lib/Format/FormatToken.h
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
Commit cfec6cd50c36f3db2fcd4084a8ef4df834a4eb24 by craig.topper
[IR] Allow scalable vectors in structs to support intrinsics returning multiple values.

RISC-V would like to use a struct of scalable vectors to return multiple
values from intrinsics. This woud also be needed for target independent
intrinsics like llvm.sadd.overflow.

This patch removes the existing restriction for this. I've modified
StructType::isSized to consider a struct containing scalable vectors
as unsized so the verifier won't allow loads/stores/allocas of these
structs.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D94142
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/lib/IR/DataLayout.cpp
The file was removedllvm/test/Other/scalable-vector-struct.ll
The file was modifiedllvm/test/Verifier/scalable-global-vars.ll
The file was addedllvm/test/Other/scalable-vector-struct-intrinsic.ll
The file was addedllvm/test/Verifier/scalable-vector-struct-alloca.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/include/llvm/IR/DerivedTypes.h
The file was modifiedllvm/lib/CodeGen/Analysis.cpp
The file was addedllvm/test/CodeGen/RISCV/scalable-vector-struct.ll
The file was addedllvm/test/Verifier/scalable-vector-struct-load.ll
The file was modifiedllvm/lib/IR/Type.cpp
The file was addedllvm/test/Verifier/scalable-vector-struct-store.ll
Commit 383b6501ffedc85c2ecfaa7852ec1a9e9c374e3f by craig.topper
[RISCV] Use tail agnostic policy for instructions with tied defs if the use operand is IMPLICIT_DEF.

The vcompress intrinsic is defined such that it requires a tail
undisturbed policy. This patch makes it so we can use the tail
agnostic policy if the user has passed vundefined to the dest
operand.

We need to do something similar for masked policy, but we need
annotation of which instructions use the mask policy first.

Not sure if this is sufficient for scheduling or if we'll need to
select different pseudos that don't have a tied def.

Reviewed By: evandro

Differential Revision: https://reviews.llvm.org/D94566
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vcompress-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vcompress-rv32.ll
Commit f446fc5acf88fda676b5df1c04838f7244201d20 by Raphael Isemann
[lldb][docs] Resolve the remaining sphinx formatter warnings in the SB API docs

With this patch there should no longer be any warnings when generating the
SB API sphinx docs.
The file was modifiedlldb/bindings/interface/SBModule.i
The file was modifiedlldb/bindings/interface/SBAddress.i
The file was modifiedlldb/bindings/interface/SBProcess.i
The file was modifiedlldb/bindings/interface/SBDebugger.i
The file was modifiedlldb/bindings/interface/SBBroadcaster.i
The file was modifiedlldb/bindings/interface/SBFrame.i
The file was modifiedlldb/bindings/interface/SBTarget.i
The file was modifiedlldb/bindings/interface/SBValue.i
Commit b9ce772b8fb5d02afd026c9b029f5d53d1ea9591 by grimar
[Object, llvm-readelf] - Move the API for retrieving symbol versions to ELF.h

`ELFDumper.cpp` implements the functionality that allows to get symbol versions.
It is used for dumping versioned symbols.

This helps to implement https://bugs.llvm.org/show_bug.cgi?id=48670 ("make llvm-nm -D print version names"):
we can move out and reuse the code from `ELFDumper.cpp`.
This is what this patch do: it moves the related functionality to `ELFFile<ELFT>`.

Differential revision: https://reviews.llvm.org/D94771
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/verdef-invalid.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/verneed-invalid.test
The file was modifiedllvm/include/llvm/Object/ELF.h
Commit b43075e34a598460fe1590d950862a26449e8d10 by bjoern
[clang-format] Fix documentation of bcc1dee600

That was an oversight.

Differential Revision: https://reviews.llvm.org/D93776
The file was modifiedclang/include/clang/Format/Format.h
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
Commit 6e75ee6b65c1c9924c0c9c10b1cbd57f10fe127b by Raphael Isemann
[lldb][docs] Use inline literals for code/paths instead of rendering it with the default role

Right now we're using the 'content' role as default which will just render
these things as cursive (which isn't really useful for code examples). It also
prevents us from assigning a more useful default role in the future.
The file was modifiedlldb/docs/man/lldb.rst
The file was modifiedlldb/bindings/interface/SBFrame.i
The file was modifiedlldb/docs/design/reproducers.rst
The file was modifiedlldb/docs/design/sbapi.rst
The file was modifiedlldb/bindings/interface/SBValue.i
The file was modifiedlldb/docs/resources/build.rst
The file was modifiedlldb/docs/resources/contributing.rst
The file was modifiedlldb/bindings/interface/SBFile.i
Commit 770d1e0a8828010a7c95de4596e24d54ed2527c3 by llvm-dev
[X86][SSE] isHorizontalBinOp - reuse any existing horizontal ops.

If we already have similar horizontal ops using the same args, then match that, even if we are on a target with slow horizontal ops.
The file was modifiedllvm/test/CodeGen/X86/haddsub-shuf.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/haddsub-undef.ll
Commit ac603c8d3850ed0c715c421d79bb5cb014bb21de by fraser
[RISCV] Add scalable vector truncate patterns

Original patch by @rogfer01.

This patch supports vector truncates, which on RVV must be done in a
series of instructions truncating by one power-of-two at a time. This is
done through custom-lowering and a custom node to avoid LLVM
re-combining the split TRUNCATE nodes.

Authored-by: Roger Ferrer Ibanez <rofirrim@gmail.com>
Co-Authored-by: Fraser Cormack <fraser@codeplay.com>

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D94796
The file was addedllvm/test/CodeGen/RISCV/rvv/vtruncs-sdnode-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was addedllvm/test/CodeGen/RISCV/rvv/vtruncs-sdnode-rv64.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
Commit 207f32948b2408bebd5a523695f6f7c08049db74 by llvm-dev
[DAG] SimplifyDemandedBits - use KnownBits comparisons to remove ISD::UMIN/UMAX ops

Use the KnownBits icmp comparisons to determine when a ISD::UMIN/UMAX op is unnecessary should either op be known to be ULT/ULE or UGT/UGE than the other.

Differential Revision: https://reviews.llvm.org/D94532
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/combine-umin.ll
The file was modifiedllvm/test/CodeGen/X86/sdiv_fix_sat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/r600-legalize-umax-bug.ll
The file was modifiedllvm/test/CodeGen/X86/udiv_fix_sat.ll
Commit aca240b4f69e908b31e30b7ccece3c5b1d58426e by zinenko
[mlir] Fix cross-compilation (Linalg ODS gen)

Use cross-compilation approach for `mlir-linalg-ods-gen` application
similar to TblGen tools.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D94598
The file was modifiedmlir/tools/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt
The file was modifiedmlir/tools/mlir-linalg-ods-gen/CMakeLists.txt
The file was modifiedmlir/CMakeLists.txt
Commit 3bd24574c7d0187e69780540fe0681914d71794f by tpopp
Revert "[PowerPC] support register pressure reduction in machine combiner."

This reverts commit 26a396c4ef481cb159bba631982841736a125a9c.

See https://reviews.llvm.org/D92071 for a description of the issue.
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineCombinerPattern.h
The file was removedllvm/test/CodeGen/PowerPC/register-pressure-reduction.ll
The file was modifiedllvm/lib/CodeGen/MachineCombiner.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.h
Commit 83aa93e99542dbbfc5223130482ad6d7744d9a78 by flo
[VectorUtils] Do not try to add indices matching tombstone/empty values.

Keys matching the tombstone/empty special values cannot be inserted in a
DenseMap. Under some circumstances, LV tries to add members to an
interleave group that match the special values. Skip adding such
members. This is unlikely to have any impact in practice, because
interleave groups with such indices are very likely to not be
vectorized, due to gaps.

This issue has been surfaced by fuzzing, see
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11638
The file was modifiedllvm/include/llvm/Analysis/VectorUtils.h
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-large-gap.ll
Commit 9bf843bdc88f89193939445828105d97ac83f963 by tianshilei1992
Revert "[OpenMP] Added the support for hidden helper task in RTL"

This reverts commit ed939f853da1f2266f00ea087f778fda88848f73.
The file was modifiedopenmp/runtime/src/kmp_global.cpp
The file was removedopenmp/runtime/test/tasking/hidden_helper_task/depend.cpp
The file was removedopenmp/runtime/test/tasking/hidden_helper_task/common.h
The file was modifiedopenmp/runtime/src/kmp_wait_release.h
The file was removedopenmp/runtime/test/tasking/hidden_helper_task/gtid.cpp
The file was modifiedopenmp/runtime/src/kmp.h
The file was modifiedopenmp/runtime/src/kmp_settings.cpp
The file was modifiedopenmp/runtime/src/kmp_tasking.cpp
The file was modifiedopenmp/runtime/src/z_Linux_util.cpp
The file was modifiedopenmp/runtime/src/kmp_runtime.cpp
The file was modifiedopenmp/runtime/test/worksharing/for/kmp_sch_simd_guided.c
The file was modifiedopenmp/runtime/src/kmp_taskdeps.h
The file was removedopenmp/runtime/test/tasking/hidden_helper_task/taskgroup.cpp
Commit 911961c9c1320ba985ac06c1866b33a5a247a94e by dmitry.preobrazhensky
[AMDGPU][MC][GFX10] Improved dpp8 errors handling

Reviewers: rampitec

Differential Revision: https://reviews.llvm.org/D94756
The file was modifiedllvm/test/MC/AMDGPU/gfx10_err_pos.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Commit 689aaba7acf5778bfe96bfd7bc4f1f3ceed20dc8 by Abhina.Sreeskantharajan
[SystemZ][z/OS] Fix No such file or directory expression error matching in lit tests

On z/OS, the following error message is not matched correctly in lit tests. This patch updates the CHECK expression to match successfully.
```
EDC5129I No such file or directory.
```

Reviewed By: muiez

Differential Revision: https://reviews.llvm.org/D94239
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/add-section-error.test
The file was modifiedlld/test/ELF/basic.s
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/error-format.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/thin-archive-paths.test
The file was modifiedlld/test/COFF/manifestinput-error.test
The file was modifiedlld/test/ELF/symbol-ordering-file.s
The file was modifiedllvm/test/tools/llvm-lto2/X86/stats-file-option.ll
The file was modifiedllvm/test/tools/llvm-profdata/weight-instr.test
The file was modifiedllvm/test/tools/llvm-size/no-input.test
The file was modifiedclang/test/CodeGen/basic-block-sections.c
The file was modifiedllvm/test/tools/llvm-objcopy/COFF/add-section.test
The file was modifiedllvm/test/tools/dsymutil/X86/papertrail-warnings.test
The file was modifiedllvm/test/tools/llvm-ar/missing-thin-archive-member.test
The file was modifiedllvm/test/tools/llvm-mc/basic.test
The file was modifiedlld/test/COFF/pdb-type-server-invalid-signature.yaml
The file was modifiedlld/test/ELF/archive-thin-missing-member.s
The file was modifiedclang/test/CodeGen/ubsan-blacklist-vfs.c
The file was modifiedllvm/test/tools/obj2yaml/invalid_input_file.test
The file was modifiedllvm/test/tools/llvm-cxxdump/trivial.test
The file was modifiedllvm/test/tools/llvm-objcopy/redefine-symbols.test
The file was modifiedllvm/test/tools/llvm-ml/basic.test
The file was modifiedllvm/test/tools/yaml2obj/output-file.yaml
The file was modifiedlld/test/COFF/driver.test
The file was modifiedllvm/test/tools/llvm-readobj/basic.test
The file was modifiedclang/test/Frontend/stats-file.c
The file was modifiedlld/test/COFF/nodefaultlib.test
The file was modifiedllvm/test/tools/llvm-profdata/weight-sample.test
The file was modifiedllvm/test/tools/llvm-ar/replace.test
The file was modifiedllvm/test/tools/llvm-mca/invalid_input_file_name.test
The file was modifiedllvm/test/tools/llvm-ar/response.test
The file was modifiedllvm/test/tools/llvm-readobj/thin-archive.test
The file was modifiedllvm/test/DebugInfo/symbolize-missing-file.test
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/add-section.test
The file was modifiedllvm/test/tools/llvm-xray/X86/no-such-file.txt
Commit f7443905af1e06eaacda1e437fff8d54dc89c487 by dantrushin
[Statepoint] Handle `undef` operands in statepoint.

Currently when spilling statepoint register operands in FixupStatepoints
we do not pay attention that it might be `undef`. We just generate a
spill, which may lead to verifier error because we have a use without def.

To handle it, let FixupStateponts ignore `undef` register operands
completely and change them to some constant value when generating
stack map. Use same value as used by ISel for this purpose (0xFEFEFEFE).

Reviewed By: reames

Differential Revision: https://reviews.llvm.org/D94703
The file was addedllvm/test/CodeGen/X86/statepoint-fixup-undef.mir
The file was modifiedllvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
The file was modifiedllvm/lib/CodeGen/StackMaps.cpp
Commit 9399681a57cef143dc4d087706947a03af819ef5 by kai
[Doc] Fix example in codegen doc.

The attributes in the example are placed wrong:
They belong after the type, not after the parameter name.

Reviewed by: abhina.sreeskantharajan

Differential Revision: https://reviews.llvm.org/D94683
The file was modifiedllvm/docs/CodeGenerator.rst
Commit 36710c38c1b741ff9cc70060893d53fc24c07833 by caroline.concatto
[NFC]Migrate VectorCombine.cpp to use InstructionCost

This patch changes these functions:
vectorizeLoadInsert
isExtractExtractCheap
foldExtractedCmps
scalarizeBinopOrCmp
getShuffleExtract
foldBitcastShuf
to use the class InstructionCost when calling TTI.get<something>Cost().

This patch is part of a series of patches to use InstructionCost instead of
unsigned/int for the cost model functions.
See this thread for context:
    http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html
See this patch for the introduction of the type:
    https://reviews.llvm.org/D91174

ps.:This patch adds the test || !NewCost.isValid(), because we want to
return false when:
!NewCost.isValid && !OldCost.isValid()->the cost to transform it expensive
and
!NewCost.isValid() && OldCost.isValid()
Therefore for simplication we only add  test for !NewCost.isValid()

Differential Revision: https://reviews.llvm.org/D94069
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
Commit e6d758de82b6f93f81e71617aeb5a37e57d6ada9 by flo
[InferAttrs] Mark some library functions as willreturn.

This patch marks some library functions as willreturn. On the first pass, I
excluded most functions that interact with streams/the filesystem.

Along with willreturn, it also adds nounwind to a set of math functions.
There probably are a few additional attributes we can add for those, but
that should be done separately.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D94684
The file was modifiedllvm/test/Transforms/LICM/strlen.ll
The file was modifiedllvm/test/Transforms/InferFunctionAttrs/annotate.ll
The file was modifiedllvm/lib/Transforms/Utils/BuildLibCalls.cpp
Commit ead71a23edde5f8a1acfdd75bd01f1fa6e0c4014 by sd.fertile
[PowerPC][AIX]Do not emit xxspltd mnemonic on AIX.

A bug in the system assembler can assemble the xxspltd extended
menemonic into the wrong instruction (extracting the wrong element).
Emit the full xxpermdi with all operands to work around the problem.

Differential Revision: https://reviews.llvm.org/D94419
The file was addedllvm/test/CodeGen/PowerPC/xxpermdi_mnemonics.s
The file was modifiedllvm/test/MC/PowerPC/modern-aix-as.s
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
Commit 2040c1110b661caae7999abc0158a7f57a6400fb by djolertrk
[CSInfo][MIPS] Update CSInfo in delay slot filler

In MipsDelaySlotFiller, when replacing old call-branch with
the compact branch instruction, an assertion is caused by erasing
the old call with unhandled CSInfo.
The problem was reported in PR48695.
This patch fixes it, by moving call site info from the old call
instruction to its replace.

Patch by Nikola Tesic

Differential revision: https://reviews.llvm.org/D94685
The file was modifiedllvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
The file was addedllvm/test/DebugInfo/MIR/Mips/call-site-info-update-delay-slot-filler.mir
Commit d1c4e859ce42c35c61a0db2f1eb8a4209be4503d by spatel
[SLP] reduce opcode API dependency in reduction cost calc; NFC

The icmp opcode is now hard-coded in the cost model call.
This will make it easier to eventually remove all opcode
queries for min/max patterns as we transition to intrinsics.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 3dbbadb8ef53d1e91785c17ccd70848de7e842e9 by spatel
[SLP] rename reduction query for min/max ops; NFC

This will avoid confusion once we start matching
min/max intrinsics. All of these hacks to accomodate
cmp+sel idioms should disappear once we canonicalize
to min/max intrinsics.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 55c557a5d25fd0f4db55fc4a406a1ea74594cfad by dmitry.preobrazhensky
[AMDGPU][MC] Refactored parsing of dpp ctrl

Summary of changes:
- simplified code to improve maintainability;
- replaced lex() with higher level parser functions;
- improved errors handling.

Reviewers: rampitec

Differential Revision: https://reviews.llvm.org/D94777
The file was modifiedllvm/test/MC/AMDGPU/regression/bug28538.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/test/MC/AMDGPU/gfx10_err_pos.s
Commit 34a2c138c8960b47a35054312ebd746b320cac03 by flo
[LoopRotate] Precommit test for prepare-for-lto handling.

Precommit test for D94232.
The file was addedllvm/test/Transforms/LoopRotate/call-prepare-for-lto.ll
Commit 30b8f55378cc57f7589694ca9bc4212ce7c2f4ec by dmitry.preobrazhensky
Fix for sanitizer issue in 55c557a
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Commit ce06475da94f1040d17d46d471dd48478576a76f by llvm-dev
[X86][AVX] IsElementEquivalent - add matchShuffleWithUNPCK + VBROADCAST/VBROADCAST_LOAD handling

Specify LHS/RHS operands in matchShuffleWithUNPCK's calls to isTargetShuffleEquivalent, and handle VBROADCAST/VBROADCAST_LOAD matching in IsElementEquivalent
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
The file was modifiedllvm/test/CodeGen/X86/avg.ll
Commit 63393828078c382e8e69d9b8146372b70bbce20f by wingo
[WebAssembly] Add support for table linking to wasm-ld

This patch adds support to wasm-ld for linking multiple table references
together, in a manner similar to wasm globals. The indirect function
table is synthesized as needed.

To manage the transitional period in which the compiler doesn't yet
produce TABLE_NUMBER relocations and doesn't residualize table symbols,
the linker will detect object files which have table imports or
definitions, but no table symbols. In that case it will synthesize
symbols for the defined and imported tables.

As a change, relocatable objects are now written with table symbols,
which can cause symbol renumbering in some of the tests. If no object
file requires an indirect function table, none will be written to the
file. Note that for legacy ObjFile inputs, this test is conservative: as
we don't have relocs for each use of the indirecy function table, we
just assume that any incoming indirect function table should be
propagated to the output.

Differential Revision: https://reviews.llvm.org/D91870
The file was modifiedlld/test/wasm/locals-duplicate.test
The file was modifiedlld/wasm/InputFiles.h
The file was modifiedlld/test/wasm/shared.ll
The file was modifiedlld/wasm/SymbolTable.h
The file was modifiedlld/wasm/MarkLive.cpp
The file was modifiedlld/wasm/Symbols.cpp
The file was modifiedlld/wasm/Symbols.h
The file was modifiedlld/wasm/InputFiles.cpp
The file was modifiedlld/wasm/SyntheticSections.h
The file was modifiedlld/wasm/Writer.cpp
The file was modifiedlld/test/wasm/init-fini.ll
The file was modifiedlld/wasm/SymbolTable.cpp
The file was modifiedlld/wasm/SyntheticSections.cpp
The file was modifiedlld/test/wasm/alias.s
The file was modifiedlld/test/wasm/section-symbol-relocs.yaml
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/test/wasm/signature-mismatch.ll
The file was modifiedlld/test/wasm/stack-pointer.ll
The file was modifiedlld/test/wasm/weak-alias.ll
The file was addedlld/test/wasm/export-table-explicit.test
The file was modifiedlld/test/wasm/local-symbols.ll
The file was modifiedlld/test/wasm/pie.ll
Commit d806618636f8a82bfc3f620e1fad83af4d2a2575 by wingo
[WebAssembly] MC layer writes table symbols to object files

Now that the linker handles table symbols, we can allow the frontend to
produce them.

Depends on D91870.

Differential Revision: https://reviews.llvm.org/D92215
The file was modifiedllvm/test/MC/WebAssembly/type-index.s
The file was modifiedllvm/test/MC/WebAssembly/function-alias.ll
The file was modifiedllvm/test/MC/WebAssembly/debug-info.ll
The file was modifiedllvm/test/MC/WebAssembly/weak-alias.s
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/test/MC/WebAssembly/global-ctor-dtor.ll
The file was modifiedllvm/test/MC/WebAssembly/reloc-pic.s
The file was modifiedllvm/test/MC/WebAssembly/debug-info64.ll
Commit f5fcbe4e3c68584ef4858590a079f17593feabbd by nicholas.guy
[AArch64] Further restricts when a dup(*ext) can be rearranged

In most cases, the dup(*ext) pattern can be rearranged to perform
the extension on the vector side, allowing for further vector-specific
optimisations to be made. However the initial checks for this conversion
were insufficient, allowing invalid encodings to be attempted (causing
compilation to fail).

Differential Revision: https://reviews.llvm.org/D94778
The file was addedllvm/test/CodeGen/AArch64/aarch64-dup-ext-crash.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 16bf02c3a19d4e1f4a19cb243de612e17f54f5a9 by nicholas.guy
Reland "[AArch64] Attempt to sink mul operands""

This relands dda60035e9f0769c8907cdf6561489e0435c2275,
which was reverted by dbaa6a1858a42f72b683f700d3bd7a9632f7a518
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
Commit 9f32f1d6fbfa4f4d654876e29c1c2b84e18b1a2e by arjunpitchanathan
[MLIR] Support checking if two FlatAffineConstraints are equal

This patch adds support for checking if two PresburgerSets are equal. In particular, one can check if two FlatAffineConstraints are equal by constructing PrebsurgerSets from them and comparing these.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D94915
The file was modifiedmlir/unittests/Analysis/PresburgerSetTest.cpp
The file was modifiedmlir/lib/Analysis/PresburgerSet.cpp
The file was modifiedmlir/include/mlir/Analysis/PresburgerSet.h
Commit 69295815ed92cc125f7ae0a0c41c99fd507dad9d by david.green
[ARM] Update test target triple. NFC
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad1.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad2.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/aliasing.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad12.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad4.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlaldx-1.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad5.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlald2.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad3.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlald0.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlald1.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smladx-1.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad9.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad8.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/multi-use-loads.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad0.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad10.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlaldx-2.ll
The file was modifiedllvm/test/CodeGen/ARM/ParallelDSP/smlad11.ll
Commit 275716d6db79a6da3d5cee12139dd0c0abf8fd07 by usx
[clangd] Derive new signals in CC from ASTSignals.

This patch only introduces new signals but does not use their value
in scoring a CC candidate. Usage of these signals in CC ranking in both
heiristics and ML model will be introduced in later patches.

Differential Revision: https://reviews.llvm.org/D94473
The file was modifiedclang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.cpp
The file was modifiedclang-tools-extra/clangd/Quality.cpp
The file was modifiedclang-tools-extra/clangd/Quality.h
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/CodeComplete.h
Commit 1d04dc52dd24d791970e56053cdd67fe149b0554 by lxfind
[Coroutine] Do not CoroElide if there are musttail calls

This is to address https://bugs.llvm.org/show_bug.cgi?id=48626.
When there are musttail calls that use parameters aliasing the newly created coroutine frame, the existing implementation will fatal.
We simply cannot perform CoroElide in such cases. In theory a precise analysis can be done to check whether the parameters of the musttail call
actually alias the frame, but it's very hard to do it before the transformation happens. Also in most cases the existence of musttail call is
generated due to symmetric transfers, and in those cases alias analysis won't be able to tell that they don't alias anyway.

Differential Revision: https://reviews.llvm.org/D94834
The file was modifiedllvm/lib/Transforms/Coroutines/CoroElide.cpp
The file was addedllvm/test/Transforms/Coroutines/coro-elide-musttail.ll
Commit e7dc083a410f187e143138b4956993370626268b by david.green
[ARM] Don't handle low overhead branches in AnalyzeBranch

It turns our that the BranchFolder and IfCvt does not like unanalyzable
branches that fall-through. This means that removing the unconditional
branches from the end of tail predicated instruction can run into
asserts and verifier issues.

This effectively reverts 372eb2bbb6fb903ce76266e659dfefbaee67722b, but
adds handling to t2DoLoopEndDec which are not branches, so can be safely
skipped.
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/varying-outer-2d-reduction.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/sibling-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float16regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/aligned-nonfallthrough.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-scatter-increment.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-tailpred.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-blockplacement.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vcmp-vpst-combination.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vldshuffle.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-increment.ll
Commit fa9851ebfee48014a1c48a7e7d625d9ecff3ebad by arjunpitchanathan
[MLIR] NFC: simplify PresburgerSet::isEqual

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D94918
The file was modifiedmlir/lib/Analysis/PresburgerSet.cpp
Commit a5a6164f6de5bea2ad1e78445684cc81fe632e56 by flo
[AArch64] Add test to check the attributes for some intrinsics.
The file was addedllvm/test/Assembler/aarch64-intrinsics-attributes.ll
Commit ca7e27054c25c2bc6cf88879d73745699251412c by spatel
[SLP] add more FMF tests for fmax/fmin reductions; NFC
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/fminnum.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/fmaxnum.ll
Commit b42ff9fb038206c7967e22ceef2c7ea8275dc198 by sam
[RISCV][NFC] Increase test coverage of Zbt extension

Add Zbt (ternary) extension code generation to the select lowering
tests since it can have a significant impact on how select is
lowered.

While we are here make the neg-abs commands more consistent with
the other tests.

Reviewed By: lenary

Differential Revision: https://reviews.llvm.org/D94798
The file was modifiedllvm/test/CodeGen/RISCV/neg-abs.ll
The file was removedllvm/test/CodeGen/RISCV/bare-select.ll
The file was modifiedllvm/test/CodeGen/RISCV/select-const.ll
The file was modifiedllvm/test/CodeGen/RISCV/select-optimize-multiple.ll
The file was modifiedllvm/test/CodeGen/RISCV/select-and.ll
The file was modifiedllvm/test/CodeGen/RISCV/select-optimize-multiple.mir
The file was addedllvm/test/CodeGen/RISCV/select-bare.ll
The file was modifiedllvm/test/CodeGen/RISCV/select-cc.ll
The file was modifiedllvm/test/CodeGen/RISCV/select-or.ll
Commit 50ae6a3ac9bdf640ecc69fe6540b08a8b4355398 by flo
[AArch64] Make target intrinsics DefaultAttrIntrinsics.

DefaultAttrIntrinsics was introduced to add very common attributes to a
large set of intrinsics.

Currently the added attributes include:

    nofree nosync nounwind willreturn

I think those should hold for most AArch64 target intrinsics, but
there are too many to check manually. This patch makes most AArch64 target
intrinsics DefaultAttrsIntrinsics.

Some notable exceptions I think are exclusive loads and stores as well
as the memory barrier intrinsics, for which nosync does not apply I
think.

Reviewed By: SjoerdMeijer

Differential Revision: https://reviews.llvm.org/D94687
The file was modifiedllvm/test/Assembler/aarch64-intrinsics-attributes.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
Commit 2f92386e721acd7badac06b67229537c4f0adfad by adhemerval.zanella
[LLD][ELF][AArch64] Set _GLOBAL_OFFSET_TABLE_ at the start of .got

The commit 18aa0be36ed9 changed the default GotBaseSymInGotPlt to true
for AArch64.  This is different than binutils, where
_GLOBAL_OFFSET_TABLE_ points at the start or .got.

It seems to not intefere with current relocations used by LLVM.  However
as indicated by PR#40357 [1] gcc generates R_AARCH64_LD64_GOTPAGE_LO15
for -pie (in fact it also generated the relocation for -fpic).

This change is requires to correctly handle R_AARCH64_LD64_GOTPAGE_LO15
by lld from objects generated by gcc.

[1] https://bugs.llvm.org/show_bug.cgi?id=40357
The file was modifiedlld/test/ELF/global-offset-table-position-aarch64.s
The file was modifiedlld/ELF/Arch/AArch64.cpp
Commit 291ac7e622d542f8b25f74bc28051762edc90938 by flo
[AArch64] Revert back to Intrinsic<> for TME instructions.

This patch reverts back to Intrinsic for the instructions for the
transactional memory extension, so nosync is not included.
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
The file was modifiedclang/test/CodeGen/aarch64-tme.cpp
Commit a58aceffad61ebffb1a860763299b3307041efa6 by Raphael Isemann
[lldb][docs] Use 'any' as the default role in LLDB's sphinx project

sphinx processes text in backticks depending on what 'role' it has (e.g.,
`:code:\`blub\`` -> role is `code`). If no role is provided, the default role is
taken which is right now using the default value of `content`. `content` only
really makes the text cursive which isn't really useful for anything right now.

Sphinx recommends using the `any` role by default [1] as that turns text in
backticks without an explicit roles into some kind of smart reference. If we did
this in LLDB, then we could just reference SB API classes by doing `\`SBValue\``
instead of typing out the rather verbose `:py:class:`/`:py:func:`/... role
before each reference. This would be especially nice when writing the SB API
docs itself as we constantly have to reference other classes.

[1] https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#role-any

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D94899
The file was modifiedlldb/docs/conf.py
The file was modifiedlldb/docs/use/python.rst
The file was modifiedlldb/docs/use/variable.rst
Commit 28ea50f524b56e11b608ca1f768d2981579ebe75 by kazu
[llvm] Populate std::vector at construction time (NFC)
The file was modifiedllvm/lib/ObjectYAML/MachOEmitter.cpp
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
The file was modifiedllvm/lib/ProfileData/SampleProf.cpp
Commit dc300beba7a849aac44c39ccc450a575db99bc14 by kazu
[STLExtras] Add a default value to drop_begin

This patch adds the default value of 1 to drop_begin.

In the llvm codebase, 70% of calls to drop_begin have 1 as the second
argument.  The interface similar to with std::next should improve
readability.

This patch converts a couple of calls to drop_begin as examples.

Differential Revision: https://reviews.llvm.org/D94858
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
The file was modifiedllvm/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedllvm/unittests/ADT/STLExtrasTest.cpp
Commit 23b0ab2acb424e3e74722c0183e5c5ac84e6ea4c by kazu
[llvm] Use the default value of drop_begin (NFC)
The file was modifiedllvm/lib/Transforms/Scalar/LoopInterchange.cpp
The file was modifiedllvm/lib/Analysis/ModuleSummaryAnalysis.cpp
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/lib/Target/X86/X86MCInstLower.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/Analysis/LoopInfo.cpp
The file was modifiedllvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SafeStackLayout.cpp
The file was modifiedllvm/tools/llvm-xray/xray-stacks.cpp
The file was modifiedllvm/lib/Analysis/VFABIDemangling.cpp
The file was modifiedllvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
Commit 196cc96f9a643d1cb828f48ef15ec30d0de24df7 by adamcz
[clang] Allow LifetimeExtendedTemporary to have no access specifier

The check only runs in debug mode during serialization, but
assert()-fail on:
  struct S { const int& x = 7; };
in C++ mode.

Differential Revision: https://reviews.llvm.org/D94804
The file was modifiedclang/lib/AST/DeclBase.cpp
The file was modifiedclang/test/PCH/cxx-reference.h
Commit 2c51bef76cbf0149101b9e7c7c658b4a58657929 by craig.topper
[RISCV] Add a test of vector sadd.overflow to demonstrate intrinsics with multiple scalable vector results.

This builds on D94142 where scalable vectors are allowed in structs.

I did have to fix one scalable vector issue in the vector type
creation for these intrinsics where we used getVectorNumElements
instead of ElementCount.

Differential Revision: https://reviews.llvm.org/D94149
The file was addedllvm/test/CodeGen/RISCV/rvv/saddo-sdnode.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Commit 5d431c3d32c7736d74c6a9dfe4a9a43f183d880f by craig.topper
Revert "[RISCV] Add a test of vector sadd.overflow to demonstrate intrinsics with multiple scalable vector results."

This reverts commit 2c51bef76cbf0149101b9e7c7c658b4a58657929.

I seem to have messed up the check lines in the test.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was removedllvm/test/CodeGen/RISCV/rvv/saddo-sdnode.ll
Commit 79e798aca38baa260b9f3318991232dd1b5fc3f6 by craig.topper
Recommit "[RISCV] Add a test of vector sadd.overflow to demonstrate intrinsics with multiple scalable vector results."

This recommits 2c51bef76cbf0149101b9e7c7c658b4a58657929.

I've fixed the broken check line from when I renamed the test function.

Original commit message:
This builds on D94142 where scalable vectors are allowed in structs.

I did have to fix one scalable vector issue in the vector type
creation for these intrinsics where we used getVectorNumElements
instead of ElementCount.
The file was addedllvm/test/CodeGen/RISCV/rvv/saddo-sdnode.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Commit 01a13f127a8b17c7827cc19302fc612532249795 by Louis Dionne
[libc++] Rename check-cxx-deps to cxx-test-depends for consistency

Several subprojects have targets that do the same thing, and they all
follow the same naming convention: llvm-test-depends, clang-test-depends,
lld-test-depends, etc.

This makes libc++ consistent with other LLVM projects.
Thanks to Duncan Exon Smith for noticing and suggesting the change.

Differential Revision: https://reviews.llvm.org/D94499
The file was modifiedlibcxx/docs/TestingLibcxx.rst
The file was modifiedlibcxx/test/CMakeLists.txt
Commit 417f613743239a716d812443ba131207d78c6c9d by stellaraccident
[NFC] Update some mlir python documentation.

* Development setup recommendations.
* Test updates to match what we actually do.
* Update cmake variable `PYTHON_EXECUTABLE` -> `Python3_EXECUTABLE` to match the upgrade to python3 repo wide.
The file was modifiedmlir/docs/Bindings/Python.md
Commit 2776be43f0c28031348d2b18a050a8d6d01120f2 by Louis Dionne
[libc++] improve feature test macro script

I've been playing a bit with the `generate_feature_test_macro_components.py` script and replaced some hardcoded values with extra code generation (generate ALL the things).
The output is the same and it makes updating the script less work for the coming 25 C++ standards (until 2 digit number overflow).

Feel free to 'veto' if you think it's overkill.

Differential Revision: https://reviews.llvm.org/D94530
The file was modifiedlibcxx/utils/generate_feature_test_macro_components.py
Commit d9b6e4d583c5585b756680e6da3fbd0bb8f0a722 by stellaraccident
NFC: Document current MLIR Python ODS conventions.

* We had let the documentation get stale and catching it up prior to proposing changes.
The file was modifiedmlir/docs/Bindings/Python.md
Commit aa3a59e0c69e16ff25ee991636247f9f99bfc34d by Andrey.Churbanov
[OpenMP][NFC] Fix test

The test fails if memkind library is accessible.
The file was modifiedopenmp/runtime/test/api/omp_alloc_null_fb.c
Commit 22b68440e1647e16b5ee24b924986207173c02d1 by nikita.ppv
[PredicateInfo] Add more and/or tests (NFC)
The file was modifiedllvm/test/Transforms/Util/PredicateInfo/testandor.ll
Commit 1c31459153647a21da9b5cdbb01f78bccfb341a5 by craig.topper
[RISCV] Remove empty Sched instantiations from the end of InstAlias defs. NFCI

InstAliases don't need scheduling information so I'm not sure what
these lines were even doing. Especially since the records don't
have names.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoB.td
Commit 5b77ac32b1150d066b35b45d6d982f4b4a1f62ff by spatel
[SLP] match maxnum/minnum intrinsics as FP reduction ops

After much refactoring over the last 2 weeks to the reduction
matching code, I think this change is finally ready.

We effectively broke fmax/fmin vector reduction optimization
when we started canonicalizing to intrinsics in instcombine,
so this should restore that functionality for SLP.

There are still FMF problems here as noted in the code comments,
but we should be avoiding miscompiles on those for fmax/fmin by
restricting to full 'fast' ops (negative tests are included).

Fixing FMF propagation is a planned follow-up.

Differential Revision: https://reviews.llvm.org/D94913
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/fmaxnum.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/fminnum.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/vector-reductions-expanded.ll
Commit 2cb4a96a99e8acbf57a31d4d06ed5e21799d878e by Louis Dionne
[libc++] NFCI: Refactor allocator_traits

The implementation had a lot of boilerplate and was more complicated than
necessary. This NFC refactoring introduces a few macros to reduce code
duplication, and uses a consistent style and formatting for the whole file.

Differential Revision: https://reviews.llvm.org/D94544
The file was modifiedlibcxx/include/__memory/allocator_traits.h
The file was modifiedlibcxx/include/memory
Commit d27bb5c375ca8e96e15168587a3bcd91b244fcad by spatel
[x86] add cast to avoid compile-time warning; NFC
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit fe301f474977da0b82548652ef4bbd058542d076 by kazu
[LoopInfo] Fix a typo in compareLoops

The code here is checking to see if two sets are identical.
OtherBlocksSet should point to OtherL->getBlocksSet() instead.

Differential Revision: https://reviews.llvm.org/D94926
The file was modifiedllvm/include/llvm/Analysis/LoopInfoImpl.h
Commit 395c737d9fcefb0fb99ac6c524b1d47e697d31d6 by aqjune
[SimplifyCFG] Update SimplifyBranchOnICmpChain to recognize select form of and/or

This patch teaches SimplifyCFG::SimplifyBranchOnICmpChain to understand select form of
(x == C1 || x == C2 || ...) / (x != C1 && x != C2 && ...) and optimize them into switch if possible.
D93065 has more context about the transition, including links to the list of optimizations being updated.

Differential Revision: https://reviews.llvm.org/D93943
The file was modifiedllvm/test/Transforms/SimplifyCFG/switch_create.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit 9d81073acb49d2bdf32dc3477310dd20ffa0436f by kkwli0
[OpenMP][Docs] Fix typos in FAQ (NFC)
The file was modifiedopenmp/docs/SupportAndFAQ.rst
Commit 14573d44ae097969a6168fbf14cc7f796442a296 by arthur.j.odwyer
Regenerate the feature test macro unit-tests. NFCI.

Somehow commit 1f1250151f222ba391d05dcc173f4b6c65d05ca2 added the
right code but with the wrong whitespace.
The file was modifiedlibcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
The file was modifiedlibcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.pass.cpp
Commit 0441df94ad874c0c59a3785bd54a3d2f9a616fac by aqjune
[InstCombine,InstSimplify] Optimize select followed by and/or/xor

This patch adds `A & (A && B)` -> `A && B`  (similarly for or + logical or)

Also, this patch adds `~(select C, (icmp pred X, Y), const)` -> `select C, (icmp pred' X, Y), ~const`.

Alive2 proof:
merge_and: https://alive2.llvm.org/ce/z/teMR97
merge_or: https://alive2.llvm.org/ce/z/b4yZUp
xor_and: https://alive2.llvm.org/ce/z/_-TXHi
xor_or: https://alive2.llvm.org/ce/z/2uYx_a

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D94861
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-transforms.ll
Commit 2d89ebd5d17b8d8800606880fe02cd867e4a0b90 by aqjune
Address unused variable warning
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
Commit a9b3303a8847e100ae23fa711f9b5b8963ebdaf9 by czhengsz
Revert "[NFC] [TargetRegisterInfo] add one use check to lookThruCopyLike."

This reverts commit 3bdf4507b66348ad78df4655a8e4f36c3fc10f3c.

Post commit comments need to be addressed first.
The file was modifiedllvm/lib/CodeGen/TargetRegisterInfo.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetRegisterInfo.h
Commit c535a7fdadb4679327ebb1b3b82c73c9ff6a164a by yuanke.luo
[X86] Fix tile spill merge issue.

This is a additional bug fix for c5be0e0cc0. The distance for
the spill instructions is wrong in previous patch.

Differential Revision: https://reviews.llvm.org/D94772
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
Commit bc713f6a004723d1325bc16e1efc32d0ac82f939 by richard
PR48763: Better handling for classes that inherit a default constructor.

The C++ standard wording doesn't appear to properly handle the case
where a class inherits a default constructor from a base class. Various
properties of classes are defined in terms of the corresponding property
of the default constructor, and in this case, the class does not have a
default constructor despite being default-constructible, which the
wording doesn't handle properly.

This change implements a tentative fix for these problems, which has
also been proposed to the C++ committee: if a class would inherit a
default constructor, and does not explicitly declare one, then one is
implicitly declared.
The file was modifiedclang/test/CXX/special/class.ctor/p6-0x.cpp
The file was modifiedclang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p15.cpp
The file was modifiedclang/include/clang/AST/DeclCXX.h
The file was modifiedclang/test/CXX/special/class.inhctor/p1.cpp
The file was modifiedclang/test/CXX/special/class.inhctor/p2.cpp
The file was modifiedclang/lib/AST/DeclCXX.cpp
The file was modifiedclang/include/clang/AST/CXXRecordDeclDefinitionBits.def
Commit 61f69153e8dd7956d03ce46e30257c5bb3e41873 by nemanja.i.ibm
[PowerPC] Sign extend comparison operand for signed atomic comparisons

As of 8dacca943af8a53a23b1caf3142d10fb4a77b645, we sign extend the atomic loaded
operand for signed subword comparisons. However, the assumption that the other
operand is correctly sign extended doesn't always hold. This patch sign extends
the other operand if it needs to be sign extended.

This is a second fix for https://bugs.llvm.org/show_bug.cgi?id=30451

Differential revision: https://reviews.llvm.org/D94058
The file was modifiedllvm/test/CodeGen/PowerPC/atomics-regression.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was addedllvm/test/CodeGen/PowerPC/sign-ext-atomics.ll
Commit e147eccafa157668c9cd0eb26f0042ad82425874 by yuanke.luo
[X86][AMX] Clear AMX lit test case.

Add nounwind attribute to avoid generating cfi instructions. Also make
global buffer 64 bytes align in lit test case.

Differential Revision: https://reviews.llvm.org/D94910
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-intrinsic-chain.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-config.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-type.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-across-func.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-spill.ll
Commit e3065ce238475ec202c707f4c58d90df171626ca by richard
DR2064: decltype(E) is only a dependent type if E is type-dependent, not
if E is merely instantiation-dependent.

Previously reverted in 34e72a146111dd986889a0f0ec8767b2ca6b2913;
re-committed with a fix to an issue that caused name mangling to assert.
The file was modifiedclang/test/SemaTemplate/temp_arg_template_cxx1z.cpp
The file was modifiedclang/include/clang/AST/DependenceFlags.h
The file was modifiedclang/test/CodeGenCXX/mangle-subst.cpp
The file was modifiedclang/www/cxx_dr_status.html
The file was modifiedclang/test/Sema/invalid-bitwidth-expr.mm
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/test/CXX/drs/dr20xx.cpp
The file was modifiedclang/test/SemaTemplate/dependent-expr.cpp
The file was modifiedclang/lib/AST/Type.cpp
The file was modifiedclang/test/SemaCXX/invalid-template-base-specifier.cpp
Commit fbb83f18b5485218ad3c36c1d079c89f061372b8 by richard
PR24076, PR33655, C++ CWG 1558: Consider the instantiation-dependence of
the nested-name-specifier when determining whether a qualified type is
instantiation-dependent.

Previously reverted in 25a02c3d1a688d3cd18faef96c75fa553efbbac7 due to
causing us to reject some code. It turns out that the rejected code was
ill-formed (no diagnostic required).
The file was modifiedclang/www/cxx_dr_status.html
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang/test/CXX/drs/dr15xx.cpp
The file was modifiedclang/test/CodeGenCXX/mangle-template.cpp
The file was modifiedclang/test/SemaTemplate/partial-spec-instantiate.cpp
The file was modifiedclang/include/clang/AST/Type.h
The file was addedclang/test/SemaTemplate/instantiation-dependence.cpp
Commit 5a391d38ac6c561ba908334d427f26124ed9132e by richard
Following up on PR48517, fix handling of template arguments that refer
to dependent declarations.

Treat an id-expression that names a local variable in a templated
function as being instantiation-dependent.

This addresses a language defect whereby a reference to a dependent
declaration can be formed without any construct being value-dependent.
Fixing that through value-dependence turns out to be problematic, so
instead this patch takes the approach (proposed on the core reflector)
of allowing the use of pointers or references to (but not values of)
dependent declarations inside value-dependent expressions, and instead
treating template arguments as dependent if they evaluate to a constant
involving such dependent declarations.

This ends up affecting a bunch of OpenMP tests, due to OpenMP
imprecisely handling instantiation-dependent constructs, bailing out
early instead of processing dependent constructs to the extent possible
when handling the template.

Previously committed as 8c1f2d15b826591cdf6bd6b468b8a7d23377b29e, and
reverted because a dependency commit was reverted.
The file was modifiedclang/include/clang/AST/TemplateBase.h
The file was modifiedclang/lib/AST/ExprCXX.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_dist_schedule_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_simd_dist_schedule_messages.cpp
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/test/OpenMP/target_simd_collapse_messages.cpp
The file was modifiedclang/test/OpenMP/distribute_dist_schedule_messages.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_messages.cpp
The file was modifiedclang/test/OpenMP/target_update_to_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_messages.cpp
The file was modifiedclang/lib/AST/ComputeDependence.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiate.cpp
The file was modifiedclang/test/OpenMP/distribute_simd_dist_schedule_messages.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_dist_schedule_messages.cpp
The file was modifiedclang/lib/AST/TemplateBase.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_messages.cpp
The file was modifiedclang/test/OpenMP/task_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_simd_dist_schedule_messages.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/test/SemaCXX/warn-unused-lambda-capture.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_dist_schedule_messages.cpp
The file was modifiedclang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/test/OpenMP/target_parallel_for_simd_collapse_messages.cpp
The file was modifiedclang/test/OpenMP/target_parallel_for_simd_ordered_messages.cpp
The file was removedclang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
The file was modifiedclang/lib/AST/Expr.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/test/OpenMP/target_update_from_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_dist_schedule_messages.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was addedclang/test/SemaTemplate/temp_arg_nontype_cxx17.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_messages.cpp
Commit 4b574008aef5a7235c1f894ab065fe300d26e786 by richard
[c++20] P1907R1: Support for generalized non-type template arguments of scalar type.

Previously committed as 9e08e51a20d0d2b1c5724bb17e969d036fced4cd, and
reverted because a dependency commit was reverted. This incorporates the
following follow-on commits that were also reverted:

7e84aa1b81e72d44bcc58ffe1731bfc7abb73ce0 by Simon Pilgrim
ed13d8c66781b50ff007cb089c5905f9bb9e8af2 by me
95c7b6cadbc9a3d4376ef44edbeb3c8bb5b8d7fc by Sam McCall
430d5d8429473c2b10b109991d7577a3cea41140 by Dave Zarzycki
The file was modifiedclang/test/CodeGenCXX/mangle-template.cpp
The file was modifiedclang/lib/AST/ODRHash.cpp
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
The file was modifiedclang/lib/AST/MicrosoftMangle.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
The file was modifiedclang/tools/libclang/CIndex.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedclang/lib/AST/ItaniumMangle.cpp
The file was modifiedclang-tools-extra/clangd/DumpAST.cpp
The file was addedclang/test/CodeGenCXX/template-arguments.cpp
The file was modifiedclang-tools-extra/clangd/index/remote/Client.cpp
The file was modifiedclang/tools/libclang/CXCursor.cpp
The file was modifiedclang/lib/Sema/SemaTemplateInstantiate.cpp
The file was modifiedclang/lib/AST/TemplateBase.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/AST/TemplateArgumentVisitor.h
The file was modifiedclang/lib/AST/TypeLoc.cpp
The file was modifiedclang/lib/Sema/SemaTemplateDeduction.cpp
The file was modifiedclang/test/CodeGenCXX/mangle-ms-templates.cpp
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/test/SemaTemplate/temp_arg_nontype_cxx17.cpp
The file was modifiedclang/lib/Sema/SemaTemplateVariadic.cpp
The file was modifiedlldb/include/lldb/lldb-enumerations.h
The file was modifiedclang/lib/Index/USRGeneration.cpp
The file was modifiedclang/include/clang/AST/TemplateBase.h
The file was modifiedclang-tools-extra/clangd/FindTarget.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/lib/AST/ASTStructuralEquivalence.cpp
The file was modifiedclang/lib/CodeGen/CGExprConstant.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/include/clang/AST/PropertiesBase.td
The file was modifiedclang/lib/AST/StmtProfile.cpp
The file was modifiedclang/lib/AST/ASTImporter.cpp
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
Commit 24672ddea3c97fd1eca3e905b23c0116d7759ab8 by Lang Hames
[ORC] Move OrcError.h to include/llvm/ExecutionEngine/Orc/Shared.

OrcShared is the correct home for this header since Orc was split in
1d0676b54c4. (It should have been moved in that commit, but was overlooked).
The file was addedllvm/include/llvm/ExecutionEngine/Orc/Shared/OrcError.h
The file was removedllvm/include/llvm/ExecutionEngine/Orc/OrcError.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/Core.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Shared/RPCUtils.h
The file was modifiedllvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Shared/Serialization.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/Shared/OrcError.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/LLJIT.cpp
The file was modifiedllvm/unittests/ExecutionEngine/Orc/ResourceTrackerTest.cpp
Commit bfbbb62b22f8ba7cabd3b4dece4e72f62b2d972b by sivachandra
[libc][NFC] Use ASSERT_EQ instead of EXPECT_EQ in fenv/exception_status_test
The file was modifiedlibc/test/src/fenv/exception_status_test.cpp
Commit 7dadcd02d6ce0278723c87736f6278610da0ddb2 by joker.eph
Fix a few GCC compiler warnings (NFC)
The file was modifiedmlir/lib/CAPI/Dialect/Shape.cpp
The file was modifiedmlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
The file was modifiedmlir/lib/CAPI/Dialect/SCF.cpp
The file was modifiedmlir/lib/CAPI/Dialect/Tensor.cpp
The file was modifiedmlir/lib/Rewrite/ByteCode.cpp
The file was modifiedmlir/lib/CAPI/Dialect/Linalg.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Sparsification.cpp
The file was modifiedmlir/tools/mlir-tblgen/OpFormatGen.cpp
The file was modifiedmlir/lib/CAPI/Dialect/Standard.cpp
The file was modifiedmlir/lib/ExecutionEngine/SparseUtils.cpp
Commit ffb254978cf4e7a9cdbb4cbb51bfc589072353c1 by sivachandra
[libc][NFC][Obvious] Add a missing dep.
The file was modifiedlibc/include/CMakeLists.txt
Commit 9a0900dc4c6b3390fc886b7b556196da82ba1204 by nullptr.cpp
[NFC][AIX][XCOFF] Fix compile warning on strncpy

GCC warning:
```
In file included from /usr/include/string.h:495,
                 from /usr/include/c++/9/cstring:42,
                 from /llvm-project/llvm/include/llvm/ADT/Hashing.h:53,
                 from /llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12,
                 from /llvm-project/llvm/include/llvm/MC/MCAsmBackend.h:12,
                 from /llvm-project/llvm/lib/MC/XCOFFObjectWriter.cpp:14:
In function ‘char* strncpy(char*, const char*, size_t)’,
    inlined from ‘{anonymous}::Section::Section(const char*, llvm::XCOFF::SectionTypeFlags, bool, {anonymous}::CsectGroups)’ at /llvm-project/llvm/lib/MC/XCOFFObjectWriter.cpp:146:12:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:106:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8 equals destination size [-Wstringop-truncation]
  106 |   return __builtin___strncpy_chk (__dest, __src, __len, __bos (__dest));
      |          ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

Reviewed By: hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D94872
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
Commit 9cf511aa08ae2a5b94e9cefe3fc60cc33358519b by shihpo.hung
[RISCV] Add intrinsics for vector AMO operations

Add vamoswap, vamoadd, vamoxor, vamoand, vamoor,
    vamomin, vamomax, vamominu, vamomaxu intrinsics.

Reviewed By: craig.topper, khchen

Differential Revision: https://reviews.llvm.org/D94589
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoxor-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamomin-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoadd-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamominu-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoand-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoxor-rv32.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsRISCV.td
The file was addedllvm/test/CodeGen/RISCV/rvv/vamomaxu-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamominu-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoadd-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoand-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoor-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoswap-rv64.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was addedllvm/test/CodeGen/RISCV/rvv/vamomax-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoor-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamomin-rv32.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamomaxu-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamomax-rv64.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vamoswap-rv32.ll
Commit a11f8b1ad66d68ca0a3a277ce776007abff9c7eb by marek.kurdej
[libc++] [P0935] [C++20] Eradicating unnecessarily explicit default constructors from the standard library.

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0935r0.html

Reviewed By: ldionne, #libc

Differential Revision: https://reviews.llvm.org/D91292
The file was modifiedlibcxx/include/random
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.cauchy/ctor_double_double.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.pois/rand.dist.pois.poisson/ctor_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_result_type.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.pois/rand.dist.pois.gamma/ctor_double_double.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp
The file was removedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.real/ctor_int_int.pass.cpp
The file was modifiedlibcxx/include/sstream
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.normal/ctor_double_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.pois/rand.dist.pois.exp/ctor_double.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.t/ctor_double.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.chisq/ctor_double.pass.cpp
The file was modifiedlibcxx/test/std/depr/depr.str.strstreams/depr.strstreambuf/depr.strstreambuf.cons/default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.bernoulli/ctor_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.pois/rand.dist.pois.weibull/ctor_double_double.pass.cpp
The file was modifiedlibcxx/include/locale
The file was modifiedlibcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/ctor_double_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.lognormal/ctor_double_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.device/ctor.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/ctor_result_type.pass.cpp
The file was modifiedlibcxx/include/queue
The file was modifiedlibcxx/test/std/input.output/string.streams/stringstream.cons/default.pass.cpp
The file was modifiedlibcxx/include/regex
The file was modifiedlibcxx/include/strstream
The file was modifiedlibcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_container.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_container.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_comp_container.pass.cpp
The file was modifiedlibcxx/docs/Cxx2aStatusPaperStatus.csv
The file was modifiedlibcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
The file was modifiedlibcxx/test/std/localization/locales/locale.convenience/conversions/conversions.buffer/ctor.pass.cpp
The file was modifiedlibcxx/include/algorithm
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.negbin/ctor_int_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.bin/ctor_int_double.pass.cpp
The file was modifiedlibcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_comp.pass.cpp
The file was addedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.real/ctor_real_real.pass.cpp
The file was modifiedlibcxx/test/std/localization/locales/locale.convenience/conversions/conversions.string/ctor_codecvt.pass.cpp
The file was modifiedlibcxx/test/std/re/re.results/re.results.const/default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.pois/rand.dist.pois.extreme/ctor_double_double.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/rand.dist.uni.int/ctor_int_int.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/rand.dist.bern.geo/ctor_double.pass.cpp
The file was modifiedlibcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_default.pass.cpp
The file was modifiedlibcxx/test/std/numerics/rand/rand.eng/rand.eng.sub/ctor_result_type.pass.cpp
The file was addedlibcxx/test/support/make_implicit.h
Commit d4bb3ef53276213d3ba8987da5f76f423b86160d by gchatelet
[libc][NFC] Remove dead code
The file was modifiedlibc/benchmarks/LibcMemoryBenchmarkMain.cpp
The file was modifiedlibc/benchmarks/JSON.cpp
Commit e517dff50a4f933d0729026901b14c7c1112a359 by gchatelet
[libc][NFC] remove dependency on non standard ssize_t

`ssize_t` is from POSIX and is not standard unfortunately.
Rewritting the code so it doesn't depend on it.

Differential Revision: https://reviews.llvm.org/D94760
The file was modifiedlibc/src/string/memmove.cpp
Commit b86e7ae66cb988dda33445c29fa64f93e7ca9c3c by tbaeder
[clang][driver][NFC][obvious] Remove obsolete unistd.h include

getuid() is not being called in this file anymore.
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit 418df4a6ab35d343cc0f2608c90a73dd9b8d0ab1 by wingo
[WebAssembly] call_indirect issues table number relocs

This patch changes to make call_indirect explicitly refer to the
corresponding function table, residualizing TABLE_NUMBER relocs against
it.

With this change, wasm-ld now sees all references to tables, and can
link multiple tables.

Differential Revision: https://reviews.llvm.org/D90948
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/test/MC/WebAssembly/reloc-code.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td
The file was modifiedlld/test/wasm/compress-relocs.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
The file was modifiedllvm/test/MC/WebAssembly/basic-assembly.s
The file was modifiedllvm/test/MC/WebAssembly/tail-call-encodings.s
The file was modifiedllvm/test/MC/WebAssembly/weak-alias.s
The file was modifiedllvm/test/CodeGen/WebAssembly/function-pointer64.ll
The file was modifiedlld/test/wasm/shared.ll
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
The file was modifiedllvm/test/MC/WebAssembly/type-index.s
The file was modifiedllvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
The file was addedllvm/test/MC/WebAssembly/call-indirect-relocs.s
The file was modifiedlld/test/wasm/call-indirect.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/multivalue.ll
Commit 831a143e50cac873ec095fc7139a485173ba8c35 by wingo
[WebAssembly] Change prefix on data segment flags to WASM_DATA_SEGMENT

Element sections will also need flags, so we shouldn't squat the
WASM_SEGMENT namespace.

Depends on D90948.

Differential Revision: https://reviews.llvm.org/D92315
The file was modifiedlld/wasm/Writer.cpp
The file was modifiedlld/wasm/OutputSections.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/Wasm.h
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/lib/Object/WasmObjectFile.cpp
The file was modifiedllvm/lib/ObjectYAML/WasmYAML.cpp
The file was modifiedllvm/lib/ObjectYAML/WasmEmitter.cpp
Commit 39a2a233f88443e865758ba73c156787c77ead2c by jan_svoboda
[clang][cli] Parse Lang and CodeGen options separately

This patch moves the parsing of `{Lang,CodeGen}Options` from `parseSimpleArgs` to the original `Parse{Lang,CodeGen}Args` functions.

This ensures all marshalled `LangOptions` are being parsed **after** the call `setLangDefaults`, which in turn enables us to marshall `LangOptions` that somehow depend on the defaults. (In a future patch.)

Now, `CodeGenOptions` need to be parsed **after** `LangOptions`, because `-cl-mad-enable` (a `CodeGenOpt`) depends on the value of `-cl-fast-relaxed-math` and `-cl-unsafe-math-optimizations` (`LangOpts`).

Unfortunately, this removes the nice property that marshalled options get parsed in the exact order they appear in the `.td` file. Now we cannot be sure that a TableGen record referenced in `ImpliedByAnyOf` has already been parsed. This might cause an ordering issues (i.e. reading value of uninitialized variable). I plan to mitigate this by moving each `XxxOpt` group from `parseSimpleArgs` back to their original parsing function. With this setup, if an option from group `A` references option from group `B` in TableGen, the compiler will require us to make the `CompilerInvocation` member for `B` visible in the parsing function for `A`. That's where we notice that `B` didn't get parsed yet.

Reviewed By: Bigcheese

Differential Revision: https://reviews.llvm.org/D94682
The file was modifiedclang/test/Frontend/diagnostics-order.c
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit 7e1d2224b42b411acf2d3cb20e3cf5a564ef79bb by yuanke.luo
[X86][AMX] Fix the typo.

The dpbsud should be dpbssd.

Differential Revision: https://reviews.llvm.org/D94943
The file was modifiedclang/lib/Headers/amxintrin.h
The file was modifiedclang/test/CodeGen/X86/amx_api.c
Commit c3ce2627949eee3b5d3012db78f670919a49b35d by david.sherwood
[NFC] Make remaining cost functions in LoopVectorize.cpp use InstructionCost

A previous patch has already changed getInstructionCost to return
an InstructionCost type. This patch changes the other various
getXXXCost functions to return an InstructionCost too. This is a
non-functional change - I've added a few asserts that the costs
are valid in places where we're selecting between vector call
and intrinsic costs. However, since we don't yet return invalid
costs from any of the TTI implementations these asserts should
not fire.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Differential Revision: https://reviews.llvm.org/D94065
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit 170199f56262cc3c80591d332da3128bc25ada96 by tpopp
[llvm][nvptx] add atomicity to counter in ISelLowering

Previously uniqueCallSite could have race conditions between different
threads. Now it is accessed with an atomic RMW and will be unique
between different threads.

Differential Revision: https://reviews.llvm.org/D94784
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelLowering.h
The file was modifiedllvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
Commit 95b63c7b139449b2d4084e986ca3f5bfde46b50c by Lang Hames
[ORC] Move LookupRequest from OrcShared to Orc.

It depends on Orc types (SymbolLookupSet), so can't be part of OrcShared.
The file was modifiedllvm/lib/ExecutionEngine/Orc/TPCDynamicLibrarySearchGenerator.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/TargetProcessControl.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/TargetProcessControl.cpp
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/OrcRPCTargetProcessControl.h
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/Shared/TargetProcessControlTypes.h
Commit fb5b12e42ef2255aaf6ab43cb426955257302531 by sguelton
[lit] Harmonize lit and llvm versionning

In addition to consistency, we'll hit a wall when 11.1.0 gets released, because
we cannot represent it with lit versioning scheme.

Differential Revision: https://reviews.llvm.org/D94157
The file was modifiedllvm/utils/lit/lit/__init__.py