SuccessChanges

Summary

  1. [mlir] Add microbenchmark for linalg+async-parallel-for (details)
  2. [mlir] AsynToLLVM: do no use op->getOperands() in conversion patterns (details)
  3. [flang][openmp] Fix bug in `OmpClause::Hint` clause which was missing to generate inside in OMP.cpp.inc file. (details)
  4. [mlir] Fix async microbench integration test (details)
  5. [NFC, Refactor] Modernize enum FunctionDefinitionKind (DeclSpech.h) into a scoped enum (details)
  6. [TableGen] [ISel Matcher Emitter] Rework with two passes: one to size, one to emit (details)
  7. [lldb] Reland "Use translated full ftag values" (details)
  8. [BasicAA] Add recphi test with dynamic offset (NFC) (details)
  9. [Flang][OpenMP][NFC][2/2] Reorder OmpStructureChecker and simplify it. (details)
  10. [X86] Regenerate vector-reduce-or-cmp.ll (details)
  11. DominanceFrontier - remove unused <vector> includes (details)
  12. MachineDominators.h - remove unused <vector> include (details)
  13. [X86] Include %rip for 32-bit RIP-relative relocs for x32 (details)
  14. [BasicAA] Remove stale FIXME (NFC) (details)
  15. [flang][openmp] Separate memory-order-clause parser creating OmpClause node (details)
  16. [NFC] Fix typo in atomic (details)
  17. [BasicAA] Remove some intermediate variables (NFC) (details)
  18. [BasicAA] Return DecomposedGEP (NFC) (details)
  19. [compiler-rt] [profile] Silence a warning about an unused function on mingw targets (details)
  20. [BasicAA] Remove unnecessary sextOrSelf (NFC) (details)
  21. [libunwind] Delete unused handlerNotFound in unwind_phase1 (details)
  22. Fix shared build. (details)
  23. [InstCombine] Use is_contained (NFC) (details)
  24. [StaticAnalyzer] Support struct annotations in FuchsiaHandleChecker (details)
  25. [llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref (details)
  26. thinlto_embed_bitcode.ll: clarify grep should treat input as text (details)
  27. [SelectionDAG] Remove unused declaration ExpandStrictFPOp (NFC) (details)
  28. [MachineLICM] Remove unused declaration HoistRegion (details)
  29. Add Semantic check for Flang OpenMP 4.5 - 2.15.3.2 and 2.15.3.3 shared and private clause (details)
  30. [MBP] Remove unused declaration shouldPredBlockBeOutlined (NFC) (details)
  31. [PowerPC] Extend folding RLWINM + RLWINM to post-RA. (details)
  32. [RISCV] Use separate Lo and Hi MemOperands when expanding BuildPairF64Pseudo and SplitF64Pseudo. (details)
  33. [clangd] Add clang-tidy options to config (details)
  34. [Analysis] Remove unused system header includes (details)
  35. [clangd] Fix compile error after 20b69af7 (details)
  36. [DAG] LowerMINMAX - move default expansion to generic TargetLowering::expandIntMINMAX (details)
  37. Add Semantic check for Flang OpenMP 4.5 - 2.7.1 ordered and collapse clause (details)
  38. [libc++] [libc++abi] Use C++20 standard. (details)
  39. [BasicAA] Add more phi-phi tests (NFC) (details)
  40. [ValueTracking][MemCpyOpt] avoid crash on inttoptr with vector pointer type (PR48075) (details)
  41. [CostModel] add tests for FP maximum; NFC (details)
  42. [CostModel] add basic handling for FP maximum/minimum intrinsics (details)
  43. [BasicAA] Avoid unnecessary cache update (NFC) (details)
  44. [Sema] Introduce function reference conversion, NFC (details)
  45. Build reproducible tarballs for releases (details)
  46. [clangd] Introduce config parsing for External blocks (details)
  47. [clangd] Introduce config compilation for External blocks (details)
  48. [clangd] Introduce ProjectAwareIndex (details)
  49. [clangd] Use ProjectAwareIndex in ClangdMain (details)
  50. [clangd] Fix use-after-free in ProjectAwareIndex tests (details)
  51. [mlir][Python] Support finding pybind11 from the python environment. (details)
  52. [gn build] sort of merge 37ac559fccd4 (details)
  53. [gn build] Port 067ffbfe601 (details)
  54. [ARM] MVE VABD tests. NFC (details)
  55. [gn build] (manually) port ed424b428 (details)
  56. [ARM] Ensure MVE_TwoOpPattern is used inside Predicate's (details)
  57. [Clang] Add __STDCPP_THREADS__ to standard predefine macros (details)
  58. [MLIR] ODS typedef gen fixes & improvements (details)
  59. [hwasan] Remove unused declaration shadowBase (NFC) (details)
  60. [ValueMapper] Remove unused declaration remapFunction (NFC) (details)
  61. [CodeGen] Use pred_empty (NFC) (details)
  62. [NFC] Reduce code duplication in binop processing in computeExitLimitFromCondCached (details)
  63. [llvm-readobj] - Don't crash when relocation table goes past the EOF. (details)
  64. [libc++] [www] Mark P0482 as "In Progress", as some parts of it are already implemented. (details)
  65. [clangd] Attempt at fixing ExternalIndex tests on windows (details)
  66. [lldb] [Process/FreeBSD] Add missing 'override' kws to POSIXStopInfo (details)
  67. [lldb] [Process/Utility] Declare register overlaps between ST and MM (details)
  68. [lldb] [test] Fix qRegisterInfo lldb-server tests to handle missing registers (details)
  69. [lldb] [Process/FreeBSDRemote] Fix regset names and related tests (details)
  70. [clang-tidy] Fix a nullptr-access crash in unused-raii-check. (details)
  71. [lldb] Prevent 'process connect' from using local-only plugins (details)
  72. [LoopFlatten] Widen IV, support ZExt. (details)
  73. [DebugInfo] Refactor code for emitting DWARF expressions for FP constants (details)
  74. [clangd] Second attempt at fixing windows buildbots (details)
  75. [llvm-readobj] - Stop using `unwrapOrError` in `DumpStyle<ELFT>::getGroups()` (details)
  76. [SCEV] Fix incorrect treatment of max taken count. PR48225 (details)
  77. [llvm-readelf/obj] - Fix the possible crash when dumping group sections. (details)
  78. [AST] Build recovery expression by default for all language. (details)
  79. [mlir][Linalg] NFC - Factor out Linalg functionality for shape and loop bounds computation (details)
  80. [clangd] Implement Decl canonicalization rules for rename (details)
  81. [AArch64][SVE] Allow lax conversion between VLATs and GNU vectors (details)
  82. [clangd] Get rid of clangToolingRefactoring dependency (details)
  83. [APInt] Add the truncOrSelf resizing operator to APInt (details)
  84. [clangd] testPath's final result agrees with the passed in Style (details)
  85. [VE][NFC] Clean stack frame description (details)
  86. [VE] Clean canRealignStack implementation (details)
  87. Revert "[clangd] testPath's final result agrees with the passed in Style" (details)
  88. [mlir][Linalg] Drop symbol_source abstraction which does not pay for itself. (details)
  89. [AMDGPU][MC] Improved diagnostic messages for invalid literals (details)
  90. [clangd] textDocument/implementation (LSP layer) (details)
  91. [mlir] Avoid cloning ops in SCF parallel conversion to CFG (details)
  92. Ignore noderef attribute in unevaluated context (details)
  93. [AMDGPU][MC] Improved diagnostic messages (details)
  94. [llvm-readobj][test] - Simplify the gnu-notes.test (details)
  95. [lldb] [test] Restore Windows-skip on 'process connect' tests (details)
  96. [Inline] Fix in handling of ptrtoint in InlineCost (details)
  97. [mlir] canonicalize away zero-iteration SCF for loops (details)
  98. [test] Update PR reference in testcase [NFC] (details)
  99. Remove automatic traversal from forEach matcher (details)
  100. Update mode used in traverse() examples (details)
  101. Remove the IgnoreImplicitCastsAndParentheses traversal kind (details)
  102. Fix speling in comments. NFC. (details)
  103. [VE] Remove magic numbers 176 (details)
  104. [mlir] Add a print function for memref<*xi64>. (details)
  105. Fix tests for clang-query completion (details)
  106. [mlir] Temporarily disable flaky mlir-cpu-runner async tests (details)
  107. [VE] VE Vector Predicated SDNode, vector add isel and tests (details)
  108. [TableGen] Eliminte source location from CodeInit (details)
  109. [AArch64] Add tests for masked.gather costs. (details)
  110. Add userData to the diagnostic handler C API (details)
  111. [mac/arm] make clang/test/Driver/clang_f_opts.c pass consistently (details)
  112. [SelectionDAG][ARM][AArch64][Hexagon][RISCV][X86] Add SDNPCommutative to fma and fmad nodes in tablegen. Remove explicit commuted patterns from targets. (details)
  113. [mlir][Linalg] Fuse sequence of Linalg operation (on buffers) (details)
  114. [mac/arm] fix clang/test/Driver/darwin-ld-dedup.c (details)
  115. [mlir][Linalg] NFC: Expose some utility functions used for promotion. (details)
  116. [AArch64] Add scatter cost model tests. (details)
  117. [NFC] remove print statement I accidentally added. (details)
  118. [AArch64] Update clang CodeGen tests I missed in 4252f7773a5b98b825d17e5f77c7d349cb2fb7c7. (details)
  119. [ms] [llvm-ml] Support macro function invocations in expressions (details)
  120. [llvm-elfabi] Emit ELF header and string table sections (details)
  121. [test] Pin tests using -dot-callgraph to legacy PM (details)
  122. [AIX] Support init priority (details)
  123. [CGSCC] Detect devirtualization in more cases (details)
  124. [test] Pin memory-dereferenceable.ll to legacy PM (details)
  125. Port -print-memderefs to NPM (details)
  126. Revert "[llvm-elfabi] Emit ELF header and string table sections" (details)
  127. [ms] [llvm-ml] Support purging macro definitions (details)
  128. [clang-tidy] Fix RenamerClangTidy checks trying to emit a fix that isnt a valid identifier (details)
  129. [llvm-elfabi] Emit ELF header and string table sections (details)
  130. Make check-clang depend on the LLVM split-file utility (details)
  131. [mlir] Add mising dependency (details)
  132. [clang-tidy] Use compiled regex for AllowedRegexp in macro usage check (details)
  133. [lldb/test] Remove flaky `process connect` test. (details)
  134. [NPM] Share pass building options with legacy PM (details)
  135. Reapply "[CodeGen] [WinException] Only produce handler data at the end of the function if needed" (details)
  136. Revert "[CGSCC] Detect devirtualization in more cases" (details)
  137. APINotes: add property models for YAML attributes (details)
  138. [gn build] Port f6b02ecd027 (details)
  139. [InstCombine] propagate 'nsw' on pointer difference of 'inbounds' geps (details)
  140. Use MlirStringRef throughout the C API (details)
  141. [RISCV] Remove unused VM register class (details)
  142. [libcxx] Resolve LWG 2724 protected -> private. (details)
  143. [mlir] Support WsLoopOp in OpenMP to LLVM dialect conversion (details)
  144. [LoopVectorizer] Lower uniform loads as a single load (instead of relying on CSE) (details)
  145. [test] pre-comit test for D91451 (details)
  146. [llvm-symbolizer] Switch to using native symbolizer by default on Windows (details)
  147. [hwasan] Fix tests when vm.overcommit_memory=1. (details)
  148. Revert "[llvm-symbolizer] Switch to using native symbolizer by default on Windows" (details)
  149. [Clang][-fvisibility-from-dllstorageclass] Set DSO Locality from final visibility (details)
  150. Enable support for floating-point division reductions (details)
  151. fix some Wundef warnings in public headers (details)
  152. Fix signed integer overflow bug that's causing test failures with UBSan. (details)
  153. [clangd] Call hierarchy (XRefs layer, incoming calls) (details)
  154. [clangd] Call hierarchy (ClangdServer layer) (details)
  155. [clangd] Call hierarchy (ClangdLSPServer layer) (details)
  156. [clangd] Use WorkScheduler.run() in ClangdServer::resolveTypeHierarchy() (details)
  157. [gn build] Port 3e6e6a2db67 (details)
  158. [lldb] Add platform select to TestProcessConnect.py (details)
  159. [LLDB] Fix typo in RegisterContextPOSIXProcessMonitor_arm64 (details)
  160. [gn build] modify hotfix in 17df195f705cef76a9 to work with all enabled targets (details)
  161. [libunwind] Multiple preprocessor fixes on PowerPC* (details)
  162. [Driver] Enable getOSLibDir() lib32 workaround for SPARC on Linux (details)
  163. [CMake] Unify LLVM_LINKER_IS_GOLD -Wl,--gc-sections setting with GNU ld and LLD (details)
  164. [LoopVec] Reuse a lambda [NFC] (details)
  165. [FunctionAttrs][NPM] Fix handling of convergent (details)
  166. Reland [CGSCC] Detect devirtualization in more cases (details)
  167. [PowerPC] Pre-commit more tests for `select` codegen. NFC. (details)
  168. [GlobalISel][TableGen] Fix seg fault for zero instruction (details)
  169. [AArch64][GlobalISel] Make <2 x p0> of G_SHUFFLE_VECTOR legal. (details)
  170. [AArch64][GlobalISel] Add pre-isel lowering to convert p0 G_DUPs to use s64. (details)
  171. [test] Fix gvn-inline-iteration.ll under NPM (details)
  172. Revert "[DebugInfo] Refactor code for emitting DWARF expressions for FP constants" (details)
  173. [LLD] [COFF] Allow wrapping dllimported functions (details)
  174. [mlir] Make attributes mutable in Python bindings (details)
  175. [llvm-elfabi] Emit ELF .dynsym, .dynamic sections (details)
  176. [mlir] move lib/Bindings/Python/Attributes.td to include/mlir/Bindings/Python (details)
  177. [clangd] Sort results of incomingCalls request by container name (details)
  178. [[lvm-readelf/obj] - Remove `tryGetSectionName` helper. (details)
  179. Add support for branch forms of ALU instructions to Cortex-A57 model (details)
  180. [llvm-readelf/obj] - Improve the error reporting in printStackSize(). (details)
  181. [llvm-readelf/obj] - Refine the implementation of `printGNUVersionSectionProlog` (details)
Commit d4f1a3c6e2c6031eb45ddb51e3f4fbf50bde6ed8 by ezhulenev
[mlir] Add microbenchmark for linalg+async-parallel-for

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D91896
The file was modifiedmlir/lib/ExecutionEngine/AsyncRuntime.cpp
The file was addedmlir/integration_test/Dialect/Async/CPU/microbench-linalg-async-parallel-for.mlir
Commit 13ab072b25b062d9510ebc9a7d0e1d2e619e4a34 by ezhulenev
[mlir] AsynToLLVM: do no use op->getOperands() in conversion patterns

Differential Revision: https://reviews.llvm.org/D91910
The file was modifiedmlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
Commit 42ecf188b5ae1199d5b7405c521a3e72f80e7e94 by joshisameeran17
[flang][openmp] Fix bug in `OmpClause::Hint` clause which was missing to generate inside in OMP.cpp.inc file.

Before this patch "Hint" isn't found inside the generated file.
./bin/llvm-tblgen --gen-directive-gen ../llvm-project/llvm/include/llvm/Frontend/OpenMP/OMP.td -I ../llvm-project/llvm/include/ > OMP.cpp.in

Reviewed By: clementval

Differential Revision: https://reviews.llvm.org/D91909
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
The file was modifiedflang/lib/Parser/openmp-parsers.cpp
Commit f2df67e2a69e15b3e1117d99d076ffcdaeb2304f by ezhulenev
[mlir] Fix async microbench integration test

Differential Revision: https://reviews.llvm.org/D91912
The file was modifiedmlir/integration_test/Dialect/Async/CPU/microbench-linalg-async-parallel-for.mlir
Commit 9930d4dff31a130890f21a64f43d530a83ae3d0a by faisalv
[NFC, Refactor] Modernize enum FunctionDefinitionKind (DeclSpech.h) into a scoped enum

Reviewed by aaron.ballman, rsmith, wchilders
Highlights of review:
- avoid specifying an underlying type (unless such an enum is stored (or part of an abi?))
- avoid using enums as bit-fields, preferring unsigned bit-fields that we static_cast enumerators to. (MS's abi laysout enum bit-fields differently).
- clang-format, clang-format, clang-format.

https://reviews.llvm.org/D91035

Thank you!
The file was modifiedclang/lib/Parse/ParseCXXInlineMethods.cpp
The file was modifiedclang/lib/Parse/Parser.cpp
The file was modifiedclang/lib/Parse/ParseDeclCXX.cpp
The file was modifiedclang/lib/Parse/ParseExpr.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/include/clang/Sema/DeclSpec.h
Commit 9b7b8de6d12ff2e0bb7aa813f83a8053d302bc2b by paul
[TableGen] [ISel Matcher Emitter] Rework with two passes: one to size, one to emit

Differential Revision: https://reviews.llvm.org/D91632
The file was modifiedllvm/utils/TableGen/DAGISelMatcherEmitter.cpp
The file was modifiedllvm/utils/TableGen/DAGISelMatcher.h
Commit 8aea95f3cb4ef72cc9146ca5a01af15f036acd19 by mgorny
[lldb] Reland "Use translated full ftag values"

Translate between abridged and full ftag values in order to expose
the latter in the gdb-remote protocol while the former are used by
FXSAVE/XSAVE...  This matches the gdb behavior.

The Shell/Register tests now rely on the new behavior, and therefore
are run on non-Darwin systems only.  The Python (API) test relies
on the legacy behavior, and is run on Darwin only.

Differential Revision: https://reviews.llvm.org/D91504
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterContext_x86.h
The file was modifiedlldb/test/Shell/Register/x86-64-fp-read.test
The file was modifiedlldb/test/API/commands/register/register/register_command/TestRegisters.py
The file was modifiedlldb/test/Shell/Register/x86-64-fp-write.test
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/CMakeLists.txt
The file was modifiedlldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp
The file was modifiedlldb/unittests/Process/Utility/CMakeLists.txt
The file was modifiedlldb/test/Shell/Register/x86-fp-read.test
The file was addedlldb/unittests/Process/Utility/RegisterContextTest.cpp
The file was addedlldb/source/Plugins/Process/Utility/RegisterContext_x86.cpp
The file was modifiedlldb/test/Shell/Register/x86-fp-write.test
Commit 072ddff3f20787fd82ed8ee7f019db5f594b8a08 by nikita.ppv
[BasicAA] Add recphi test with dynamic offset (NFC)

Currently, we don't recognize that %a an %p don't alias.
The file was modifiedllvm/test/Analysis/BasicAA/recphi.ll
Commit 1df8fa78e652d112c83d21096e5f2750f70f5b66 by joshisameeran17
[Flang][OpenMP][NFC][2/2] Reorder OmpStructureChecker and simplify it.

`OmpStructureChecker` has too much boilerplate code in source file.

This patch:
  1. Use helpers from `check-directive-structure.h` and reduces the boilerplate.
  2. Use TableGen infrastructure as much as possible.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D90834
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was modifiedflang/test/Semantics/omp-device-constructs.f90
The file was modifiedflang/test/Semantics/omp-combined-constructs.f90
The file was modifiedflang/test/Semantics/omp-clause-validity01.f90
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMP.td
Commit 63626a1995847f9d8fdb652eef9cf240db44003f by llvm-dev
[X86] Regenerate vector-reduce-or-cmp.ll

Fix AVX512 prefixes to appease update_llc_test_checks.py
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-or-cmp.ll
Commit 7650d655050b614791ea386837fd80b324fdf286 by llvm-dev
DominanceFrontier - remove unused <vector> includes
The file was modifiedllvm/include/llvm/Analysis/DominanceFrontier.h
The file was modifiedllvm/include/llvm/CodeGen/MachineDominanceFrontier.h
Commit 5318f6c427c78c5737745acb18cae45b623cc067 by llvm-dev
MachineDominators.h - remove unused <vector> include
The file was modifiedllvm/include/llvm/CodeGen/MachineDominators.h
Commit 4629afa101d48bf347dfdd9d08796faeb489cd5f by i
[X86] Include %rip for 32-bit RIP-relative relocs for x32

%rip was only included for 64-bit RIP-relative relocations, but needs to be included for 32-bit as well.

Reviewed By: MaskRay, RKSimon

Differential Revision: https://reviews.llvm.org/D91339
The file was modifiedllvm/lib/Target/X86/X86FastISel.cpp
The file was modifiedllvm/test/CodeGen/X86/pic.ll
Commit 913a99c47439740531e03cc7d08fc04448c0752c by nikita.ppv
[BasicAA] Remove stale FIXME (NFC)

If aliasGEP returns MayAlias, the code does fall through to
aliasPHI etc, so this FIXME is no longer applicable.
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
Commit aa179d80990921486ec3e4f97d53522a4bb6cfad by clementval
[flang][openmp] Separate memory-order-clause parser creating OmpClause node

This patch introduce the separate parser for the memory-order-clause from the general
OmpClauseList. This parser still creates OmpClause node and therefore can use all the feature
from TableGen and the OmpStructureChecker.
This is applied only for the Flush construct in this patch and it should be applied for
atomic as well.

This is the approach we disscussed several time during the weekly call.

Reviewed By: kiranchandramohan, sameeranjoshi

Differential Revision: https://reviews.llvm.org/D91839
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was modifiedflang/lib/Lower/OpenMP.cpp
The file was modifiedflang/test/Semantics/omp-clause-validity01.f90
The file was modifiedflang/include/flang/Parser/parse-tree.h
The file was modifiedflang/lib/Parser/unparse.cpp
The file was modifiedflang/include/flang/Parser/dump-parse-tree.h
The file was modifiedflang/lib/Parser/openmp-parsers.cpp
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
Commit 952c9d3a91de351356336c4f84ff1a4d4090cc7b by clementval
[NFC] Fix typo in atomic
The file was modifiedflang/lib/Parser/openmp-parsers.cpp
Commit f4412c5ae4eee0421801c9db905428bae1f7658b by nikita.ppv
[BasicAA] Remove some intermediate variables (NFC)

Use DecompGEP1.Offset instead of GEP1BaseOffset, etc. I found the
asymmetry of modifying DecompGEP1.VarIndices, but not modifying
DecompGEP1.Offset odd here.
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
Commit 0d114f56d709792cc4230775c7da8a623d3a409a by nikita.ppv
[BasicAA] Return DecomposedGEP (NFC)

Instead of requiring the caller to initialize the DecomposedGEP
structure and then passing it in by reference, make
DecomposeGEPExpression() responsible for initializing and returning
the structure.
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
The file was modifiedllvm/include/llvm/Analysis/BasicAliasAnalysis.h
Commit 33fb9679ec6e288bc72f2aa19c8ef1576b4c66b9 by martin
[compiler-rt] [profile] Silence a warning about an unused function on mingw targets

This function is only used within the ifdef below.

Differential Revision: https://reviews.llvm.org/D91850
The file was modifiedcompiler-rt/lib/profile/InstrProfilingFile.c
Commit ded5928866254ea08569aed946dd2a879464da48 by nikita.ppv
[BasicAA] Remove unnecessary sextOrSelf (NFC)

We are doing a sextOrTrunc directly afterwards, so this seems
useless. There is a multiplication in between, but truncating
before or after the multiplication should not make a difference.
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
Commit 3324fd8a7b1ab011513017ed8fd81e06928526d5 by i
[libunwind] Delete unused handlerNotFound in unwind_phase1
The file was modifiedlibunwind/src/UnwindLevel1.c
Commit dcc06597b1d61d35c7246d3ab2d7a807134aaa45 by michael.hliao
Fix shared build.
The file was modifiedllvm/tools/llvm-profgen/CMakeLists.txt
Commit def7cfb7ffd40691f903287a060f4405bab56d1a by kazu
[InstCombine] Use is_contained (NFC)
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Commit 914f6c4ff8a42d384cad0bbb07de4dd1a96c78d4 by haowei
[StaticAnalyzer] Support struct annotations in FuchsiaHandleChecker

Support adding handle annotations to sturucture that contains
handles. All the handles referenced by the structure (direct
value or ptr) would be treated as containing the
release/use/acquire annotations directly.

Patch by Yu Shan

Differential Revision: https://reviews.llvm.org/D91223
The file was modifiedclang/lib/StaticAnalyzer/Checkers/FuchsiaHandleChecker.cpp
The file was modifiedclang/test/Analysis/fuchsia_handle.cpp
Commit 1756d67934bb5fe3b12bdb5fa55d61f61bd70bc5 by i
[llvm][clang][mlir] Add checks for the return values from Target::createXXX to prevent protential null deref

All these potential null pointer dereferences are reported by my static analyzer for null smart pointer dereferences, which has a different implementation from `alpha.cplusplus.SmartPtr`.

The checked pointers in this patch are initialized by Target::createXXX functions. When the creator function pointer is not correctly set, a null pointer will be returned, or the creator function may originally return a null pointer.

Some of them may not make sense as they may be checked before entering the function, but I fixed them all in this patch. I submit this fix because 1) similar checks are found in some other places in the LLVM codebase for the same return value of the function; and, 2) some of the pointers are dereferenced before they are checked, which may definitely trigger a null pointer dereference if the return value is nullptr.

Reviewed By: tejohnson, MaskRay, jpienaar

Differential Revision: https://reviews.llvm.org/D91410
The file was modifiedllvm/tools/llvm-ml/llvm-ml.cpp
The file was modifiedllvm/lib/LTO/LTOCodeGenerator.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/LLVMTargetMachine.cpp
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
The file was modifiedllvm/lib/LTO/ThinLTOCodeGenerator.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
The file was modifiedclang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
The file was modifiedllvm/tools/llvm-exegesis/llvm-exegesis.cpp
The file was modifiedllvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/LlvmState.cpp
The file was modifiedllvm/tools/llvm-mc/llvm-mc.cpp
The file was modifiedmlir/lib/ExecutionEngine/ExecutionEngine.cpp
The file was modifiedllvm/tools/llvm-mca/llvm-mca.cpp
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
The file was modifiedclang/tools/driver/cc1as_main.cpp
The file was modifiedllvm/lib/LTO/LTOModule.cpp
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertKernelFuncToBlob.cpp
The file was modifiedllvm/lib/CodeGen/ParallelCG.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
Commit 2482648a795afbe12774168bbbf70dc14c031267 by mtrofin
thinlto_embed_bitcode.ll: clarify grep should treat input as text

The input to the test's use of grep should be treated as text, and
that's not the case on certain Linux distros. Added --text.
The file was modifiedclang/test/CodeGen/thinlto_embed_bitcode.ll
Commit c2309ff3d50c27cea4b338affb6fd6168c792f0e by kazu
[SelectionDAG] Remove unused declaration ExpandStrictFPOp (NFC)

ExpandStrictFPOp started taking two parameters instead of one on Jan
10, 2020 in commit f678fc7660b36ce0ad6ce4f05eaa28f3e9fdedb5, but the
declaration for the single-perameter version has remained since.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
Commit 9d985082ad0bcb34dd1b9b146abe73907a7cf72b by kazu
[MachineLICM] Remove unused declaration HoistRegion

The function definition was removed on Dec 22, 2011 in commit
in 1eed5b51e87758affdbc10627b4a0884ab86606f.
The file was modifiedllvm/lib/CodeGen/MachineLICM.cpp
Commit 3ee08e38194ac05e42f8c5a633dc1aa8e41139f4 by yhegde
Add Semantic check for Flang OpenMP 4.5 - 2.15.3.2 and 2.15.3.3 shared and private clause

Semantic check to restrict the appearance of a variable that is part of another variable
(as an array or structure element) in a PRIVATE or SHARED clause.

Test Cases:

omp-parallel-private01.f90
omp-parallel-private02.f90
omp-parallel-private03.f90
omp-parallel-private04.f90
omp-parallel-shared01.f90
omp-parallel-shared02.f90
omp-parallel-shared03.f90
omp-parallel-shared04.f90

Reviewed by: Kiran Chandramohan @kiranchandramohan , Valentin Clement @clementval

Differential Revision: https://reviews.llvm.org/D89395
The file was addedflang/test/Semantics/omp-parallel-shared03.f90
The file was addedflang/test/Semantics/omp-parallel-shared01.f90
The file was addedflang/test/Semantics/omp-parallel-private02.f90
The file was addedflang/test/Semantics/omp-parallel-shared04.f90
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
The file was addedflang/test/Semantics/omp-parallel-private04.f90
The file was addedflang/test/Semantics/omp-parallel-private03.f90
The file was addedflang/test/Semantics/omp-parallel-shared02.f90
The file was modifiedflang/lib/Semantics/check-omp-structure.h
The file was addedflang/test/Semantics/omp-parallel-private01.f90
Commit 68403af007fa1ecd67e0c96d94eb9253b76c759d by kazu
[MBP] Remove unused declaration shouldPredBlockBeOutlined (NFC)

The function was introduced on Jun 12, 2016 in commit
071d0f180794f7819c44026815614ce8fa00a3bd.  Its definition was removed
on Mar 2, 2017 in commit 1393761e0ca3fe8271245762f78daf4d5208cd77.
The file was modifiedllvm/lib/CodeGen/MachineBlockPlacement.cpp
Commit 1c0941e1524f499e3fbde48fc3bdd0e70fc8f2e4 by esme.yi
[PowerPC] Extend folding RLWINM + RLWINM to post-RA.

Summary: We have the patterns to fold 2 RLWINMs before RA, while some RLWINM will be generated after RA, for example rGc4690b007743. If the RLWINM generated after RA followed by another RLWINM, we expect to perform the optimization too.

Reviewed By: shchenz

Differential Revision: https://reviews.llvm.org/D89855
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.h
The file was modifiedllvm/test/CodeGen/PowerPC/vsx_builtins.ll
The file was addedllvm/test/CodeGen/PowerPC/fold-rlwinm-after-ra.mir
The file was modifiedllvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCMIPeephole.cpp
Commit 84b8222705c32c15818a9093b8217027f129f218 by craig.topper
[RISCV] Use separate Lo and Hi MemOperands when expanding BuildPairF64Pseudo and SplitF64Pseudo.

We generate two 4 byte loads or two stores as part of the expansion.
Previously the MemOperand was set the same for both to cover the
full 8 bytes. Now we set a separate 4 byte mem operand for each
with a 4 byte offset for the high part.
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
Commit 20b69af7c9c8bd9a621b05203f944bf94a3a4c26 by n.james93
[clangd] Add clang-tidy options to config

First step of implementing clang-tidy configuration into clangd config.
This is just adding support for reading and verifying the clang tidy options from the config fragments.
No support is added for actually using the options within clang-tidy yet.

That will be added in a follow up as its a little more involved.

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D90531
The file was modifiedclang-tools-extra/clangd/ConfigCompile.cpp
The file was modifiedclang-tools-extra/clangd/ConfigYAML.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
The file was modifiedclang-tools-extra/clangd/ConfigFragment.h
The file was modifiedclang-tools-extra/clangd/Config.h
The file was modifiedclang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
Commit 24d6e60488a2f447df27a4f67a960925deceeb6b by llvm-dev
[Analysis] Remove unused system header includes

Cleanup unused system headers and fix an implicit dependency
The file was modifiedllvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
The file was modifiedllvm/lib/Analysis/DivergenceAnalysis.cpp
Commit 82c22f124816d1f260dc8f0626d56b459d1358b8 by n.james93
[clangd] Fix compile error after 20b69af7

Some of the buildbots were failing due to what seems to be them using a non c++14 compilant std::string implementation.
Since c++14 std::basic_string::append(const basic_string, size_t, size_t) has a defaulted 3rd paramater, but some of the build bots were reporting that it wasn't defaulted in their implementation.
The file was modifiedclang-tools-extra/clangd/ConfigCompile.cpp
Commit 791040cd8b37414e86757577f480ba3c0a0884f6 by llvm-dev
[DAG] LowerMINMAX - move default expansion to generic TargetLowering::expandIntMINMAX

This is part of the discussion on D91876 about trying to reduce custom lowering of MIN/MAX ops on older SSE targets - if we can improve generic vector expansion we should be able to relax the limitations in SelectionDAGBuilder when it will let MIN/MAX ops be generated, and avoid having to flag so many ops as 'custom'.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
Commit 29dffb0c8a5dbe8bdcc1abe38aafb3f5ea7d57f4 by yhegde
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 ordered and collapse clause

Semantic check added to check and restrict the value of the parameter in the COLLAPSE or ORDERED clause
if it is larger than the number of nested loops following the construct.

Test Cases:
omp-do-collapse-positivecases.f90
omp-do-collapse.f90
omp-do-ordered-positivecases.f90
omp-do-ordered.f90

Reviewed by: Kiran Chandramohan @kiranchandramohan , Valentin Clement @clementval

Differential Revision: https://reviews.llvm.org/D89860
The file was addedflang/test/Semantics/omp-do-collapse-positivecases.f90
The file was addedflang/test/Semantics/omp-do-collapse.f90
The file was modifiedflang/lib/Semantics/resolve-directives.cpp
The file was addedflang/test/Semantics/omp-do-ordered.f90
The file was addedflang/test/Semantics/omp-do-ordered-positivecases.f90
Commit 3b625060fc91598d28196e559196bfc7b9a929f9 by marek
[libc++] [libc++abi] Use C++20 standard.

This change is needed to use char8_t when building libc++.
Using the same standard in libc++abi for coherence.

See https://reviews.llvm.org/D91517.

Reviewed By: ldionne, #libc, #libc_abi

Differential Revision: https://reviews.llvm.org/D91691
The file was modifiedlibcxxabi/src/CMakeLists.txt
The file was modifiedlibcxx/CMakeLists.txt
Commit 221c2b8862b1e507a6e79ca2731c2f839a2fd482 by nikita.ppv
[BasicAA] Add more phi-phi tests (NFC)

Test a few more variations:
* NoAlias with different strides
* MustAlias without loop
* MustAlias with same stride
* MustAlias base pointers with different stride
The file was modifiedllvm/test/Analysis/BasicAA/phi-speculation.ll
Commit c5a4d80fd47cfdae1995df46d0c407f78d8666e8 by spatel
[ValueTracking][MemCpyOpt] avoid crash on inttoptr with vector pointer type (PR48075)
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/MemCpyOpt/crash.ll
Commit 3a18f267236351873a4c7821735c70b0790e4919 by spatel
[CostModel] add tests for FP maximum; NFC

These min/max intrinsics are not handled in the basic
implementation and probably not handled in target-specific
overrides either.
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
The file was modifiedllvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
Commit 2717252c929be7b1f14c36dda9686a4aa8726de3 by spatel
[CostModel] add basic handling for FP maximum/minimum intrinsics

This might be a regression for some ARM targets, but that should
be changed in the target-specific overrides.

There is apparently still no default lowering for these nodes,
so I am assuming these intrinsics are not in common use.
X86, PowerPC, and RISC-V for example, just crash given the most
basic IR.
The file was modifiedllvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h
Commit 6f5ef648a57aed3274118dcbd6467e8ac4f6ed1f by nikita.ppv
[BasicAA] Avoid unnecessary cache update (NFC)

If the final recursive query returns MayAlias as well, there is
no need to update the cache (which already stores MayAlias).
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp
Commit 825f80e111f2815a009084f65267be3b5bf0897a by aaronpuchert
[Sema] Introduce function reference conversion, NFC

Technically 'noexcept' isn't a qualifier, so this should be a separate conversion.

Also make the test a pure frontend test.

Reviewed By: rsmith

Differential Revision: https://reviews.llvm.org/D67112
The file was modifiedclang/include/clang/Sema/Initialization.h
The file was addedclang/test/CXX/dcl.decl/dcl.init/dcl.init.ref/p4-ast.cpp
The file was modifiedclang/include/clang/AST/OperationKinds.def
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was removedclang/test/CodeGenCXX/implicit-function-conversion.cpp
Commit 1a009296a4e9a50e85908f9141c3c1ea860d73e4 by aaronpuchert
Build reproducible tarballs for releases

Currently the tarballs contain superfluous metadata, like the user name
of the packager and via Pax headers even the PID of the tar process that
packaged the files. We build the monorepo projects directly from the git
repo using "git archive" and for the test-suite we add some flags as
recommended by https://reproducible-builds.org/docs/archives/. We don't
use numeric owners though to be compatible with "git archive".

The advantage of "git archive" is that the releaser doesn't have to
download the tar ball and extract it, rather the archive is built
directly from the repository. This is probably what GitHub uses
internally to produce the tarballs, so I wouldn't expect a difference.

Reviewed By: tstellar

Differential Revision: https://reviews.llvm.org/D91494
The file was modifiedllvm/utils/release/export.sh
Commit 359e2f988dc560d519c91d3ee96a2ea99983f5d4 by kadircet
[clangd] Introduce config parsing for External blocks

Enable configuration of remote and static indexes through config files
in addition to command line arguments.

Differential Revision: https://reviews.llvm.org/D90748
The file was modifiedclang-tools-extra/clangd/ConfigFragment.h
The file was modifiedclang-tools-extra/clangd/ConfigYAML.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
Commit c9776c8d4ef7c1d69b6d74b81627c4028396e7c1 by kadircet
[clangd] Introduce config compilation for External blocks

Compilation logic for External blocks. A few of the high level points:
- Requires exactly one-of File/Server at a time:
  - Server is ignored in case of both, with a warning.
  - Having none is an error, would render ExternalBlock void.
- Ensures mountpoint is an absolute path:
  - Interprets it as relative to FragmentDirectory.
  - Defaults to FragmentDirectory when empty.
- Marks Background as Skip.

Depends on D90748.

Differential Revision: https://reviews.llvm.org/D90749
The file was modifiedclang-tools-extra/clangd/ConfigCompile.cpp
The file was modifiedclang-tools-extra/clangd/Config.h
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
Commit 067ffbfe60180aa7b1fdd87b2b6e8ccc67a43a76 by kadircet
[clangd] Introduce ProjectAwareIndex

An index implementation that can dispatch to a variety of indexes
depending on the file path. Enables clangd to work with multiple indexes in the
same instance, configured via config files.

Depends on D90749, D90746

Differential Revision: https://reviews.llvm.org/D90750
The file was modifiedclang-tools-extra/clangd/Config.h
The file was addedclang-tools-extra/clangd/index/ProjectAware.h
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
The file was addedclang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
The file was addedclang-tools-extra/clangd/index/ProjectAware.cpp
Commit cab313680703097f5f4642b348c43018f55a5a4f by kadircet
[clangd] Use ProjectAwareIndex in ClangdMain

Put project-aware-index between command-line specified static index and
ClangdServer indexes.

This also moves remote-index dependency from clangDaemon to ClangdMain
in an attempt to prevent cyclic dependency between clangDaemon and
remote-index-marshalling.

Differential Revision: https://reviews.llvm.org/D91860
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
The file was modifiedclang-tools-extra/clangd/index/ProjectAware.cpp
The file was modifiedclang-tools-extra/clangd/index/ProjectAware.h
Commit 655360096f27f25a0e2f71729c1c879f1fd8d8a2 by kadircet
[clangd] Fix use-after-free in ProjectAwareIndex tests
The file was modifiedclang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
Commit f4f8a67aaf13bc66a2b7d55561b14a3724a5e0de by stellaraccident
[mlir][Python] Support finding pybind11 from the python environment.

* Makes `pip install pybind11` do the right thing with no further config.
* Since we now require a version of pybind11 greater than many LTS OS installs (>=2.6), a more convenient way to get a recent version is preferable.
* Also adds the version spec to find_package so it will skip older versions that may be lying around.
* Tested the full matrix of old system install, no system install, pip install and no pip install.

Differential Revision: https://reviews.llvm.org/D91903
The file was modifiedmlir/docs/Bindings/Python.md
The file was modifiedmlir/CMakeLists.txt
The file was addedmlir/cmake/modules/MLIRDetectPythonEnv.cmake
Commit 6a9d05a0a2e9c52799df60409a86fdb1b7ee6b9c by thakis
[gn build] sort of merge 37ac559fccd4

It'd be nicer if there was a group target that forwarded either to
//clang-tools-extra/clangd/index/remote or
//clangd/index/remote/unimplemented based on if remote index is enabled,
but for now it's never enabled in the gn build.
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/tool/BUILD.gn
Commit 8c5d751b723a52c124fc49ee30bf4a0cbe01d835 by llvmgnsyncbot
[gn build] Port 067ffbfe601
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
Commit f3339b9f988cb86e32179982266cccf8962f7e45 by david.green
[ARM] MVE VABD tests. NFC
The file was addedllvm/test/CodeGen/Thumb2/mve-vabdus.ll
Commit 191117cec5cdffb46fc3b889bd0627b77b798864 by thakis
[gn build] (manually) port ed424b428
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/index/remote/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/index/remote/unimplemented/BUILD.gn
Commit c8c3a411c50f541ce5362bd60ee3f8fe43ac2722 by david.green
[ARM] Ensure MVE_TwoOpPattern is used inside Predicate's
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
Commit 15a3ae1ab1a64cc62041c32ba54914a9dd7b8361 by zequanwu
[Clang] Add __STDCPP_THREADS__ to standard predefine macros

According to https://eel.is/c++draft/cpp.predefined#2.6, `__STDCPP_THREADS__` is a predefined macro.

Differential Revision: https://reviews.llvm.org/D91747
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/test/Preprocessor/init-aarch64.c
The file was modifiedclang/include/clang/Basic/LangOptions.h
The file was modifiedclang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
The file was addedclang/test/CXX/cpp/cpp.predefined/p2.cpp
Commit 95956c1c9aae7ea21c2b2f7a21e0901d549bd190 by john.demme
[MLIR] ODS typedef gen fixes & improvements

- Fixes bug 48242 point 3 crash.
- Makes the improvments from points 1 & 2.

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

```
   def RTLValueType : Type<CPred<"isRTLValueType($_self)">, "Type"> {
     string cppType = "::mlir::Type";
   }
```
Works now, but merely by happenstance. Parameters expects a `TypeParameter` class def or a string representing a c++ type but doesn't enforce it.

Reviewed By: lattner

Differential Revision: https://reviews.llvm.org/D91939
The file was modifiedmlir/lib/TableGen/TypeDef.cpp
The file was modifiedmlir/tools/mlir-tblgen/TypeDefGen.cpp
The file was modifiedmlir/test/mlir-tblgen/typedefs.td
Commit 186d129320c85dd3b1a108acf96046d811a6f8cf by kazu
[hwasan] Remove unused declaration shadowBase (NFC)

The function was introduced on Jan 23, 2019 in commit
73078ecd381b5ce95638c7a8e41fcabb6c27703a.

Its definition was removed on Oct 27, 2020 in commit
0930763b4baf926a39dd2d0571fd9e2102ec3831, leaving the declaration
unused.
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
Commit df73b8c174820557608bf364dcf4dfb2bdc1811e by kazu
[ValueMapper] Remove unused declaration remapFunction (NFC)

The function declaration with two parameters was introduced on Apr 16
2016 in commit f0d73f95c15f909c6034f1735632695248bb75a8 without a
corresponding definition.
The file was modifiedllvm/lib/Transforms/Utils/ValueMapper.cpp
Commit 85d6af393c6e9ff8437e567dbf9e40d2026b7bc8 by kazu
[CodeGen] Use pred_empty (NFC)
The file was modifiedllvm/lib/CodeGen/WasmEHPrepare.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit 47e31d1b5eac6a7b69a50404ecdc35daf18c01f9 by mkazantsev
[NFC] Reduce code duplication in binop processing in computeExitLimitFromCondCached

Handling of `and` and `or` vastly uses copy-paste. Factored out into
a helper function as preparation step for further fix (see PR48225).

Differential Revision: https://reviews.llvm.org/D91864
Reviewed By: nikic
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
Commit 2584e1e324c97eeeacc1e421e5f3191a708c3d2d by grimar
[llvm-readobj] - Don't crash when relocation table goes past the EOF.

It is possible to trigger reading past the EOF by breaking fields like
DT_PLTRELSZ, DT_RELSZ or DT_RELASZ

This patch adds a validation in `DynRegionInfo` helper class.

Differential revision: https://reviews.llvm.org/D91787
The file was modifiedllvm/test/tools/llvm-readobj/ELF/broken-dynamic-reloc.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit de212de22edc5ce9786c1814c829fefcd94ab564 by marek
[libc++] [www] Mark P0482 as "In Progress", as some parts of it are already implemented.
The file was modifiedlibcxx/www/cxx2a_status.html
Commit 0dc2589d4a72474f3956d4472ad25a1085dda260 by kadircet
[clangd] Attempt at fixing ExternalIndex tests on windows
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
Commit 7b7c372e3fcadfd5ee6ab3fb68d9f0f1c25e0247 by mgorny
[lldb] [Process/FreeBSD] Add missing 'override' kws to POSIXStopInfo

Differential Revision: https://reviews.llvm.org/D91934
The file was modifiedlldb/source/Plugins/Process/FreeBSD/POSIXStopInfo.h
Commit 8f2f9a82e2cc333d36ddd1b6bb0523623e065cdc by mgorny
[lldb] [Process/Utility] Declare register overlaps between ST and MM

Explicitly declare register overlaps/invalidation between ST(i) and MMi
registers.

Differential Revision: https://reviews.llvm.org/D91728
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp
The file was modifiedlldb/source/Plugins/Process/Utility/RegisterInfos_i386.h
Commit 9367b57dadb7a8515fa454cb4bb8e4cc45bf57d2 by mgorny
[lldb] [test] Fix qRegisterInfo lldb-server tests to handle missing registers

Fix qRegisterInfo tests to handle Exx error response when querying
registers that are not supported on the platform in question.  This
is how FreeBSD and NetBSD platforms reporting missing registers right
now, and there certainly is value from verifying the remaining
registers.

This change fixes the test for FreeBSD but NetBSD has other regressions
that still need to be researched.

Differential Revision: https://reviews.llvm.org/D91922
The file was modifiedlldb/test/API/tools/lldb-server/TestLldbGdbServer.py
Commit 8018e7b447dacb37a520fe989ab42c0586730961 by mgorny
[lldb] [Process/FreeBSDRemote] Fix regset names and related tests

Restore Linux-alike regset names for AVX/MPX registers
as TestLldbGdbServer seems to depend on them.  At the same time, fix
TestRegisters to be aware that they are not available on FreeBSD
and NetBSD, at least until we figure out a better way of reporting
unsupported register sets.

Differential Revision: https://reviews.llvm.org/D91923
The file was modifiedlldb/test/API/commands/register/register/register_command/TestRegisters.py
The file was modifiedlldb/test/API/tools/lldb-server/TestLldbGdbServer.py
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp
Commit 66ace4dc0275c8d7740bc5ff57c20e85e6660371 by hokein.wu
[clang-tidy] Fix a nullptr-access crash in unused-raii-check.

I saw this crash in our internal production, but unfortunately didn't get
reproduced testcase, we likely hit this crash when the AST is ill-formed
(e.g. broken code).

Reviewed By: gribozavr2

Differential Revision: https://reviews.llvm.org/D91614
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
Commit 18e4272a4fe4667a44f4d323140645a83ddfd864 by mgorny
[lldb] Prevent 'process connect' from using local-only plugins

Add a 'can_connect' parameter to Process plugin initialization, and use
it to filter plugins to these capable of remote connections.  This is
used to prevent 'process connect' from picking up a plugin that can only
be used locally, e.g. the legacy FreeBSD plugin.

Differential Revision: https://reviews.llvm.org/D91810
The file was modifiedlldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
The file was modifiedlldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
The file was modifiedlldb/source/Target/ProcessTrace.cpp
The file was modifiedlldb/source/Target/Target.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp
The file was modifiedlldb/include/lldb/lldb-private-interfaces.h
The file was modifiedlldb/source/Plugins/Process/mach-core/ProcessMachCore.h
The file was modifiedlldb/source/Target/Process.cpp
The file was modifiedlldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
The file was modifiedlldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.h
The file was modifiedlldb/source/Plugins/Process/elf-core/ProcessElfCore.h
The file was modifiedlldb/source/Target/Platform.cpp
The file was modifiedlldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
The file was modifiedlldb/source/Target/TraceSessionFileParser.cpp
The file was modifiedlldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
The file was modifiedlldb/test/Shell/Commands/command-process-connect.test
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
The file was modifiedlldb/source/Commands/CommandObjectTarget.cpp
The file was modifiedlldb/include/lldb/Target/ProcessTrace.h
The file was modifiedlldb/include/lldb/Target/Target.h
The file was modifiedlldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
The file was modifiedlldb/include/lldb/Target/Process.h
The file was modifiedlldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
The file was modifiedlldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
The file was modifiedlldb/source/API/SBTarget.cpp
The file was modifiedlldb/source/Plugins/Process/minidump/ProcessMinidump.h
The file was modifiedlldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
Commit 33b2c88fa8223dbf15846ce18cc957e33e0d67fc by sjoerd.meijer
[LoopFlatten] Widen IV, support ZExt.

I disabled the widening in fa5cb4b because it run in an assert, which was
related to replacing values with different types. I forgot that an extend could
also be a zero-extend, which I have added now. This means that the approach now
is to create and insert a trunc value of the outerloop for each user, and use
that to replace IV values.

Differential Revision: https://reviews.llvm.org/D91690
The file was modifiedllvm/lib/Transforms/Scalar/LoopFlatten.cpp
The file was modifiedllvm/test/Transforms/LoopFlatten/widen-iv.ll
Commit 6ef7835afca246e623e9990dcd8c71204f5691e5 by pavel
[DebugInfo] Refactor code for emitting DWARF expressions for FP constants

This patch moves the selection of the style used to emit the numbers
(DW_OP_implicit_value vs. DW_OP_const+DW_OP_stack_value) into
DwarfExpression::addUnsignedConstant. This logic is not FP-specific, and
it will be needed for large integers too.

The refactor also makes DW_OP_implicit_value (DW_OP_stack_value worked
already) be used for floating point constants other than float and
double, so I've added a _Float16 test for it.

Split off from D90916.

Differential Revision: https://reviews.llvm.org/D91058
The file was addedllvm/test/DebugInfo/ARM/implicit_value-_Float16.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
Commit fee78fb0049ae2556c99768a06421d7cdbb9d016 by kadircet
[clangd] Second attempt at fixing windows buildbots
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
Commit 4dcdf0df31259c1c02a1f7bbaa7ae45ca6c814dc by grimar
[llvm-readobj] - Stop using `unwrapOrError` in `DumpStyle<ELFT>::getGroups()`

With this we are able to diagnose possible issues much better and
don't exit on an error.

Differential revision: https://reviews.llvm.org/D91867
The file was modifiedllvm/test/tools/llvm-readobj/ELF/groups.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 48d7cc6ae23b0e5b1922457462d0f6e4582a1ae7 by mkazantsev
[SCEV] Fix incorrect treatment of max taken count. PR48225

SCEV makes a logical mistake when handling EitherMayExit in
case when both conditions must be met to exit the loop. The
mistake looks like follows: "if condition `A` fails within at most `X` first
iterations, and `B` fails within at most `Y` first iterations, then `A & B`
fails at most within `min (X, Y)` first iterations". This is wrong, because
both of them must fail at the same time.

Simple example illustrating this is following: we have an IV with step 1,
condition `A` = "IV is even", condition `B` = "IV is odd". Both `A` and `B`
will fail within first two iterations. But it doesn't mean that both of them
will fail within first two first iterations at the same time, which would mean
that IV is neither even nor odd at the same time within first 2 iterations.

We can only do so for known exact BE counts, but not for max.

Differential Revision: https://reviews.llvm.org/D91942
Reviewed By: nikic
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/test/Analysis/ScalarEvolution/pr48225.ll
Commit 76a626b2061bc8a33656a49ebcabbfa75c317d4c by grimar
[llvm-readelf/obj] - Fix the possible crash when dumping group sections.

It is possible to trigger a crash/misbehavior when the st_name field of
the signature symbol goes past the end of the string table.

This patch fixes it.

Differential revision: https://reviews.llvm.org/D91943
The file was modifiedllvm/test/tools/llvm-readobj/ELF/groups.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit b1444edbf41c1fe9f7e676df6e873e9c9318283e by hokein.wu
[AST] Build recovery expression by default for all language.

The dependency mechanism for C has been implemented, and we have rolled out
this to all internal users, didn't see crashy issues, we consider it is stable
enough.

Differential Revision: https://reviews.llvm.org/D89046
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/OpenMP/begin_declare_variant_messages.c
The file was modifiedclang/test/Sema/typo-correction.c
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/test/CodeGen/SystemZ/builtins-systemz-zvector3-error.c
The file was modifiedclang/test/Index/complete-switch.c
The file was modifiedclang/test/Parser/objc-foreach-syntax.m
The file was modifiedclang/test/CodeGen/SystemZ/builtins-systemz-zvector2-error.c
The file was modifiedclang/test/CodeGen/SystemZ/builtins-systemz-zvector-error.c
The file was modifiedclang/test/OpenMP/declare_variant_messages.c
The file was modifiedclang/test/Sema/enum.c
The file was modifiedclang/include/clang/AST/Expr.h
The file was modifiedclang/test/Sema/__try.c
The file was modifiedclang/test/CodeGen/builtins-ppc-error.c
Commit 01c4418544b7934f8216a6616562bbaf34dc6979 by nicolas.vasilache
[mlir][Linalg] NFC - Factor out Linalg functionality for shape and loop bounds computation

This revision refactors code used in various Linalg transformations and makes it a first class citizen to the LinalgStructureOpInterface. This is in preparation to allowing more advanced Linalg behavior but is otherwise NFC.

Differential revision: https://reviews.llvm.org/D91863
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/test/Dialect/Linalg/invalid.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Utils/Utils.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Loops.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit cf39bdb49086350e7178a0a058273907d180e809 by kbobyrev
[clangd] Implement Decl canonicalization rules for rename

This patch introduces new canonicalization rules which are used for AST-based
rename in Clangd. By comparing two canonical declarations of inspected nodes,
Clangd determines whether both of them belong to the same entity user would
like to rename. Such functionality is relatively concise compared to the
Clang-Rename API that is used right now. It also helps to overcome the
limitations that Clang-Rename originally had and helps to eliminate several
classes of bugs.

Clangd AST-based rename currently relies on Clang-Rename which has design
limitations and also lacks some features. This patch breaks this dependency and
significantly reduces the amount of code to maintain (Clang-Rename is ~2000 LOC,
this patch is just <30 LOC of replacement code).

We eliminate technical debt by simultaneously

* Maintaining feature parity and ensuring no regressions
* Opening a straightforward path to improving existing rename bugs
* Making it possible to add more capabilities to rename feature which would not
  be possible with Clang-Rename

Reviewed By: hokein

Differential Revision: https://reviews.llvm.org/D71880
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit 3c696a212ba4328e4f8f92136bc4d728a6490ef7 by joe.ellis
[AArch64][SVE] Allow lax conversion between VLATs and GNU vectors

Previously, lax conversions were only allowed between SVE vector-length
agnostic types and vector-length specific types. This meant that code
such as the following:

    #include <arm_sve.h>
    #define N __ARM_FEATURE_SVE_BITS
    #define FIXED_ATTR __attribute__ ((vector_size (N/8)))
    typedef float fixed_float32_t FIXED_ATTR;

    void foo() {
        fixed_float32_t fs32;
        svfloat64_t s64;
        fs32 = s64;
    }

was not allowed.

This patch makes a minor change to areLaxCompatibleSveTypes to allow for
lax conversions to be performed between SVE vector-length agnostic types
and GNU vectors.

Differential Revision: https://reviews.llvm.org/D91696
The file was modifiedclang/lib/AST/ASTContext.cpp
The file was modifiedclang/test/SemaCXX/aarch64-sve-lax-vector-conversions.cpp
The file was modifiedclang/test/Sema/aarch64-sve-lax-vector-conversions.c
The file was modifiedclang/test/Sema/attr-arm-sve-vector-bits.c
Commit 1319c6624ed6b0a6fb48d975bbf278263a85fcef by kbobyrev
[clangd] Get rid of clangToolingRefactoring dependency

D71880 makes this dependency redundant and we can safely remove it. Tested for
both shared lib build and static lib build.

Reviewed By: hokein

Differential Revision: https://reviews.llvm.org/D91951
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
Commit d3a0f9b9ec88ce0737470652330262f8ed46daa7 by kerry.mclaughlin
[APInt] Add the truncOrSelf resizing operator to APInt

Truncates the APInt if the bit width is greater than the width specified,
otherwise do nothing

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D91445
The file was modifiedllvm/unittests/ADT/APIntTest.cpp
The file was modifiedllvm/lib/Support/APInt.cpp
The file was modifiedllvm/include/llvm/ADT/APInt.h
Commit 8cec8de2a4e6692da6226bb02cf417eb0e50adde by kadircet
[clangd] testPath's final result agrees with the passed in Style

This was confusing, as testRoot on windows results in C:\\clangd-test
and testPath generated with posix explicitly still contained backslashes.

This patch ensures not only the relative part, but the whole final result
respects passed in Style.

Differential Revision: https://reviews.llvm.org/D91947
The file was modifiedclang-tools-extra/clangd/unittests/TestFS.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
Commit 3a302349ebd11279d0c49fbd03c66ed502968f19 by marukawa
[VE][NFC] Clean stack frame description

Move stack frame description from VESubtarget.cpp to VEFrameLowering.cpp
and add detail.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D91946
The file was modifiedllvm/lib/Target/VE/VESubtarget.cpp
The file was modifiedllvm/lib/Target/VE/VEFrameLowering.cpp
Commit 677e94c0f09bf48d92b57a34ba7cf2e0d94016fb by marukawa
[VE] Clean canRealignStack implementation

Old canRealignStack calls TRI::canRealignStack and hasReservedCallFrame.
But, this hasReservedCallFrame return true whenever for VE since VE
allocates call frame all the time.  It means this canRealignStack is
identical to TRI::canRealignStack.  This patch removes VE's
canRealignStack and let caller call TRI::canRealignStack directly.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D91929
The file was modifiedllvm/lib/Target/VE/VERegisterInfo.h
The file was modifiedllvm/lib/Target/VE/VERegisterInfo.cpp
Commit 61e538b15ddb2de9250277d151f0f655c2220d9b by kadircet
Revert "[clangd] testPath's final result agrees with the passed in Style"

This reverts commit 8cec8de2a4e6692da6226bb02cf417eb0e50adde as it
breaks windows buildbots.
The file was modifiedclang-tools-extra/clangd/unittests/TestFS.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
Commit 9ac0b314a431405aa6a681124f83138f7544807e by nicolas.vasilache
[mlir][Linalg] Drop symbol_source abstraction which does not pay for itself.

Differential Revision: https://reviews.llvm.org/D91956
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Loops.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp
The file was modifiedmlir/lib/Dialect/Linalg/EDSC/Builders.cpp
The file was modifiedmlir/test/Dialect/Linalg/loops.mlir
The file was modifiedmlir/test/Dialect/Linalg/invalid.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/Passes.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
Commit e4effef330599edd9faa55de2f47640e7c99e7e3 by dmitry.preobrazhensky
[AMDGPU][MC] Improved diagnostic messages for invalid literals

See bug 47518 (https://bugs.llvm.org/show_bug.cgi?id=47518)

Reviewers: rampitec

Differential Revision: https://reviews.llvm.org/D91793
The file was modifiedllvm/test/MC/AMDGPU/gfx908_err_pos.s
The file was modifiedllvm/test/MC/AMDGPU/gfx9_asm_all.s
The file was modifiedllvm/test/MC/AMDGPU/vop3-literal.s
The file was modifiedllvm/test/MC/AMDGPU/literals.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_err_pos.s
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/test/MC/AMDGPU/gfx9-asm-err.s
The file was modifiedllvm/test/MC/AMDGPU/gfx7_err_pos.s
The file was modifiedllvm/test/MC/AMDGPU/vop2-err.s
The file was modifiedllvm/test/MC/AMDGPU/mai-err.s
The file was modifiedllvm/test/MC/AMDGPU/literalv216-err.s
The file was modifiedllvm/test/MC/AMDGPU/literalv216.s
The file was modifiedllvm/test/MC/AMDGPU/expressions-gfx9.s
The file was modifiedllvm/test/MC/AMDGPU/expressions-gfx10.s
The file was modifiedllvm/test/MC/AMDGPU/gfx8_asm_all.s
The file was modifiedllvm/test/MC/AMDGPU/gfx9_err_pos.s
The file was modifiedllvm/test/MC/AMDGPU/vop3-errs.s
The file was modifiedllvm/test/MC/AMDGPU/vop3-gfx9.s
The file was modifiedllvm/test/MC/AMDGPU/vop3.s
Commit b31486ad971774c859e3e031fc0d8d9b77e3b083 by usx
[clangd] textDocument/implementation (LSP layer)

Differential Revision: https://reviews.llvm.org/D91721
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/test/initialize-params.test
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.h
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was addedclang-tools-extra/clangd/test/implementations.test
Commit 1ec60862d7024118b2db5bcbb280eafcd9193ac5 by zinenko
[mlir] Avoid cloning ops in SCF parallel conversion to CFG

The existing implementation of the conversion from SCF Parallel operation to
SCF "for" loops in order to further convert those loops to branch-based CFG has
been cloning the loop and reduction body operations into the new loop because
ConversionPatternRewriter was missing support for moving blocks while replacing
their arguments. This functionality now available, use it to implement the
conversion and avoid cloning operations, which may lead to doubling of the IR
size during the conversion.

In addition, this fixes an issue with converting nested SCF "if" conditionals
present in "parallel" operations that would cause the conversion infrastructure
to stop because of the repeated application of the pattern converting "newly"
created "if"s (which were in fact just moved). Arguably, this should be fixed
at the infrastructure level and this fix is a workaround.

Reviewed By: herhut

Differential Revision: https://reviews.llvm.org/D91955
The file was modifiedmlir/lib/Conversion/SCFToStandard/SCFToStandard.cpp
The file was modifiedmlir/test/Conversion/SCFToStandard/convert-to-cfg.mlir
Commit 00dad9d028ce31739b992a3ce2df5de054a9fa3c by aaron
Ignore noderef attribute in unevaluated context

The noderef attribute is for catching code that accesses pointers in
a different address space. Unevaluated code is always safe in that regard.
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/Frontend/noderef.cpp
The file was modifiedclang/lib/Sema/SemaExprMember.cpp
The file was modifiedclang/test/Frontend/noderef.c
Commit ce44bf2cf229c179948b97639587c92c3f2e8b19 by dmitry.preobrazhensky
[AMDGPU][MC] Improved diagnostic messages

See bug 47518 (https://bugs.llvm.org/show_bug.cgi?id=47518)

Reviewers: rampitec

Differential Revision: https://reviews.llvm.org/D91794
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/test/MC/AMDGPU/gfx908_err_pos.s
The file was modifiedllvm/test/MC/AMDGPU/gfx10_err_pos.s
The file was modifiedllvm/test/MC/AMDGPU/gfx9_err_pos.s
Commit 2745d9c586d1fea438f5542dfd0718feefd14ad9 by grimar
[llvm-readobj][test] - Simplify the gnu-notes.test

This test contains YAMLs that can be merged with use of macros.
This opens road for adding more test cases.

Differential revision: https://reviews.llvm.org/D91953
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-notes.test
Commit a8f6f4e8733cd601246ddc3e391cd82236231846 by mgorny
[lldb] [test] Restore Windows-skip on 'process connect' tests
The file was modifiedlldb/test/Shell/Commands/command-process-connect.test
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
Commit faf848ac321801ba92b1d3038fccc84988d46ac8 by mikael.holmen
[Inline] Fix in handling of ptrtoint in InlineCost

ConstantOffsetPtrs contains mappings from a Value to a base pointer and
an offset. The offset is typed and has a size, and at least when dealing
with ptrtoint, it could happen that we had a mapping from a ptrtoint
with type i32 to an offset with type i16. This could later cause
problems, showing up in PR 47969 and PR 38500.

In PR 47969 we ended up in an assert complaining that trunc i16 to i16
is invalid and in Pr 38500 that a cmp on an i32 and i16 value isn't
valid.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D90610
The file was modifiedllvm/lib/Analysis/InlineCost.cpp
The file was addedllvm/test/Transforms/Inline/inline-ptrtoint-different-sizes.ll
Commit 31a233d46367636f94c487b51aa2931a1cc9cf79 by zinenko
[mlir] canonicalize away zero-iteration SCF for loops

An SCF 'for' loop does not iterate if its lower bound is equal to its upper
bound. Remove loops where both bounds are the same SSA value as such bounds are
guaranteed to be equal. Similarly, remove 'parallel' loops where at least one
pair of respective lower/upper bounds is specified by the same SSA value.

Reviewed By: gysit

Differential Revision: https://reviews.llvm.org/D91880
The file was modifiedmlir/lib/Dialect/SCF/SCF.cpp
The file was modifiedmlir/test/Dialect/SCF/canonicalize.mlir
Commit 410c150abb20b71895ea75749b1393647c7ec79f by mikael.holmen
[test] Update PR reference in testcase [NFC]

The testcase was added in faf848ac32 to test the fix of PR 47969, but
it was named pr48980 (which happens to be the TR number in my downstream
issue system).
The file was modifiedllvm/test/Transforms/Inline/inline-ptrtoint-different-sizes.ll
Commit 72a9f365e9933d68645f796592932a27d11bbfd0 by steveire
Remove automatic traversal from forEach matcher

Differential Revision: https://reviews.llvm.org/D91916
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchersInternal.h
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersInternalTest.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchFinder.cpp
Commit f052cf494f07a33af5aa7c680cfe0bfcca24beae by steveire
Update mode used in traverse() examples

traverse() predates the IgnoreUnlessSpelledInSource mode. Update example
and test code to use the newer mode.

Differential Revision: https://reviews.llvm.org/D91917
The file was modifiedclang/docs/LibASTMatchersReference.html
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
Commit 5e1801813d93210acae84ff3c68a01512c2df9bc by steveire
Remove the IgnoreImplicitCastsAndParentheses traversal kind

Differential Revision: https://reviews.llvm.org/D91918
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was modifiedclang/include/clang/AST/ASTNodeTraverser.h
The file was modifiedclang-tools-extra/clang-query/QueryParser.cpp
The file was modifiedclang/lib/AST/ParentMapContext.cpp
The file was modifiedclang/include/clang/AST/ASTTypeTraits.h
The file was modifiedclang/docs/ReleaseNotes.rst
Commit 000400ca0aeb32e347eefd110a4ed58ebc23d333 by jay.foad
Fix speling in comments. NFC.
The file was modifiedllvm/lib/Target/AMDGPU/SIDefines.h
The file was modifiedllvm/include/llvm/ADT/DenseMap.h
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Analysis/GlobalsModRef.cpp
Commit 590aaa5077330e97203999f08946cb2c25dd56d1 by marukawa
[VE] Remove magic numbers 176

Remove magic numbers 176 from VE source codes and update comments.

Reviewed By: simoll

Differential Revision: https://reviews.llvm.org/D91958
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
The file was modifiedllvm/lib/Target/VE/VEInstrInfo.cpp
The file was modifiedllvm/lib/Target/VE/VESubtarget.cpp
The file was modifiedllvm/lib/Target/VE/VEFrameLowering.cpp
The file was modifiedllvm/lib/Target/VE/VESubtarget.h
Commit c6b2c17e9c28afec7ec6ea10d78d7705d2ec49ea by pifon
[mlir] Add a print function for memref<*xi64>.

Differential Revision: https://reviews.llvm.org/D91070
The file was modifiedmlir/include/mlir/ExecutionEngine/RunnerUtils.h
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp
Commit 76bd4444e36197465f1c72f4b6f1d59721012a59 by steveire
Fix tests for clang-query completion
The file was modifiedclang-tools-extra/unittests/clang-query/QueryParserTest.cpp
Commit 619630f997f1257deb8a290b9735e2d5b64886b6 by zinenko
[mlir] Temporarily disable flaky mlir-cpu-runner async tests

These tests fail sporadically on irrelevant commits, e.g.
http://lab.llvm.org:8011/#/builders/61/builds/1777 as well as in local
builds.
The file was modifiedmlir/test/mlir-cpu-runner/async-group.mlir
The file was modifiedmlir/test/mlir-cpu-runner/async.mlir
Commit b955c7e63001068f7829827c327dc96ca9a05e8c by simon.moll
[VE] VE Vector Predicated SDNode, vector add isel and tests

VE Vector Predicated (VVP) SDNodes form an intermediate layer between VE
vector instructions and the initial SDNodes.

We introduce 'vvp_add' with isel and tests as the first of these VVP
nodes. VVP nodes have a mask and explicit vector length operand, which
we will make proper use of later.

Reviewed By: kaz7

Differential Revision: https://reviews.llvm.org/D91802
The file was modifiedllvm/lib/Target/VE/VEInstrInfo.td
The file was addedllvm/test/CodeGen/VE/Vector/vec_add.ll
The file was modifiedllvm/lib/Target/VE/VEISelLowering.h
The file was addedllvm/lib/Target/VE/VVPInstrPatternsVec.td
The file was addedllvm/lib/Target/VE/VVPInstrInfo.td
The file was addedllvm/lib/Target/VE/VVPNodes.def
The file was modifiedllvm/lib/Target/VE/VEInstrPatternsVec.td
The file was modifiedllvm/lib/Target/VE/VEISelLowering.cpp
Commit b23e84ffcff8957e095599a6b7fd3f24ecf1f18c by paul
[TableGen] Eliminte source location from CodeInit

Step 1 in eliminating the 'code' type.

Differential Revision: https://reviews.llvm.org/D91932
The file was modifiedllvm/docs/TableGen/BackGuide.rst
The file was modifiedllvm/lib/TableGen/Record.cpp
The file was modifiedllvm/lib/TableGen/TGParser.cpp
The file was modifiedllvm/utils/TableGen/GICombinerEmitter.cpp
The file was modifiedllvm/utils/TableGen/GlobalISel/CodeExpander.cpp
The file was modifiedllvm/unittests/TableGen/CodeExpanderTest.cpp
The file was modifiedllvm/include/llvm/TableGen/Record.h
Commit 3a1c6cec15e32e4aa5593ce624915bda790dadff by flo
[AArch64] Add tests for masked.gather costs.
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/gather-cost.ll
The file was modifiedllvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
Commit 0c5cff300ffa1d5cc55f2b11e4546f18b3389aa6 by unknown
Add userData to the diagnostic handler C API

Previously, there was no way to add context to the diagnostic engine via the C API. Adding this ability makes it much easier to reason about memory ownership, particularly in reference-counted languages such as Swift. There are more details in the review comments.

Reviewed By: ftynse, mehdi_amini

Differential Revision: https://reviews.llvm.org/D91738
The file was modifiedmlir/include/mlir-c/Diagnostics.h
The file was modifiedmlir/test/CAPI/ir.c
The file was modifiedmlir/lib/CAPI/IR/Diagnostics.cpp
Commit e0e334a9c1ace7dd9339ca6cb5866ff7b7885e11 by thakis
[mac/arm] make clang/test/Driver/clang_f_opts.c pass consistently

Part of PR46644, see comment 7/8.
The file was modifiedclang/test/Driver/clang_f_opts.c
Commit 4252f7773a5b98b825d17e5f77c7d349cb2fb7c7 by craig.topper
[SelectionDAG][ARM][AArch64][Hexagon][RISCV][X86] Add SDNPCommutative to fma and fmad nodes in tablegen. Remove explicit commuted patterns from targets.

X86 was already specially marking fma as commutable which allowed
tablegen to autogenerate commuted patterns. This moves it to the target
independent definition and fix up the targets to remove now
unneeded patterns.

Unfortunately, the tests change because the commuted version of
the patterns are generating operands in a different than the
explicit patterns.

Differential Revision: https://reviews.llvm.org/D91842
The file was modifiedllvm/test/CodeGen/Thumb2/mve-intrinsics/ternary.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fma-loops.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrVFP.td
The file was modifiedllvm/test/CodeGen/AArch64/arm64-vmul.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonPatterns.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoD.td
The file was modifiedllvm/lib/Target/X86/X86InstrFragmentsSIMD.td
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/select-pr35926.mir
The file was modifiedllvm/lib/Target/X86/X86InstrFMA.td
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/test/CodeGen/RISCV/double-arith.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-with-no-legality-check.mir
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
The file was modifiedllvm/test/CodeGen/ARM/fp16-fusedMAC.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoF.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/RISCV/float-arith.ll
Commit e65a5e5b00a37700a79e0a9f2fb1c1e60a2584bf by ravishankarm
[mlir][Linalg] Fuse sequence of Linalg operation (on buffers)

Enhance the tile+fuse logic to allow fusing a sequence of operations.

Make sure the value used to obtain tile shape is a
SubViewOp/SubTensorOp. Current logic used to get the bounds of loop
depends on the use of `getOrCreateRange` method on `SubViewOp` and
`SubTensorOp`. Make sure that the value/dim used to compute the range
is from such ops.  This fix is a reasonable WAR, but a btter fix would
be to make `getOrCreateRange` method be a method of `ViewInterface`.

Differential Revision: https://reviews.llvm.org/D90991
The file was addedmlir/test/Dialect/Linalg/fusion-sequence.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/test/lib/Transforms/TestLinalgFusionTransforms.cpp
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was modifiedmlir/test/Dialect/Linalg/fusion-pattern.mlir
Commit 47eb5ce19ab10bcfe00af04e6a6e39613e2cb3c9 by thakis
[mac/arm] fix clang/test/Driver/darwin-ld-dedup.c

The test needs an object file, which it currenty gets with
`-target x86_64-apple-darwin10`.  Rather than adding `REQUIRES: X86`, create
the object file via yaml2obj. This way, the test runs and passes even if the
host arch isn't x86 and only the host arch is built.

Part of PR46644.
The file was addedclang/test/Driver/Inputs/empty-x86_64-apple-darwin.yaml
The file was modifiedllvm/utils/gn/secondary/clang/test/BUILD.gn
The file was modifiedclang/test/Driver/darwin-ld-dedup.c
The file was modifiedclang/test/lit.cfg.py
The file was modifiedclang/test/CMakeLists.txt
Commit 11ea2e2448a5f071a04463f94b7bccfe0a32d264 by ravishankarm
[mlir][Linalg] NFC: Expose some utility functions used for promotion.

Exposing some utility functions from Linalg to allow for promotion of
fused views outside of the core tile+fuse logic.
This is an alternative to patch D91322 which adds the promotion logic
to the tileAndFuse method. Downside with that approach is that it is
not easily customizable based on needs.

Differential Revision: https://reviews.llvm.org/D91503
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
Commit 14c0185bfeb64f714a0b45f1049444442531e09e by flo
[AArch64] Add scatter cost model tests.
The file was modifiedllvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
Commit b4902bcd986ddbda30a210fc320c1fd8657e5b0d by akhuang
[NFC] remove print statement I accidentally added.
The file was modifiedllvm/lib/DebugInfo/PDB/Native/NativeFunctionSymbol.cpp
Commit b3f1b19c9cecd2ac8f8153aa25f8025dbd5702b8 by craig.topper
[AArch64] Update clang CodeGen tests I missed in 4252f7773a5b98b825d17e5f77c7d349cb2fb7c7.

These tests invoke opt and llc even though they are in the frontend.

We now do a better job of generating commuted patterns for fma so
these tests now form fmls instead of fmla+fneg.
The file was modifiedclang/test/CodeGen/aarch64-v8.2a-neon-intrinsics-constrained.c
Commit 454f32e4d572a85693d99bbb61513c63a84a1388 by epastor
[ms] [llvm-ml] Support macro function invocations in expressions

Accept macro function definitions, and apply them when invoked in operand position.

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D89734
The file was modifiedllvm/lib/MC/MCParser/MasmParser.cpp
The file was addedllvm/test/tools/llvm-ml/macro_function.test
Commit 53c5fdd59a5cf7fbb4dcb7a7e84c9c4a40d32a84 by haowei
[llvm-elfabi] Emit ELF header and string table sections

This change serves to create the initial framework for outputting ELF
files from llvm-elfabi.

Differential Revision: https://reviews.llvm.org/D61767
The file was modifiedllvm/lib/InterfaceStub/ELFObjHandler.cpp
The file was addedllvm/test/tools/llvm-elfabi/write-stub.test
The file was modifiedllvm/include/llvm/InterfaceStub/ELFObjHandler.h
The file was addedllvm/test/tools/llvm-elfabi/output-target-error.test
The file was addedllvm/test/tools/llvm-elfabi/fail-file-write.test
The file was modifiedllvm/tools/llvm-elfabi/llvm-elfabi.cpp
The file was addedllvm/test/tools/llvm-elfabi/fail-file-write-windows.test
Commit 9e9d9aba147561f4463d27a9570c99937d53563b by aeubanks
[test] Pin tests using -dot-callgraph to legacy PM

-dot-callgraph is not ported to the NPM yet. It can be ported at a later
time if necessary.

Differential Revision: https://reviews.llvm.org/D91685
The file was modifiedllvm/test/Other/heat-colors-graphs.ll
The file was modifiedllvm/test/Other/heat-colors-multigraph.ll
Commit 01b3e6e026332d66b18a658f31926436669f3bb9 by Xiangling.Liao
[AIX] Support init priority

Support reserved [0-100] and non-reserved[101-65535] Clang/GNU init
priority values on AIX.
This patch maps Clang/GNU values into priority values used in sinit/sterm
functions. User can play with values and be able to get init to occur
before or after XL init and vice versa.

Differential Revision: https://reviews.llvm.org/D91272
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-static-init-non-default-priority.ll
Commit 14a68b4aa9732293ad7e16f105b0feb53dc8dbe2 by aeubanks
[CGSCC] Detect devirtualization in more cases

The devirtualization wrapper misses cases where if it wraps a pass
manager, an individual pass may devirtualize an indirect call created by
a previous pass. For example, inlining may create a new indirect call
which is devirtualized by instcombine. Currently the devirtualization
wrapper will not see that because it only checks cgscc edges at the very
beginning and end of the pass (manager) it wraps.

This fixes some tests testing this exact behavior in the legacy PM.

Instead of checking WeakTrackingVHs for CallBases at the very beginning
and end of the pass it wraps, check every time
updateCGAndAnalysisManagerForPass() is called.

check-llvm and check-clang with -abort-on-max-devirt-iterations-reached
on by default doesn't show any failures outside of tests specifically
testing it so it doesn't needlessly rerun passes more than necessary.
(The NPM -O2/3 pipeline run the inliner/function simplification pipeline
under a devirtualization repeater pass up to 4 times by default).

http://llvm-compile-time-tracker.com/?config=O3&stat=instructions&remote=aeubanks
shows that 7zip has ~1% compile time regression. I looked at it and saw
that there indeed was devirtualization happening that was not previously
caught, so now it reruns the CGSCC pipeline on some SCCs, which is WAI.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D89587
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/test/Transforms/Inline/devirtualize-5.ll
The file was modifiedllvm/include/llvm/Analysis/CGSCCPassManager.h
The file was modifiedllvm/test/Transforms/Inline/devirtualize-3.ll
The file was modifiedllvm/test/Transforms/Inline/devirtualize.ll
The file was addedllvm/test/Transforms/Inline/devirtualize-6.ll
Commit 8eec3959ef38eb30d6d9e89d70a4f3a8ed334a2a by aeubanks
[test] Pin memory-dereferenceable.ll to legacy PM

-print-memderefs is only used for one test and hasn't been touched in a while.
The file was modifiedllvm/test/Analysis/ValueTracking/memory-dereferenceable.ll
Commit 7167e5203acd1602dc174a6a79acee727e5c0b0b by aeubanks
Port -print-memderefs to NPM

There is lots of code duplication, but hopefully it won't matter soon.

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D91683
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Analysis/MemDerefPrinter.cpp
The file was addedllvm/include/llvm/Analysis/MemDerefPrinter.h
The file was modifiedllvm/test/Analysis/ValueTracking/memory-dereferenceable.ll
The file was modifiedllvm/lib/Passes/PassRegistry.def
Commit ae736d295763b05a2047fb64cec821c3d4a63d4d by haowei
Revert "[llvm-elfabi] Emit ELF header and string table sections"

This reverts commit 53c5fdd59a5cf7fbb4dcb7a7e84c9c4a40d32a84.

Reason of revert: Some builders failed to build with ld.
The file was modifiedllvm/tools/llvm-elfabi/llvm-elfabi.cpp
The file was removedllvm/test/tools/llvm-elfabi/fail-file-write-windows.test
The file was removedllvm/test/tools/llvm-elfabi/write-stub.test
The file was removedllvm/test/tools/llvm-elfabi/fail-file-write.test
The file was removedllvm/test/tools/llvm-elfabi/output-target-error.test
The file was modifiedllvm/include/llvm/InterfaceStub/ELFObjHandler.h
The file was modifiedllvm/lib/InterfaceStub/ELFObjHandler.cpp
Commit 1e41e22323a33d7b7977e48ff6ec243e46860257 by epastor
[ms] [llvm-ml] Support purging macro definitions

Support MASM's PURGE directive.

Reviewed By: thakis

Differential Revision: https://reviews.llvm.org/D89735
The file was modifiedllvm/lib/MC/MCParser/MasmParser.cpp
The file was modifiedllvm/lib/MC/MCParser/COFFMasmParser.cpp
The file was modifiedllvm/test/tools/llvm-ml/macro.test
Commit 9f3edc323a88c1a179a0a5a9dc9a87a2964c0d48 by n.james93
[clang-tidy] Fix RenamerClangTidy checks trying to emit a fix that isnt a valid identifier

Addresses https://bugs.llvm.org/show_bug.cgi?id=48230.
Handle the case when the Fixup suggested isn't a valid c/c++ identifer.

Reviewed By: aaron.ballman, gribozavr2

Differential Revision: https://reviews.llvm.org/D91915
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming-bugfix-name-conflicts.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
The file was modifiedclang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
Commit cf4330871844f58075023a9ace9ba0728cf48d57 by haowei
[llvm-elfabi] Emit ELF header and string table sections

This change serves to create the initial framework for outputting ELF
files from llvm-elfabi.

Differential Revision: https://reviews.llvm.org/D61767
The file was addedllvm/test/tools/llvm-elfabi/fail-file-write-windows.test
The file was modifiedllvm/include/llvm/InterfaceStub/ELFObjHandler.h
The file was addedllvm/test/tools/llvm-elfabi/output-target-error.test
The file was modifiedllvm/lib/InterfaceStub/CMakeLists.txt
The file was modifiedllvm/tools/llvm-elfabi/llvm-elfabi.cpp
The file was modifiedllvm/lib/InterfaceStub/ELFObjHandler.cpp
The file was addedllvm/test/tools/llvm-elfabi/fail-file-write.test
The file was addedllvm/test/tools/llvm-elfabi/write-stub.test
Commit 64802d48d51d651bd2e4567b2f228f8795569542 by rnk
Make check-clang depend on the LLVM split-file utility

Fixes a recently added test that has this dependency. IMO this utility
is generally useful, so we should go ahead and take the new dependency.
The file was modifiedclang/test/CMakeLists.txt
The file was modifiedllvm/utils/gn/secondary/clang/test/BUILD.gn
Commit 5073e7edb64b61d130f2a0eac4731a0585bad28f by nicolas.vasilache
[mlir] Add mising dependency
The file was modifiedmlir/lib/Dialect/Linalg/IR/CMakeLists.txt
Commit 269ef315d1beaff534a038b60389226b0f0f5d4f by n.james93
[clang-tidy] Use compiled regex for AllowedRegexp in macro usage check

Current check compiles the regex on every attempt at matching. The check also populates and enables a regex value by default so the default behaviour results in regex re-compilation for every macro - if the check is enabled. If people used this check there's a reasonable chance they would have relatively complex regexes in use.

This is a quick and simple fix to store and use the compiled regex.

Reviewed By: njames93

Differential Revision: https://reviews.llvm.org/D91908
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
Commit 5b8e4a11029ff169fdac7caa3c7aa211f318adf6 by rupprecht
[lldb/test] Remove flaky `process connect` test.

This test is flaky because it assumes port 4321 is not already open on a machine.
The file was removedlldb/test/Shell/Commands/command-process-connect.test
Commit 3c811ce4f390c8570690b042f4e6199f20255e26 by aeubanks
[NPM] Share pass building options with legacy PM

We should share options when possible.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D91741
The file was modifiedllvm/test/Transforms/Inline/crash2.ll
The file was modifiedllvm/test/Transforms/Inline/gvn-inline-iteration.ll
The file was modifiedllvm/lib/Analysis/CallGraphSCCPass.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/test/Transforms/LoopUnrollAndJam/opt-levels.ll
The file was modifiedllvm/lib/Transforms/IPO/PassManagerBuilder.cpp
Commit 6f792041a5cb964b4099614952a54c4961bfb872 by martin
Reapply "[CodeGen] [WinException] Only produce handler data at the end of the function if needed"

This reapplies 36c64af9d7f97414d48681b74352c9684077259b in updated
form.

Emit the xdata for each function at .seh_endproc. This keeps the
exact same output header order for most code generated by the LLVM
CodeGen layer. (Sections still change order for code built from
assembly where functions lack an explicit .seh_handlerdata
directive, and functions with chained unwind info.)

The practical effect should be that assembly output lacks
superfluous ".seh_handlerdata; .text" pairs at the end of functions
that don't handle exceptions, which allows such functions to use
the AArch64 packed unwind format again.

Differential Revision: https://reviews.llvm.org/D87448
The file was modifiedllvm/test/CodeGen/AArch64/win64-jumptable.ll
The file was modifiedllvm/test/CodeGen/X86/break-false-dep.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/WinException.cpp
The file was modifiedllvm/test/CodeGen/X86/mixed-ptr-sizes.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intel-ocl.ll
The file was modifiedllvm/test/CodeGen/X86/conditional-tailcall.ll
The file was modifiedllvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
The file was modifiedllvm/test/CodeGen/AArch64/wineh1.mir
The file was modifiedllvm/test/CodeGen/X86/gnu-seh-nolpads.ll
The file was modifiedllvm/include/llvm/MC/MCStreamer.h
The file was modifiedllvm/lib/MC/MCWin64EH.cpp
The file was modifiedllvm/test/CodeGen/X86/win64-jumptable.ll
The file was modifiedllvm/lib/MC/MCStreamer.cpp
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp
The file was modifiedllvm/include/llvm/MC/MCWinEH.h
The file was modifiedllvm/test/CodeGen/X86/avx512-regcall-Mask.ll
The file was modifiedllvm/test/CodeGen/X86/no-sse-win64.ll
The file was modifiedllvm/test/CodeGen/X86/win64_frame.ll
The file was modifiedllvm/include/llvm/MC/MCWin64EH.h
The file was modifiedllvm/test/CodeGen/X86/conditional-tailcall-pgso.ll
The file was modifiedllvm/test/CodeGen/X86/musttail-varargs.ll
Commit 6a2799cf8ecf1b649cfa511aec64256a01f79436 by aeubanks
Revert "[CGSCC] Detect devirtualization in more cases"

This reverts commit 14a68b4aa9732293ad7e16f105b0feb53dc8dbe2.

Causes building self hosted clang to crash when using NPM.
The file was modifiedllvm/test/Transforms/Inline/devirtualize-3.ll
The file was modifiedllvm/test/Transforms/Inline/devirtualize.ll
The file was modifiedllvm/include/llvm/Analysis/CGSCCPassManager.h
The file was removedllvm/test/Transforms/Inline/devirtualize-5.ll
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was removedllvm/test/Transforms/Inline/devirtualize-6.ll
Commit f6b02ecd027a825f1f4a1804c464f9f96d9372c9 by Saleem Abdulrasool
APINotes: add property models for YAML attributes

This adds internal representation of the attributes in a more usable
form.  This is meant to allow programmatic access to the attributes that
are specified in the YAML data.

This is based upon the work contributed by Apple at
https://github.com/llvm/llvm-project-staging/tree/staging/swift/apinotes.

Differential Revision: https://reviews.llvm.org/D91104
Reviewed By: Gabor Marton
The file was modifiedclang/include/clang/APINotes/Types.h
The file was addedclang/lib/APINotes/APINotesTypes.cpp
The file was modifiedclang/lib/APINotes/CMakeLists.txt
Commit a1c342bf1146d52873648368210fbcaecc26f1b6 by llvmgnsyncbot
[gn build] Port f6b02ecd027
The file was modifiedllvm/utils/gn/secondary/clang/lib/APINotes/BUILD.gn
Commit ab29f091eb64c8608ba943df604b218bcff41a26 by spatel
[InstCombine] propagate 'nsw' on pointer difference of 'inbounds' geps

This is a retry of 324a53205. I cautiously reverted that at 6aa3fc4
because the rules about gep math were not clear. Since then, we
have added this line to LangRef for gep inbounds:
"The successive addition of offsets (without adding the base address)
does not wrap the pointer index type in a signed sense (nsw)."

See D90708 and post-commit comments on the revert patch for more details.
The file was modifiedllvm/test/Transforms/InstCombine/sub-gep.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
The file was modifiedllvm/test/Transforms/InstCombine/sub.ll
Commit df9ae5992889560a8f3c6760b54d5051b47c7bf5 by unknown
Use MlirStringRef throughout the C API

While this makes the unit tests a bit more verbose, this simplifies the creation of bindings because only the bidirectional mapping between the host language's string type and MlirStringRef need to be implemented.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D91905
The file was modifiedmlir/include/mlir/CAPI/Utils.h
The file was modifiedmlir/lib/CAPI/IR/StandardAttributes.cpp
The file was modifiedmlir/test/CAPI/ir.c
The file was modifiedmlir/include/mlir-c/IR.h
The file was modifiedmlir/test/CAPI/pass.c
The file was modifiedmlir/include/mlir-c/Support.h
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
Commit 03dab46d7f7323ba2b37416829cc364a4de4f294 by craig.topper
[RISCV] Remove unused VM register class

Nothing references this class today so it looks like some leftover.

Differential Revision: https://reviews.llvm.org/D91977
The file was modifiedllvm/lib/Target/RISCV/RISCVRegisterInfo.td
Commit 0a20660c8fcb5bb8469e323585eeaecacea67c44 by zoecarver
[libcxx] Resolve LWG 2724 protected -> private.

Fixes LWG issue 2724: "The protected virtual member functions of memory_resource should be private."

Differential Revision: https://reviews.llvm.org/D66615
The file was modifiedlibcxx/include/experimental/memory_resource
The file was removedlibcxx/test/std/experimental/memory/memory.resource/memory.resource.priv/protected_members.fail.cpp
The file was addedlibcxx/test/std/experimental/memory/memory.resource/memory.resource.priv/private_members.fail.cpp
Commit f7d033f4d80f476246a70f165e7455639818f907 by zinenko
[mlir] Support WsLoopOp in OpenMP to LLVM dialect conversion

It is a simple conversion that only requires to change the region argument
types, generalize it from ParallelOp.

Reviewed By: kiranchandramohan

Differential Revision: https://reviews.llvm.org/D91989
The file was modifiedmlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
The file was modifiedmlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
Commit b06a2ad94f45abc18970ecc3cec93d140d036d8f by listmail
[LoopVectorizer] Lower uniform loads as a single load (instead of relying on CSE)

A uniform load is one which loads from a uniform address across all lanes. As currently implemented, we cost model such loads as if we did a single scalar load + a broadcast, but the actual lowering replicates the load once per lane.

This change tweaks the lowering to use the REPLICATE strategy by marking such loads (and the computation leading to their memory operand) as uniform after vectorization. This is a useful change in itself, but it's real purpose is to pave the way for a following change which will generalize our uniformity logic.

In review discussion, there was an issue raised with coupling cost modeling with the lowering strategy for uniform inputs.  The discussion on that item remains unsettled and is pending larger architectural discussion.  We decided to move forward with this patch as is, and revise as warranted once the bigger picture design questions are settled.

Differential Revision: https://reviews.llvm.org/D91398
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
Commit d6239b3ea6c143a0c395eb3b8512677feaf6acc0 by listmail
[test] pre-comit test for D91451
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
Commit c74b427cb2a90309ee0c29df21ad1ca26390263c by akhuang
[llvm-symbolizer] Switch to using native symbolizer by default on Windows

llvm-symbolizer used to use the DIA SDK for symbolization on
Windows; this patch switches to using native symbolization, which was
implemented recently.

Users can still make the symbolizer use DIA by adding the `-dia` flag
in the LLVM_SYMBOLIZER_OPTS environment variable.

Differential Revision: https://reviews.llvm.org/D91814
The file was modifiedllvm/tools/llvm-symbolizer/Opts.td
The file was modifiedllvm/docs/CommandGuide/llvm-symbolizer.rst
The file was modifiedllvm/test/tools/llvm-symbolizer/pdb/pdb-columns.test
The file was modifiedlld/test/COFF/symbolizer-inline.s
The file was modifiedllvm/test/tools/llvm-symbolizer/pdb/pdb.test
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
Commit 237b024b06df4305b1a0400f60cffc6b39fb3f5a by eugenis
[hwasan] Fix tests when vm.overcommit_memory=1.

Remove an invalid check from sizes.cpp that only passes when overcommit is disabled.

Fixes PR48274.

Differential Revision: https://reviews.llvm.org/D91999
The file was modifiedcompiler-rt/test/hwasan/TestCases/sizes.cpp
Commit 1b63177a56e8cd6196778d2b90295f03e96b5800 by akhuang
Revert "[llvm-symbolizer] Switch to using native symbolizer by default on Windows"

Breaks some asan tests on the buildbot.

This reverts commit c74b427cb2a90309ee0c29df21ad1ca26390263c.
The file was modifiedllvm/tools/llvm-symbolizer/Opts.td
The file was modifiedllvm/test/tools/llvm-symbolizer/pdb/pdb-columns.test
The file was modifiedllvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
The file was modifiedllvm/docs/CommandGuide/llvm-symbolizer.rst
The file was modifiedllvm/test/tools/llvm-symbolizer/pdb/pdb.test
The file was modifiedlld/test/COFF/symbolizer-inline.s
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
Commit e42021d5cc25a8dc7e3efac1e7007cc0c1a7b2bd by Ben.Dunbobbin
[Clang][-fvisibility-from-dllstorageclass] Set DSO Locality from final visibility

Ensure that the DSO Locality of the globals in the IR is derived from
their final visibility when using -fvisibility-from-dllstorageclass.

To accomplish this we reset the DSO locality of globals (before
setting their visibility from their dllstorageclass) at the end of
IRGen in Clang. This removes any effects that visibility options or
annotations may have had on the DSO locality.

The resulting DSO locality of the globals will be pessimistic
w.r.t. to the normal compiler IRGen.

Differential Revision: https://reviews.llvm.org/D91779
The file was modifiedclang/test/CodeGenCXX/visibility-dllstorageclass.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
Commit 4bc88a0e9a2ee29959a9053e867ae6f051348554 by v.churavy
Enable support for floating-point division reductions

Similar to fsub, fdiv can also be vectorized using fmul.

Also http://llvm.org/viewvc/llvm-project?view=revision&revision=215200

Differential Revision: https://reviews.llvm.org/D34078

Co-authored-by: Jameson Nash <jameson@juliacomputing.com>
The file was modifiedllvm/test/Transforms/LoopVectorize/float-reduction.ll
The file was modifiedllvm/lib/Analysis/IVDescriptors.cpp
Commit 8f1e0dcbb090243423faa4228ba58ddbae909c70 by vtjnash
fix some Wundef warnings in public headers

Differential Revision: https://reviews.llvm.org/D91094
The file was modifiedllvm/include/llvm/Config/abi-breaking.h.cmake
The file was modifiedllvm/include/llvm/ADT/Statistic.h
Commit 97c8fba7e490db57d24a31c68ad12d7f840256d6 by richard
Fix signed integer overflow bug that's causing test failures with UBSan.
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
Commit 3e6e6a2db674cd85b33c06b75685c6bce5acb154 by zeratul976
[clangd] Call hierarchy (XRefs layer, incoming calls)

Support for outgoing calls is left for a future change.

Differential Revision: https://reviews.llvm.org/D91122
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CMakeLists.txt
The file was addedclang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.h
Commit 4cb976e014db80efd20dfca45ba218c3a69aac42 by zeratul976
[clangd] Call hierarchy (ClangdServer layer)

Differential Revision: https://reviews.llvm.org/D91123
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
Commit 0a4f99c494d007a21652b1b3939bde4753042c33 by zeratul976
[clangd] Call hierarchy (ClangdLSPServer layer)

Differential Revision: https://reviews.llvm.org/D91124
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.h
The file was modifiedclang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
The file was modifiedclang-tools-extra/clangd/test/initialize-params.test
The file was addedclang-tools-extra/clangd/test/call-hierarchy.test
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
Commit dced150375d09df6266448342fbb066d638b59ef by zeratul976
[clangd] Use WorkScheduler.run() in ClangdServer::resolveTypeHierarchy()

Differential Revision: https://reviews.llvm.org/D91941
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
Commit 53310ae70841a771b1706dc6f7740957089a748b by llvmgnsyncbot
[gn build] Port 3e6e6a2db67
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn
Commit b20f3cc5b560ae15a8f9018eb96d65e6f5e125d1 by Jonas Devlieghere
[lldb] Add platform select to TestProcessConnect.py

Extend TestProcessConnect to cover the scenario fixed by
6c0cd5676e0a0feaf836e0399023a6e21224467b. This replaces
command-process-connect.test which would fail if port 4321
was open.
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
Commit 2bd4540f3816bb7acda31cba5351d02192d63f81 by omair.javaid
[LLDB] Fix typo in RegisterContextPOSIXProcessMonitor_arm64

This patch fixes a minor typo in RegisterContextPOSIXProcessMonitor_arm64
constructor where memset target was wrongly specified as m_fpr instead of
m_gpr_arm64.
The file was modifiedlldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp
Commit 9194aa88676fbf6d215efbe461abe9ac18bc0ffc by thakis
[gn build] modify hotfix in 17df195f705cef76a9 to work with all enabled targets

llvm-config output with the gn build is just good enough to make
tests pass, but llvm-config wants all .a files it knows about to
actually exist. So let it know about fewer .a files that don't
exist if not all targets are enabled.
The file was modifiedllvm/utils/gn/build/write_library_dependencies.py
Commit bb1341161478dc589893cda9f808e5f5b859b5ae by i
[libunwind] Multiple preprocessor fixes on PowerPC*

* Remove misnamed `PPC64_HAS_VMX` in preference of directly checking `defined(__VSX__)`.

libunwind was using "VMX" to mean "VSX". "VMX" is just another name for Altivec, while "VSX" is the vector-scalar extensions first used in POWER7. Exposing a "PPC64_HAS_VMX" define was misleading and incorrect.

* Add `defined(__ALTIVEC__)` guards around vector register operations to fix non-altivec CPUS such as the e5500.

When compiling for certain Book-E processors such as the e5500, we want to skip vector save/restore, as the Altivec registers are illegal on non-Altivec implementations.

* Add `!defined(__NO_FPRS__)` guards around traditional floating-point save/restore.

When compiling for powerpcspe, we cannot access floating point registers, as there aren't any. (The SPE on e500v2 is a 64-bit extension of the GPRs, and it doesn't have the normal floating-point registers at all.)
This fixes building for powerpcspe, although no actual handling for SPE save/restore is written yet.

Reviewed By: MaskRay, #libunwind, compnerd

Differential Revision: https://reviews.llvm.org/D91906
The file was modifiedlibunwind/src/config.h
The file was modifiedlibunwind/src/Registers.hpp
The file was modifiedlibunwind/src/UnwindRegistersRestore.S
The file was modifiedlibunwind/src/assembly.h
The file was modifiedlibunwind/src/UnwindRegistersSave.S
Commit c2fb114475d15a1d39545f700b8c6d6e18367ca9 by i
[Driver] Enable getOSLibDir() lib32 workaround for SPARC on Linux

This fixes the Builtins-sparc-linux testsuite failures on Linux
SPARC which occur because clang cannot find the 32-bit runtime
libraries when -m32 is passed on the command line. The same
workaround is already being used on X86 and PPC.

Also, switch the CHECK-DEBIAN-SPARC tests to use debian_multiarch_tree
as both sparc and sparc64 are using the MultiArch mechanism on modern Debian
systems the same way as x86_64, powerpc64el and others. Thus, switch the
CHECK-DEBIAN-SPARC32 and CHECK-DEBIAN-SPARC64 tests to use the files from
the debian_multiarch_tree directory for the header and linker path tests.

Finally, rename CHECK-DEBIAN-SPARC32 to CHECK-DEBIAN-SPARC to match the naming
scheme of the Debian MultiArch checks for the other Debian architectures.

Reviewed By: MaskRay, phosek

Differential Revision: https://reviews.llvm.org/D90524
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/lib/sparc-linux-gnu/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib64/crtn.o
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/include/c++/4.5/sparc64-linux-gnu/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/lib/gcc/sparc64-linux-gnu/4.9/crtend.o
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/lib/sparc64-linux-gnu/.keep
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/lib/gcc/sparc-linux-gnu/4.5/crtbegin.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/include/sparc-linux-gnu/c++/4.9/64/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/gcc/sparc-linux-gnu/4.9/crtend.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/lib64/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/lib64/.keep
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/lib/sparc64-linux-gnu/.keep
The file was modifiedclang/test/Driver/linux-ld.c
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/include/sparc64-linux-gnu/c++/4.9/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/lib/gcc/sparc64-linux-gnu/4.9/crtbegin.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/lib/sparc64-linux-gnu/crti.o
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/lib/sparc-linux-gnu/.keep
The file was modifiedclang/test/Driver/linux-header-search.cpp
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib64/crti.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/sparc-linux-gnu/crti.o
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/include/sparc-linux-gnu/.keep
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/lib/gcc/sparc64-linux-gnu/4.5/crtbegin.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/include/c++/4.9/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/lib/sparc64-linux-gnu/crtn.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib64/crt1.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/gcc/sparc-linux-gnu/4.9/64/crtbegin.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/gcc/sparc-linux-gnu/4.9/crtbegin.o
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/include/c++/4.5/sparc-linux-gnu/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/include/c++/4.9/backward/.keep
The file was addedclang/test/Driver/Inputs/debian_multiarch_tree/usr/include/sparc64-linux-gnu/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/usr/lib/sparc64-linux-gnu/crt1.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/lib/sparc-linux-gnu/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/sparc-linux-gnu/crtn.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/gcc/sparc-linux-gnu/4.9/64/crtend.o
The file was removedclang/test/Driver/Inputs/debian_8_sparc64_tree/lib/sparc64-linux-gnu/.keep
The file was removedclang/test/Driver/Inputs/debian_8_sparc_multilib_tree/usr/lib/sparc-linux-gnu/crt1.o
Commit 51994f90b618d947427f3c95fe8168d1c848927c by i
[CMake] Unify LLVM_LINKER_IS_GOLD -Wl,--gc-sections setting with GNU ld and LLD
The file was modifiedllvm/cmake/modules/AddLLVM.cmake
Commit 1a9c72f8a8d014c2ae6408292e4f48e2e632f139 by listmail
[LoopVec] Reuse a lambda [NFC]

Minor code refactor to improve readability.
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit 932e4f88157194986fa9624edfea9abb9fbde77f by aeubanks
[FunctionAttrs][NPM] Fix handling of convergent

The legacy pass didn't properly detect indirect calls.

We can still remove the convergent attribute when there are indirect
calls. The LangRef says:

> When it appears on a call/invoke, the convergent attribute indicates
that we should treat the call as though we’re calling a convergent
function. This is particularly useful on indirect calls; without this we
may treat such calls as though the target is non-convergent.

So don't skip handling of convergent when there are unknown calls.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D89826
The file was modifiedllvm/lib/Transforms/IPO/FunctionAttrs.cpp
The file was modifiedllvm/test/Transforms/FunctionAttrs/convergent.ll
Commit aff058b1a92dce2d08974a7d27fa7d032c87601d by aeubanks
Reland [CGSCC] Detect devirtualization in more cases

The devirtualization wrapper misses cases where if it wraps a pass
manager, an individual pass may devirtualize an indirect call created by
a previous pass. For example, inlining may create a new indirect call
which is devirtualized by instcombine. Currently the devirtualization
wrapper will not see that because it only checks cgscc edges at the very
beginning and end of the pass (manager) it wraps.

This fixes some tests testing this exact behavior in the legacy PM.

Instead of checking WeakTrackingVHs for CallBases at the very beginning
and end of the pass it wraps, check every time
updateCGAndAnalysisManagerForPass() is called.

check-llvm and check-clang with -abort-on-max-devirt-iterations-reached
on by default doesn't show any failures outside of tests specifically
testing it so it doesn't needlessly rerun passes more than necessary.
(The NPM -O2/3 pipeline run the inliner/function simplification pipeline
under a devirtualization repeater pass up to 4 times by default).

http://llvm-compile-time-tracker.com/?config=O3&stat=instructions&remote=aeubanks
shows that 7zip has ~1% compile time regression. I looked at it and saw
that there indeed was devirtualization happening that was not previously
caught, so now it reruns the CGSCC pipeline on some SCCs, which is WAI.

The initial land assumed CallBase WeakTrackingVHs would always be
CallBases, but they can be RAUW'd with undef.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D89587
The file was addedllvm/test/Transforms/Inline/devirtualize-6.ll
The file was addedllvm/test/Transforms/Inline/devirtualize-5.ll
The file was modifiedllvm/test/Transforms/Inline/devirtualize-3.ll
The file was modifiedllvm/lib/Analysis/CGSCCPassManager.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/include/llvm/Analysis/CGSCCPassManager.h
The file was addedllvm/test/Other/devirtualization-undef.ll
The file was modifiedllvm/test/Transforms/Inline/devirtualize.ll
Commit da3bc99bdd778ce2c22f17cab2b94eefcc285953 by lkail
[PowerPC] Pre-commit more tests for `select` codegen. NFC.
The file was modifiedllvm/test/CodeGen/PowerPC/select.ll
Commit 5e9e335a247040a175855f99dbab5957064434ba by mikael.holmen
[GlobalISel][TableGen] Fix seg fault for zero instruction

Tablegen seg faulted when parsing a Pat where the destination part has
no output (zero instruction), due to a register class lookup using
nullptr.

Reviewed By: Paul-C-Anagnostopoulos

Differential Revision: https://reviews.llvm.org/D90829
The file was addedllvm/test/TableGen/GlobalISelEmitter-zero-instr.td
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
Commit 0fb76b9035c8af48f63d965faadfb4b0e58b0a4f by Amara Emerson
[AArch64][GlobalISel] Make <2 x p0> of G_SHUFFLE_VECTOR legal.
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
Commit ca7fdf7ce098ace9ba24a94e985b24cd6801240d by Amara Emerson
[AArch64][GlobalISel] Add pre-isel lowering to convert p0 G_DUPs to use s64.

This uses the same reasoning as other similar conversions just before selection,
without it we miss out on selection because the importer considers s64 and p0
distinct types.
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-dup.mir
Commit c3a331646eecf67d54e4d7ab06ed16a3bb6153b7 by aeubanks
[test] Fix gvn-inline-iteration.ll under NPM
The file was modifiedllvm/test/Transforms/Inline/gvn-inline-iteration.ll
Commit bce2ac9f6d3be91fc744f7efe76d52dbe1b683bf by pavel
Revert "[DebugInfo] Refactor code for emitting DWARF expressions for FP constants"

The commit introduced a crash when emitting (debug info for) complex
floats (pr48277).
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
The file was removedllvm/test/DebugInfo/ARM/implicit_value-_Float16.ll
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
Commit 0b2d84fba84b098a2060862fcbcfccfb4ad1e3f2 by martin
[LLD] [COFF] Allow wrapping dllimported functions

GNU ld doesn't seem to do this though, but it looks like a reasonable
use case, is easy to implement, and was requested in
https://bugs.llvm.org/show_bug.cgi?id=47384.

Differential Revision: https://reviews.llvm.org/D91689
The file was modifiedlld/test/COFF/wrap-import.ll
The file was modifiedlld/COFF/MinGW.cpp
The file was addedlld/test/COFF/wrap-dllimport.s
Commit 029e199dbfd394c7a3c372a632a4ddac6b591648 by zinenko
[mlir] Make attributes mutable in Python bindings

Attributes represent additional data about an operation and are intended to be
modifiable during the lifetime of the operation. In the dialect-specific Python
bindings, attributes are exposed as properties on the operation class. Allow
for assigning values to these properties. Also support creating new and
deleting existing attributes through the generic "attributes" property of an
operation. Any validity checking must be performed by the op verifier after the
mutation, similarly to C++. Operations are not invalidated in the process: no
dangling pointers can be created as all attributes are owned by the context and
will remain live even if they are not used in any operation.

Introduce a Python Test dialect by analogy with the Test dialect and to avoid
polluting the latter with Python-specific constructs. Use this dialect to
implement a test for the attribute access and mutation API.

Reviewed By: stellaraccident, mehdi_amini

Differential Revision: https://reviews.llvm.org/D91652
The file was addedmlir/test/Bindings/Python/CMakeLists.txt
The file was addedmlir/test/Bindings/Python/python_test_ops.td
The file was modifiedmlir/lib/Bindings/Python/IRModules.cpp
The file was addedmlir/test/Bindings/CMakeLists.txt
The file was modifiedmlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
The file was modifiedmlir/test/CMakeLists.txt
The file was modifiedmlir/test/Bindings/Python/lit.local.cfg
The file was addedmlir/test/Bindings/Python/dialects/python_test.py
Commit 803745b945f46d32770ee8805ef0f458660c441e by haowei
[llvm-elfabi] Emit ELF .dynsym, .dynamic sections

This change makes llvm-elfabi tool to emit .dynsym and .dynamic
sections.

Differential Revision: https://reviews.llvm.org/D89432
The file was modifiedllvm/lib/InterfaceStub/ELFObjHandler.cpp
The file was modifiedllvm/test/tools/llvm-elfabi/write-stub.test
Commit ee6255d2074ccd50dfc9d993259caa0c5c4da4cd by zinenko
[mlir] move lib/Bindings/Python/Attributes.td to include/mlir/Bindings/Python

This file is intended to be included by other files, including
out-of-tree dialects, and makes more sense in `include` than in `lib`.

Depends On D91652

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D91961
The file was removedmlir/lib/Bindings/Python/Attributes.td
The file was modifiedmlir/test/mlir-tblgen/op-python-bindings.td
The file was modifiedmlir/lib/Bindings/Python/StandardOps.td
The file was modifiedmlir/test/Bindings/Python/python_test_ops.td
The file was addedmlir/include/mlir/Bindings/Python/Attributes.td
Commit 5b6f47595bab686c6c3351fc1bd1f564add80dbf by zeratul976
[clangd] Sort results of incomingCalls request by container name

Differential Revision: https://reviews.llvm.org/D92009
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
Commit c3914bf28e3902c0e039eb31d2f36112a606dc58 by grimar
[[lvm-readelf/obj] - Remove `tryGetSectionName` helper.

D91867 introduced the `tryGetSectionName` helper.
But we have `getPrintableSectionName` member with the similar
behavior which we can reuse. This patch does it.

Differential revision: https://reviews.llvm.org/D91954
The file was modifiedllvm/test/tools/llvm-readobj/ELF/groups.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 50bd686695ac2ca25996be7994808f93a2b753c5 by eleviant
Add support for branch forms of ALU instructions to Cortex-A57 model

Patch fixes scheduling of ALU instructions which modify pc register. Patch
also fixes computation of mutually exclusive predicates for sequences of
variants to be properly expanded

Differential revision: https://reviews.llvm.org/D91266
The file was modifiedllvm/lib/Target/ARM/ARM.td
The file was modifiedllvm/utils/TableGen/CodeGenSchedule.cpp
The file was modifiedllvm/test/tools/llvm-mca/ARM/cortex-a57-basic-instructions.s
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57.td
The file was modifiedllvm/lib/Target/ARM/ARMScheduleA57WriteRes.td
The file was modifiedllvm/utils/TableGen/SubtargetEmitter.cpp
The file was modifiedllvm/lib/Target/ARM/ARMSchedule.td
Commit 245052ac3080681915c4da59e871d43ea583debb by grimar
[llvm-readelf/obj] - Improve the error reporting in printStackSize().

This stops using `RelocationRef` API in the `printStackSize` method
and starts using the "regular" API that is used in almost all other places
in ELFDumper.cpp.

This is not only makes the code to be more consistent, but helps to diagnose
issues better, because the `ELFObjectFile` API, which is used
currently to implement stack sized dumping sometimes has a behavior
that just doesn't work well for broken inputs.

E.g see how it gets the `symbol_end` iterator. It will just not work
well for a case when the `sh_size` is broken.

```
template <class ELFT>
basic_symbol_iterator ELFObjectFile<ELFT>::symbol_end() const {
...
  DataRefImpl Sym = toDRI(SymTab, SymTab->sh_size / sizeof(Elf_Sym));
  return basic_symbol_iterator(SymbolRef(Sym, this));
}
```

Differential revision: https://reviews.llvm.org/D91624
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/stack-sizes.test
Commit 6b74eabfddbc6629adbf6358f8e78893c4ee1d12 by grimar
[llvm-readelf/obj] - Refine the implementation of `printGNUVersionSectionProlog`

This:
1) Changes its signature.
2) Refines the name of local variable (`SymTabName`->`LinkedSecName`,
   because SHT_GNU_verneed/SHT_GNU_verdef are linked with the string table, not with the symbol table).
3) Stops using the `unwrapOrError` inside.

Differential revision: https://reviews.llvm.org/D91964
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/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/versym-invalid.test

Summary

  1. Add flang dylib/shared libs buildbots (details)
Commit 1a3cb9aabf5eb27f2c6d515fb4711d0719a30947 by diana.picus
Add flang dylib/shared libs buildbots

Differential Revision: https://reviews.llvm.org/D91843
The file was modifiedbuildbot/osuosl/master/config/builders.py
The file was modifiedbuildbot/osuosl/master/config/workers.py