SuccessChanges

Summary

  1. Enable mlir integration tests on the mlir-nvidia bot. (details)
  2. Fixed mistype in LibcxxAndAbiBuilder.py introduced by 1d2328ff69a8503911e85140b0786429204a2113. (details)
  3. Add builder and worker for XCore as default target. (details)
  4. Don't run testsuite on Linaro quick bots. (details)
  5. [VE] hpce-aurora2 worker replaces nec-arrproto41 (details)
  6. Add check-flang option to some of the Flang builders. (details)
  7. Add Flang builder for latest gcc. (details)
  8. Add Flang builder for latest llvm and libc++. (details)
  9. [M68k] Add new worker debian-akiko-m68k for Linux 32-bit M68k (details)
  10. [libc++] Remove libc++ ARM builders (details)
  11. [libc builder] Temporarily disable integration tests and loader tests. (details)
  12. Added openmp doxygen; increased the doxygent step timeout, as it could take a long time without anything in TTY. (details)
  13. [XCore] Build fewer components. Run 4 parallel jobs. (details)
  14. Fix flang out-of-tree with new driver builder. (details)
  15. [jenkins] Temporarily disable compiler-rt tests until couple of tests are fixed (details)
  16. Revert "[jenkins] Temporarily disable compiler-rt tests until couple of tests are fixed" (details)
Commit d1c8a51b6392c2a8e6a519b124b9009783edb4e3 by csigg
Enable mlir integration tests on the mlir-nvidia bot.

This is in preparation of landing https://reviews.llvm.org/D97463, which moves the cuda-runner tests to the integration test dir.

Differential Revision: https://reviews.llvm.org/D97492
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 4cd2689758e95b6811dae41ef9abec92f71e03a7 by gkistanova
Fixed mistype in LibcxxAndAbiBuilder.py introduced by 1d2328ff69a8503911e85140b0786429204a2113.
The file was modifiedzorg/buildbot/builders/LibcxxAndAbiBuilder.py (diff)
Commit f128ee547d9f4d1fc9480b9e95b6c119d9a08392 by nigelp
Add builder and worker for XCore as default target.
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit de437ff479d1e96dc6e578ab031a9b704fe3bdb0 by yvan.roux
Don't run testsuite on Linaro quick bots.

Differential Revision: https://reviews.llvm.org/D96146
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit c51ad2f0cdc06217b79546c9d48bb79a3f3da211 by simon.moll
[VE] hpce-aurora2 worker replaces nec-arrproto41
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
Commit 3ebf52343964fd954f03d43884e29c9b9372be08 by stevan.radakovic
Add check-flang option to some of the Flang builders.

Reviewed By: gkistanova, awarzynski

Differential Revision: https://reviews.llvm.org/D97626
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 35d18e63f4418f6fad571787c02c3e72b4a2a985 by stevan.radakovic
Add Flang builder for latest gcc.

Reviewed By: gkistanova, awarzynski

Differential Revision: https://reviews.llvm.org/D97678
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit ac19ab2c3297aa6fc81419327f3b002262714bd9 by stevan.radakovic
Add Flang builder for latest llvm and libc++.

Reviewed By: gkistanova, awarzynski

Differential Revision: https://reviews.llvm.org/D97685
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit adad9548325b94ebf66d4b8b232daf10a8f47aa5 by minyihh
[M68k] Add new worker debian-akiko-m68k for Linux 32-bit M68k

This adds a new builder called debian-akiko-m68k which will
build LLVM and Clang on Debian unstable on m68k.

Author: glaubitz

Differential Revision: https://reviews.llvm.org/D91031
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 44679416d06e0a36261b1382be6cc66cac3912ce by david.spickett
[libc++] Remove libc++ ARM builders

In accordance with the announcement on libcxx-dev and llvm-dev [1],
we are removing the libc++ specific buildbots in favor of running
those configurations in the pre-commit CI on Buildkite. This commit
removes the ARM-based libc++ build bots.

[1]: http://lists.llvm.org/pipermail/libcxx-dev/2020-November/001040.html

Reviewed By: DavidSpickett

Differential Revision: https://reviews.llvm.org/D92863
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit ffd39b8bc2a2b4dfc278bcd98a0ad1a36046bd80 by sivachandra
[libc builder] Temporarily disable integration tests and loader tests.

They will be enabled back on a new bot which will do a full libc build.
The file was modifiedzorg/buildbot/builders/annotated/libc-linux.py (diff)
Commit ea928412142b254c31692178007d737a6ffb7417 by alebedev
Added openmp doxygen; increased the doxygent step timeout, as it could take a long time without anything in TTY.

Reviewed By: gkistanova

Differential Revision: https://reviews.llvm.org/D97607
The file was modifiedzorg/buildbot/builders/DoxygenDocsBuilder.py (diff)
Commit 258da7a6e288811429b1efee6fbe0463f7405bb7 by nigelp
[XCore] Build fewer components. Run 4 parallel jobs.

Do not override LLVM_LIT_ARGS: use -j from the factory.

Differential Revision: https://reviews.llvm.org/D97943
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)
Commit abb2f2cdd2580443b803195968b09fbbfa3da8a0 by stevan.radakovic
Fix flang out-of-tree with new driver builder.

Reviewed By: rovka

Differential Revision: https://reviews.llvm.org/D98768
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
Commit 33a9f3c59121b3ad1aad2e5e3c1e7653ac4f8ad1 by Azharuddin Mohammed
[jenkins] Temporarily disable compiler-rt tests until couple of tests are fixed
The file was modifiedzorg/jenkins/jobs/jobs/clang-stage1-RA (diff)
The file was modifiedzorg/jenkins/jobs/jobs/clang-stage2-Rthinlto (diff)
Commit 70a8255a6f8d3afb11d6223f0c44aa5efe61743a by Azharuddin Mohammed
Revert "[jenkins] Temporarily disable compiler-rt tests until couple of tests are fixed"

This reverts commit 33a9f3c59121b3ad1aad2e5e3c1e7653ac4f8ad1.
The file was modifiedzorg/jenkins/jobs/jobs/clang-stage1-RA (diff)
The file was modifiedzorg/jenkins/jobs/jobs/clang-stage2-Rthinlto (diff)

Summary

  1. [NFC][InstCombine] Add plain GEP test for  (gep i8* X, -(ptrtoint Y))  -->  (inttoptr (sub (ptrtoint X), (ptrtoint Y)))  fold (details)
  2. [InstCombine] Don't canonicalize  (gep i8* X, -(ptrtoint Y))  as  (inttoptr (sub (ptrtoint X), (ptrtoint Y))) (details)
  3. [libcxx] [test] Fix lexically_normal and lexically_relative_and_proximate for windows (details)
  4. [VPlan] Support to widen call intructions in VPlan native path (details)
  5. [FunctionImport] Delete unneeded setLive. NFC (details)
  6. [ModuleSummaryAnalysis] Avoid duplicate elements in Worklist. NFC (details)
  7. [GVN] Add test for load GVN with dead block (NFC) (details)
  8. [GVN] Don't explicitly materialize undefs from dead blocks (details)
  9. [MC] Support .symver *, *, remove (details)
  10. [clang] Fix typos in documentation (NFC) (details)
  11. [objdump] Use ListSeparator (NFC) (details)
  12. [TableGen] Use range-based for loops (NFC) (details)
  13. [MC] Parse end-of-line for .cfi_* directives (details)
  14. [MC] Parse end-of-line for .addrsig & .addrsig_sym (details)
  15. [MC] Add parseEOL() overload and migrate some parseToken(AsmToken::EndOfStatement) to parseEOL() (details)
  16. [MC] Migrate some parseToken(AsmToken::EndOfStatement, ...) to parseEOL() (details)
  17. [NFC][AMDGPU]DWARF Extensions For Heterogeneous Debugging generic type endianity (details)
  18. [Driver] Pass --unwindlib=platform to tests that check unwinder (details)
  19. [libunwind] Install the DLL when doing "ninja install" (details)
  20. [libcxx] [test] Fix path.modifiers remove_filename and replace_filename for windows (details)
  21. [X86] canonicalizeShuffleWithBinOps - shuffle oneuse constants. (details)
  22. [X86] canonicalizeShuffleWithBinOps - add X86ISD::PSHUFB handling. (details)
  23. [ValueTracking] update directlyImpliesPoison to look into select's condition (details)
  24. [InstCombine] enrich select-safe-bool-transforms.ll test (NFC) (details)
  25. [LoopUnswitch] unswitch if cond is in select form of and/or as well (details)
  26. [SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe (details)
  27. [InstCombine] fix another poison-unsafe select transformation (details)
  28. [DSE] Remove MemDep-based implementation (details)
  29. [CVP] Remove -cvp-dont-add-nowrap-flags option (details)
  30. [InstCombine] use safe transformation by default (details)
  31. [RISCV] Fold (select_cc (xor X, Y), 0, eq/ne, trueV, falseV) -> (select_cc X, Y, eq/ne, trueV, falseV) (details)
  32. [InstCombine] Add simplification of two logical and/ors (details)
  33. [NFCI] Fix polly tests after b46c085d2b6d15873fb53718f0a70b3848e19e4a (details)
  34. [RISCV] Fold (select_cc (setlt X, Y), 0, ne, trueV, falseV) -> (select_cc X, Y, lt, trueV, falseV) (details)
  35. [SelectionDAG] Add computeKnownBits support for ISD::USUBSAT. (details)
  36. IR: Fix assert string message referring to the wrong attribute (details)
  37. OpaquePtr: Record byref types in bitcode writer (details)
  38. [NFC][AMDGPU] DWARF Extensions For Heterogeneous Debugging clarifications (details)
  39. [ConstProp] add tests for cmp with null and constexpr; NFC (details)
  40. [tsan] Use large address space mapping on Apple Silicon Macs (details)
  41. [libcxx] [test] Clarify and improve consistency in lexically_relative_and_proximate.pass.cpp. NFC. (details)
  42. [libcxx] [test] Fix building create_directory in MSVC configurations (details)
  43. [libcxx] [test] Don't test CharFile (/dev/null) on windows (details)
  44. [LoopUnrollRuntime] Add option to assume the non latch exit block to be (details)
  45. [NFC][LoopUnroll] Add `-unroll-runtime-other-exit-predictable=false` in (details)
  46. Revert "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe" (details)
  47. llvm-nm: add flag to suppress no symbols warning (details)
  48. Fix build post-revert in 8d5a981a135a (details)
  49. [libc++] Fix typos in the synopsis of bit_xor, bit_not, etc. NFC. (details)
  50. [Driver] Pass --unwindlib=platform to tests that check unwinder (details)
  51. [LoopInterchange] Replace tightly-nesting-ness check with the one from `LoopNest` (details)
  52. Forward the `LLVM_ENABLE_LIBCXX` CMake parameter to the mlir standalone test (details)
  53. [X86] Refine "Support -march=alderlake" (details)
  54. [CMake][compiler-rt] Use copying instead of symlinking for LSE builtins on non-Unix-likes (details)
  55. [LoopVectorize][SVE] Add tests for vectorising conditional loads of invariant addresses (details)
  56. [Matrix] Implement += and -= for MatrixType. (details)
  57. [RISCV] Add new entry points to getContainerForFixedLengthVector (details)
  58. Clarify documentation for `Elementwise`, `Scalarizable`, `Vectorizable`, and (details)
  59. Revert "[tsan] Use large address space mapping on Apple Silicon Macs" (details)
  60. [NFC] Use ranged loop iteration instead of explicit looping (details)
  61. [sanitizers] Fix interception of GLibc regexec (details)
  62. [X86] Break if-else chain. NFCI. (details)
  63. [KnownBits] Add min/max shift amount handling to shl/lshr/ashr KnownBits helpers (details)
  64. [lldb][NFC] std::set -> DenseSet in ClangModulesDeclVendor (details)
  65. Add "assert require" for the test added in df9158c9a45a6902c2b0394f9bd6512e3e441f31 (details)
  66. [JumpThreading] auto-generate complete test checks; NFC (details)
  67. [libcxx] Document windows specifics regarding file_type and perms. NFC. (details)
  68. [ConstProp][JumpThreading] add more test coverage for potential nullptr folds; NFC (details)
  69. [ConstantFold] allow folding icmp of null and constexpr (details)
  70. [clang/mac] Accept -why_load and make -whyload an alias for it (details)
  71. [PowerPC] Change target data layout for 16-byte stack alignment (details)
  72. [NFC] Avoid useless BitVector move (details)
  73. [DebugInfo] Support DIArgList in DbgVariableIntrinsic (details)
  74. [SystemZ][z/OS] Add support to validate a HLASM Label. (details)
  75. Fix: [DebugInfo] Support DIArgList in DbgVariableIntrinsic (details)
  76. Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions for Threadprivate. (details)
  77. Run non-filechecked commands in update_cc_test_checks.py (details)
  78. [AIX][TLS] Generate 32-bit general-dynamic access code sequence (details)
  79. [OpenMP] Fix potential integer overflow in dynamic schedule code (details)
  80. Fix 2: [DebugInfo] Support DIArgList in DbgVariableIntrinsic (details)
  81. [lldb] Fix error message in IRInterpreter (details)
  82. AArch64/MacOS: switch default CPU to apple-a13. (details)
  83. [mlir][Shape] Allow shape.split_at to return extent tensors and lower it to std.subtensor (details)
  84. Apply update_test_checks.py to test/Transforms/Util/assume-builder.ll (NFC) (details)
  85. [nfc] [lldb] Remove unused function DWARFAttribute::set (details)
  86. [ConstProp] Add more tests for pointer icmp folding (NFC) (details)
  87. [ConstProp] Fix folding of pointer icmp with signed predicates (details)
  88. [ConstantFold] Handle icmp of global and null consistently (details)
  89. [InstCombine] Pre-commit tests for redundant phis with pointer casts. (details)
  90. [Assembler] Fix global icmp test (details)
  91. [lldb][NFC] Code style fixes for ClangModulesDeclVendor (details)
  92. Rehome an orphaned comment [NFC] (details)
  93. [InstCombine] Add a combine for a shuffle of similar bitcasts (details)
  94. [nfc] [lldb] [testsuite] Cleanup of recently added dwarf5-line-strp.s (details)
  95. [gvn] Precisely propagate equalities to phi operands (details)
  96. [OpenMP][Clang][NVPTX] Only build one bitcode library for each SM (details)
  97. [CSSPGO] llvm-profdata support for CS profile. (details)
  98. [RISCV] Add explicit i64 types to RV64 isel patterns to stop tablegen from generating unneeded i32 patterns for RV32 HwMode. (details)
  99. [RISCV] Make use of DAG.getNeutralElement in lowerVECREDUCE to avoid repeating the same list of constants. NFC (details)
  100. [instcombine] Collapse trivial and recurrences (details)
  101. [instcombine] Collapse trivial or recurrences (details)
  102. Fix ppc build bot after 239a6181 (details)
  103. [nfc] [lldb] Removed unused operator== for DWARFAbbreviationDeclaration and DWARFAttribute (details)
  104. [mlir] NFC: Add #endif comment. (details)
  105. [DebugInfo] Support representation of multiple location operands in SDDbgValue (details)
  106. [MLIR][TOSA] Added lowerings for Reduce operations to Linalg (details)
  107. Fix: [DebugInfo] Support representation of multiple location operands in SDDbgValue (details)
  108. [OpenMP] NFC: temporarily disable assertion until the bug with dependences is fixed (details)
  109. [SystemZ][z/OS] Missing locale functions libc++ (details)
  110. constify getUnderlyingObject implementation [nfc] (details)
  111. [WebAssembly] Add new relocation for location relative data (details)
  112. [gn build] (manually) port ebe6161c54b9 (details)
  113. [AIX][TLS] Add assert check of valid csect type for the storage mapping class XCOFF::XMC_UL (details)
  114. [dfsan] Remove hardcoded shadow width in struct.ll (details)
  115. [clang] Don't set CLANG_DEFAULT_UNWINDLIB to none if rtlib is set to compiler-rt (details)
  116. [M68k][CODE_OWNERS](0/8) Add code owner for the M68k target (details)
  117. [M68k][TableGen](1/8) TableGen related changes (details)
  118. [M68k][MIR](2/8) Changes in the target-independent MIR part (details)
  119. [M68k](3/8) Skeleton and target description files (details)
  120. [M68k](4/8) MC layer and object file support (details)
  121. [M68k](5/8) Target-specific lowering (details)
  122. [M68k][test](6/8) Add all of the tests (details)
  123. [cfe][M68k](7/8) Clang basic support (details)
  124. [cfe][driver][M68k](8/8) Clang driver support (details)
  125. [gn build] Port 503343191e12 (details)
  126. [gn build] Port 5509748f2ce5 (details)
  127. [gn build] Port 5eb7a5814a5c (details)
  128. Revert "[LICM] Make promotion faster" (details)
  129. [AArch64][GlobalISel] Lower G_BUILD_VECTOR -> G_DUP (details)
  130. [gn build] Port 5c26be214d9f (details)
  131. [InstSimplify] add tests for cttz of shifted-1; NFC (details)
  132. [InstSimplify] cttz(1<<x) --> x (details)
  133. [PowerPC] Removing _massv place holder (details)
  134. [tsan] Use large address space mapping on Apple Silicon Macs (details)
  135. Add intrinsics_gen as a dependency of libRemarks (details)
  136. [Sanitizer][RISCV] Fix internal_clone (details)
  137. [mlir][IR][NFC] Define the Location classes in ODS instead of C++ (details)
  138. [mlir][IR][NFC] Move the remaining builtin types to ODS (details)
  139. [CSSPGO][llvm-profgen] Change sample count of dangling probe in llvm-profgen (details)
  140. [SelectionDAG] Don't scalarize vector fpround sources that don't need it. (details)
  141. [ValueTracking] move/add helper to get inverse min/max; NFC (details)
  142. [InstCombine] add tests for min/max intrinsics with not ops; NFC (details)
  143. scudo: Support memory tagging in the secondary allocator. (details)
  144. [AIX][TLS] Generate 64-bit general-dynamic access code sequence (details)
  145. [flang] Fix bad dereference of NULLIFY pointer object (details)
  146. [ValueTracking] Move matchSimpleRecurrence out of line (details)
  147. [libc][NFC] Make x86_64 fenv functions msan safe. (details)
  148. [libc][Obvious] Add a file which was missed in 001a12ed59c354aa759ff3e104748c36803cfaa2. (details)
  149. [Docs][Windows Itanium] Add a How-To document for Windows Itanium. (details)
  150. [build][modules] Fix ObjCARCUtil.h modularization (details)
  151. Revert "[Docs][Windows Itanium] Add a How-To document for Windows Itanium." (details)
  152. [AMDGPU] Cleanup test checks. NFC. (details)
  153. [llvm-readelf] Support dumping the BB address map section with --bb-addr-map. (details)
  154. [NFC][AMDGPU] Correct typo in DWARF Extensions For Heterogeneous Debugging (details)
  155. Move ObjCARCUtil.h back to llvm/Analysis (details)
  156. Read NumBlocks as uint64_t. (details)
  157. [AMDGPU] Remove SI_MASK_BRANCH (details)
  158. Revert "Run non-filechecked commands in update_cc_test_checks.py" (details)
  159. Reland: [Docs][Windows Itanium] Add a How-To document for Windows Itanium. (details)
  160. [LangRef] mention that the lifetime intrinsics' description in LangRef isn't everything (details)
  161. [llvm-objdump][MachO] Add support for dumping function starts (details)
  162. [AMDGPU] Remove unused function opcodeEmitsNoInsts() (details)
  163. [llvm-objcopy][MachO] Add support for --keep-undefined (details)
  164. [docs] Fix llvm-objcopy.rst (details)
  165. [RISCV][MC] Fix nf encoding for vector ld/st whole register (details)
  166. [DebugInfo] Do not error on unsupported CIE version (details)
  167. [lld][MachO] Add support for LC_FUNCTION_STARTS (details)
  168. [lld][MachO] Fix function starts test (details)
  169. Revert "[lld][MachO] Fix function starts test" (details)
  170. Revert "[lld][MachO] Add support for LC_FUNCTION_STARTS" (details)
  171. Move LLVM::FMFAttr definition to TableGen (NFC) (details)
  172. [CodeGenPrepare] Fix isIVIncrement (PR49466) (details)
  173. [lld][MachO] Add support for LC_FUNCTION_STARTS (details)
  174. [lldb] Remove duplicated ThreadPlanStepOverBreakpoint comment (details)
  175. [CSSPGO] Always use callsite samples as callsite probe counts. (details)
  176. [mlir][python] Reorganize MLIR python into namespace packages. (details)
  177. [mlir][linalg] refactor the result handling during vectorization. (details)
  178. [nfc] llvm-dwarfdump: DWARFAbbreviationDeclaration::AttributeSpec -> DWARFAttribute (details)
  179. [mlir][CMAKE] Fix cross-compilation build (details)
  180. clang-format: use `pb` as a canonical raw string delimiter for google style (details)
  181. [mlir] make MLIRPresburger depend on MLIRIR (details)
  182. [mlir] move LLVM target import header and tests (details)
  183. llvm-dwarfdump: Fix DWARF-5 DW_FORM_implicit_const (used by GCC) (details)
  184. [flang] update character tests to use gtest (details)
  185. [lldb] Fix DWARF-5 DW_FORM_implicit_const (used by GCC) (details)
  186. [DebugInfo] Handle dbg.values with multiple variable location operands in ISel (details)
  187. Fix a crash in DWARFUnit::getInlinedChainForAddress in case of unexpected DWARF information. (details)
  188. [sanitizers] fix wrong enum of memory_order for mips (details)
  189. [Clang][Sema] Warn when function argument is less aligned than parameter (details)
  190. [IR] Introduce llvm.experimental.vector.splice intrinsic (details)
  191. [sanitizers] Enable runtime vma for mips64 in buildgo.sh (details)
  192. [CodeGen] Report a normal instead of fatal error for label redefinition (details)
  193. [clangd] Move logging out of LSPTest base class into a separate one. (details)
  194. [compiler-rt] FuzzedDataProvider: Add missing include (details)
  195. M68kInstrInfo::AnalyzeBranchImpl - fix MSVC build. NFCI. (details)
  196. [OpenCL] Fix builtins that require multiple extensions (details)
  197. [InstCombine] Simplify phis with incoming pointer-casts. (details)
  198. [X86][AMX] Add test case for combining AMX bitcast. (details)
  199. [X86][NFC] Adding one flag to imply whether the instruction should check the predicate when compress EVEX instructions to VEX encoding. (details)
  200. [lld][MachO] Add missing test requirements (details)
  201. [DebugInfo] Emit DBG_VALUE_LIST from ISel (details)
  202. [DebugInfo] Add tests for ISel handling of variadic debug values (details)
  203. [Orc] Fix working memory buffer for section mapping in ELFDebugObject (details)
  204. [Orc] Test DebugObjectManagerPlugin fills in load-address for .text section of in-memory ELF debug object (details)
  205. [Orc] Always check mapped sections for ELFDebugObject are in bounds of working memory buffer (details)
  206. [ExtVectorType] Support conditional select operator for C++. (details)
  207. [lldb][JITLoaderGDB] Test debug support in JITLink (details)
  208. [X86][NFC] Move instruction selection of the x86_tdpb[s,u]d_internal and x86_tilezero_internal to X86InstrAMX.td (details)
  209. [mlir] Use affine.apply when distributing to processors (details)
  210. [InstCombine] fold min/max intrinsics with not ops (details)
  211. [X86] canonicalizeShuffleWithBinOps - add binary shuffle handling (details)
  212. [lldb] Fix a bug in D96779 (shared lib directory logic) (details)
  213. [clangd] Add a Filesystem that overlays Dirty files. (details)
  214. [clangd][NFC] Silence some buildbot warnings after 0250b053 (details)
  215. [libcxx] [test] Adjust separator form in fs.op.absolute for libc++ on windows (details)
  216. [clang][sema][NFC] Remove a superfluous semicolon (details)
  217. [ARM] Add comment explaining stack frame layout (details)
  218. [flang][driver] Refine tests for module search directories (details)
  219. [OpenMP] libomp: eliminate pause from atomic CAS loops (details)
  220. [AIX] do not emit visibility attribute into IR when there is -mignore-xcoff-visibility (details)
  221. [Sema] Fix diagnostics for one-byte length modifier (details)
  222. [clang] Fix crash when creating deduction guide. (details)
  223. [InstCombine] add tests for min/max intrinsics with not+constant; NFC (details)
  224. [InstCombine] canonicalize 'not' op after min/max intrinsic (details)
  225. [DebugInfo] Handle multiple variable location operands in IR (details)
  226. [RISCV] Make the hasStdExtM() check in RISCVInstrInfo::getVLENFactoredAmount emit a diagnostic rather than an assert. (details)
  227. [RISCV] Optimize fixed vector ABS. Fix crash on scalable vector ABS for SEW=64 with RV32. (details)
  228. [RISCV] Don't modify the SEW immediate on the V extension pseudo instructions after inserting VSETVLI. (details)
  229. [clang] unbreak Index/preamble-reparse-changed-module.m with LLVM_APPEND_VC_REV=NO after 46d4d1fea401 (details)
  230. Revert "[build][modules] Fix ObjCARCUtil.h modularization" (details)
  231. [RISCV] Add support for fixed vector reductions. (details)
  232. [DebugInfo] Add replaceArg function to simplify DBG_VALUE_LIST expressions (details)
  233. [FastISel] Don't trivially kill extractvalues (PR49467) (details)
  234. [AMDGPU] Fix the dead frame indices during custom spill lowering. (details)
  235. [MC] Change ELFOSABI_NONE to ELFOSABI_GNU for SHF_GNU_RETAIN (details)
  236. [AArch64][GlobalISel] Lower scalar G_{SMIN, SMAX, UMIN, UMAX}. (details)
  237. [RISCV] Add support for VECTOR_REVERSE for scalable vector types. (details)
  238. [NFC] Use llvm::SmallVector to workaround XL compiler problem on AIX (details)
  239. [cmake] Link socket/nsl on SunOS in llvm-jitlink (details)
  240. [lldb] Use lit.with_system_environment to propagate env variables (details)
  241. [lldb] Propagate XDG_CACHE_HOME environment variable to tests (details)
  242. [lldb] Update crashlog script for JSON changes (details)
  243. Define __GCC_HAVE_DWARF2_CFI_ASM if applicable (details)
  244. [Support][test] Unconditionally use setenv macro when compiling on Windows (details)
  245. [lldb][gui] Fix uninitialized variable in SourceFileWindowDelegate. (details)
  246. [DebugInfo] Process DBG_VALUE_LIST in LiveDebugValues (details)
  247. [AMDGPU] Refactor AMDGPUTargetStreamer::EmitCodeEnd (details)
  248. [AArch64][GlobalISel] Add combine for extract_vector_elt(build_vector, cst) (details)
  249. [cgp] group related code together [nfc] (details)
  250. [GlobalISel] Fold away G_BUILD_VECTOR with all elements extracted. (details)
  251. [AArch64][GlobalISel] Form G_DUPLANE32 for <2 x s32> shufflevectors in lowering. (details)
  252. scudo: Add support for tracking stack traces of secondary allocations. (details)
  253. Rework LLVM Dialect LoopOptions attribute (details)
  254. Switch generatedTypeParser/generatedAttributeParser to return an OptionalParseResult (details)
  255. [tests] precommit test for an upcoming change (details)
  256. [cgp] improve robustness of uadd/usub transforms (details)
  257. Move some attribute diagnostic helper functions; NFC. (details)
  258. [mlir] Default for gpu-binary-annotation option. (details)
  259. [test] Fix debug-info-macro.c (details)
  260. Revert D97743 "Define __GCC_HAVE_DWARF2_CFI_ASM if applicable" (details)
  261. [dfsan] Update store.ll test (details)
  262. Add requirement for aarch64-registered-target to test change added in 42e3f97a9dd3a439f63a733c4ee909cba6b77e49. (details)
  263. [DSE] Add test cases with memory intrinsics and varying size values. (details)
  264. [flang] Sort symbols by creation order (details)
  265. [SCEV] Infer known bits from known sign bits (details)
  266. [test] precommit tests from D98222 (details)
  267. [profile] Fix InstrProfGetRangeRepValue to use UINT64_C (details)
  268. Revert "[InstCombine] Add simplification of two logical and/ors" (details)
  269. [P10] [Power PC] Exploiting new load rightmost vector element instructions. (details)
  270. Add default LoopOptionsAttrBuilder constructor and method to check if empty() (NFC) (details)
  271. [clang][ObjC] allow the use of NSAttributedString * return type with format_arg attribute (details)
  272. [clangd][NFC] Use std::string::replace in SourceCode:applyChange. (details)
  273. [cmake] Enable -Werror=return-type (details)
  274. [tests] add tests to show effects of D98122 (details)
  275. [ARM] Test for predicated scalar memops. NFC (details)
  276. Fix LLVM Dialect LoopOptionsAttr round-tripping: the keywords were missing in the output (details)
  277. [dfsan] Tracking origins at memory transfer (details)
  278. [SLP] remove dead null check; NFC (details)
  279. Revert "[llvm-cov] reset executation count to 0 after wrapped segment" (details)
  280. [clang][driver] Support Darwin SDK names with an optional prefix in their name (details)
  281. PR49465: Disallow constant evaluation of a call to operator delete(nullptr). (details)
  282. [mlir][IR] Add a new SymbolUserMap class (details)
  283. [mlir][IR] Add an Operation::eraseOperands that supports batch erasure (details)
  284. [llvm] Change DSOLocalEquivalent type if the underlying global value type changes (details)
  285. Fix Flang build after MLIR API changes around `generatedTypeParser` (details)
  286. Fix MLIR test post 890afad954d (details)
  287. [MemoryDependence] Fix invariant group store (details)
  288. Remove unused variable (rolling it into an assert) (details)
  289. Log in SetPrivateState when unwind logging enabled (details)
  290. [coro async] Transfer the original function's attributes to the clone (details)
  291. [Android] Default to --rtlib=compiler-rt (details)
  292. [lld-macho] implement options -(un)exported_symbol(s_list) (details)
  293. [tests] add a few more tests for D98122 (details)
  294. [MC][ELF] Fix "enumeral and non-enumeral type in conditional expression" warning (NFC) (details)
  295. [clang][APINotes] Fix gcc Wunused-function warning (NFC) (details)
  296. [rs4gc] common bdv operand visitation [nfc] (details)
  297. [JITLink] Assert that segment mapping does not exceed allocation size. (details)
  298. [JITLink] Add support for STT_NOTYPE symbols to ELF/x86-64. (details)
  299. [xray] Fix xray document spelling (details)
  300. [SampleFDO] Support enabling -funique-internal-linkage-name. (details)
  301. [lld-macho][NFC] when reasonable, replace auto keyword with type names (details)
  302. [lld-macho][NFC] drop opt:: when already using llvm::opt (details)
  303. [JITLink] Add a null-terminator to eh-frame sections on ELF/x86-64. (details)
  304. Define __GCC_HAVE_DWARF2_CFI_ASM if applicable (details)
  305. [test] Update tests (details)
  306. [WPD][ELF] Allow whole program devirtualization for version script localized symbols (details)
  307. [compiler-rt] Normalize i?86 to i386 and armv* to arm for COMPILER_RT_DEFAULT_TARGET_ARCH (details)
  308. [clangd] Treat __GCC_HAVE_DWARF2_CFI_ASM the same as isWrittenInBuiltinFile macros (details)
  309. [PowerPC] Reduce symmetrical swaps for lane-insensitive vector ops (details)
  310. [-Wcompletion-handler] Extend list of detected conventions (details)
  311. [analyzer] Fix StdLibraryFunctionsChecker performance issue (details)
  312. [clangd] Enable reflection for clangd-index-server (details)
  313. [NFC] Remove duplicate isNoBuiltinFunc method (details)
  314. [ADT][NFC] Use `size_t` type for index in `indexed_accessor_range` (details)
  315. [InstSimplify] Add tests for pr49495 (NFC) (details)
  316. [NFC] [PowerPC] Remove unsafe-fp-math in some tests (details)
  317. [DSE] Add tests with memset & memcpy combinations and non-const sizes. (details)
  318. [mlir][linalg] Add support for using scalar attributes in TC ops. (details)
  319. [mlir] Model MemRef memory space as Attribute (details)
  320. [OpenCL] Set calling convention for -fdeclare-opencl-builtins (details)
  321. [DSE] Handle memcpy/memset with equal non-const sizes. (details)
  322. [mlir] Add base class for GpuKernelToBlobPass (details)
  323. [sanitizers] Fix typo in ca9815fc247c (details)
  324. [asan][tests] Handle FreeBSD in large_func_test and use-after-delete (details)
  325. [compiler-rt] Silence a deprecation warning on FreeBSD (details)
  326. [SLC] Baseline test for missed strcpy optimizations in non-zero AS (details)
  327. [SLC] Simplify strcpy and friends with non-zero address spaces (details)
  328. Avoid shuffle self-assignment in EXPENSIVE_CHECKS builds (details)
  329. [analyzer][docs][NFC] Fix typo in checkers.rst (details)
  330. [analyzer][NFC] Add more tests for ArrayBoundCheckerV2 (details)
  331. [analyzer][CTU][NFC] Add an extra regression test (details)
  332. [analyzer] Crash fix for alpha.cplusplus.IteratorRange (details)
  333. [flang][driver] Merge test/Driver and test/Flang-Driver directories (details)
  334. [analyzer][CTU][NFC] Fix "Add an extra regression test" (details)
  335. Moved getStaticLoopRanges and getStaticShape methods to LinalgInterfaces.td to add static shape verification (details)
  336. [mlir] simplify type constraints in AVX512 dialect (details)
  337. [mlir] squash LLVM_AVX512 dialect into AVX512 (details)
  338. [flang][driver] Add `-fdebug-dump-parsing-log` (details)
  339. [mlir] Update comments in ArmNeon dialect. NFC (details)
  340. [DebugInfo] Process DBG_VALUE_LIST in LiveDebugVariables (details)
  341. [Statepoint Lowering] Fix the crash with gc.relocate in a separate block (details)
  342. [NFC] Unify FIME with FIXME in comments (details)
  343. Revert "[clangd] Enable reflection for clangd-index-server" (details)
  344. GlobalISel: Try to combine G_[SU]DIV and G_[SU]REM (details)
  345. [AArch64] Add missing intrinsics for scalar FP rounding (details)
  346. [clangd] Use Dirty Filesystem for cross file rename. (details)
  347. [mlir] fix typo in OpDefinitions.md (details)
  348. [DebugInfo] Add DWARF emission for DBG_VALUE_LIST (details)
  349. [mlir][CMAKE] Fix build with BUILD_SHARED_LIBS=ON (details)
  350. [lld/mac] Implement support for -mark_dead_strippable_dylib (details)
  351. [lld/mac] warn on -install_name without -dylib (details)
  352. Revert "[DebugInfo] Add DWARF emission for DBG_VALUE_LIST" (details)
  353. [SystemZ][NFC] Renaming of ELF specific variables. (details)
  354. [AArch64][compiler-rt] Add Pointer Authentication support for VFORK. (details)
  355. [flang][fir] Upstream the pre-FIR tree changes. (details)
  356. Reapply "[DebugInfo] Add DWARF emission for DBG_VALUE_LIST" (details)
  357. [AMDGPU] Fix isReallyTriviallyReMaterializable for V_MOV_* (details)
  358. [DSE] Add tests that require phi translation to be removed. (details)
  359. [DSE] Handle memmove with equal non-const sizes (details)
  360. [flang][driver] Revert RUN-line change (details)
  361. [dfsan] Tracking origins at phi nodes (details)
  362. [DebugInfo] Handle DBG_VALUES with multiple variable location operands in MIR (details)
  363. Revert "[LoopInterchange] Replace tightly-nesting-ness check with the one from `LoopNest`" (details)
  364. [RISCV] Manually split vector operands to VECREDUCE when handling vXi64 vectors on RV32. (details)
  365. [InstCombine][SimplifyLibCalls] An extra sqrtf was produced because of transformations in optimizePow function (details)
  366. [lldb] [Process/FreeBSD] Introduce aarch64 hw break/watchpoint support (details)
  367. [lldb] [test] Update XFAILs for FreeBSD/aarch64 (details)
  368. [flang] Fix call to CHECK() on overriding an erroneous type-bound procedure (details)
  369. [compiler-rt] Fix stale incremental builds when using `LLVM_BUILD_EXTERNAL_COMPILER_RT=ON`. (details)
  370. [RISCV] Starting fixing issues that prevent us from testing vXi64 intrinsics on RV32. (details)
  371. [RISCV][SelectionDAG] Introduce an ISD::SPLAT_VECTOR_PARTS node that can represent a splat of 2 i32 values into a nxvXi64 vector for riscv32. (details)
  372. [DebugInfo][NFC] Refactor BinOp+GEP salvaging in salvageDebugInfoImpl (details)
  373. [clang] Don't assert in EmitAggregateCopy on trivial_abi types (details)
  374. [PowerPC] Implement patterns for PC-Rel zextload/extload byte loads (details)
  375. [mlir][Vector][Affine] Improve affine vectorizer algorithm (details)
  376. [mlir][Affine][Vector] Add initial support for 'iter_args' to Affine vectorizer. (details)
  377. [NFC] Fix compiler warnings (details)
  378. [lldb] Fix PushPlan to set subplan to private (details)
  379. [RuntimeDyld] Support more relocations (details)
  380. Revert "[mlir][Affine][Vector] Add initial support for 'iter_args' to Affine vectorizer." (details)
  381. Revert "[mlir][Vector][Affine] Improve affine vectorizer algorithm" (details)
  382. [InstCombine] Regenerate test checks (NFC) (details)
  383. Remove original implementation of UniqueInternalLinkageNames pass. (details)
  384. [lld-macho][NFC] add const to pointer/reference induction variables of range-based for loops (details)
  385. [DSE] Extending isOverwrite to support offsetted fully overlapping stores (details)
  386. [dfsan] Update fast16labels.ll test (details)
  387. Run non-filechecked commands in update_cc_test_checks.py (details)
  388. [AMDGPU] Always expand system scope fp atomics on gfx90a (details)
  389. [AMDGPU] Disable SCC bit on fp atomics (details)
  390. [mlir][spirv] Define spv.Image Operation (details)
  391. [llvm-objcopy][NFC] replace class Buffer/MemBuffer/FileBuffer with streams. (details)
  392. [mlir] Remove unnecessary copying of pass options (details)
  393. Replace func name with regex in update_cc_test_checks (details)
  394. [VPlan] Support to widen select intructions in VPlan native path (details)
  395. [AArch64] Extend vecreduce -> udot handling to v8i8 (details)
  396. [NFC] Fix a compiler warning (details)
  397. [flang][driver] Formatting OpenMP sema check as per clang-format (details)
  398. [lldb/Platform] Skip very slow xcrun queries for simulator platforms, NFC (details)
  399. [lldb] Ignore linkage diagnostic for LLDBSwigPythonBreakpointCallbackFunction (NFC) (details)
  400. [Attributor] Attributor call site specific AAValueConstantRange (details)
  401. [AArch64] Extend vecreduce -> udot handling to mla reductions (details)
  402. llvm-lto: default Relocation Model should be selected by the TargetMachine. (details)
  403. Add noreturn attribute to non-returning functions (details)
  404. [nfc] [lldb] Remove variable ranges_base in DWARFUnit::AddUnitDIE (details)
  405. [AST] Add generator for source location introspection (details)
  406. Revert "[cmake] Enable -Werror=return-type" (details)
  407. [mlir] Add polynomial approximation for math::Log2 (details)
  408. Update __is_unsigned builtin to match the Standard. (details)
  409. Revert "Replace func name with regex in update_cc_test_checks" (details)
  410. Workaround a -Wmisleading-indentation warning (details)
  411. Re-land "[PDB] Defer relocating .debug$S until commit time and parallelize it" (details)
  412. Revert "Workaround a -Wmisleading-indentation warning" (details)
  413. Revert "[AST] Add generator for source location introspection" (details)
  414. [gn build] Port 4f16e177e104 (details)
  415. [clang][Driver] Expose -fexperimental-relative-c++-abi-vtables flag (details)
  416. [mlir] Optimize the implementation of RegionDCE (details)
  417. [mir] Change 'undef' for MMO base addresses to 'unknown-address' (details)
  418. [ValueMapper] Add debug output for metadata remapping (details)
  419. [dfsan] Update atomics.ll test (details)
  420. [AMDGPU] Always create Stack Object for reserved VGPR (details)
  421. [InstSimplify] Pass SimplifyQuery to computePointerICmp (NFC) (details)
  422. [llvm] Fix thinko in getVendorSignature(), where expected values of  ECX and EDX were flipped for the AMD case. (details)
  423. [Clang][RISCV] Add custom TableGen backend for riscv-vector intrinsics. (details)
  424. [gn build] (manually) Port d6a0560bf258 (details)
  425. Resolve unused variable warning (NFC) (details)
  426. WIP (details)
  427. Revert "WIP" (details)
  428. [RISCV] Add v2i64 _vi_ and _iv_ test cases to fixed-vectors-int.ll since we no longer crash. (details)
  429. [RISCV] Add additional checking to tablgen RISCVVEmitter requested in D95016. (details)
  430. [mlir][AVX512] Implement sparse vector dot product integration test. (details)
  431. [RISCV] Merge fixed-vectors-int-splat-rv32.ll and fixed-vectors-int-splat-rv64.ll. (details)
  432. Rename top-level LICENSE.txt files to LICENSE.TXT (details)
  433. [tsan] Fix aarch64-*-linux after D86377 (details)
  434. [InstrProfiling] Don't generate __llvm_profile_runtime_user (details)
  435. [sanitizer] Change NanoTime to use clock_gettime on non-glibc (details)
  436. [SEH] Fix capture of this in lambda functions (details)
  437. Fix unused lambda capture in a non-asserts build (details)
  438. [mlir] Add NVVM to CUBIN conversion to mlir-opt (details)
  439. [MLIR] Add canoncalization for `shape.is_broadcastable` (details)
  440. [Debugify][OriginalDIMode] Export the report into JSON file (details)
  441. [AArch64][compiler-rt] Fix PAC instructions for older compilers (details)
  442. [CGBuilder] Remove type-less CreateAlignedLoad() APIs (NFC) (details)
  443. [mlir] Change test-gpu-to-cubin to derive from SerializeToBlobPass (details)
  444. Save and restore previous terminal after setting the terminal for checking if terminal supports colors. (details)
  445. [lldb] Remove implicit_const_form_support.test (details)
  446. Reapply [LICM] Make promotion faster (details)
  447. [MCA] Support in-order CPUs with MicroOpBufferSize=1 (details)
  448. [OpenCL] Add missing atomic_xchg overload (details)
  449. [clang][ARM] Refactor ComputeLLVMTriple code for ARM (details)
  450. Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warnings. NFCI. (details)
  451. [IPO] Fix EXPENSIVE_CHECKS assert added at D83744. NFCI. (details)
  452. [FileCheck] Fix naming of OverflowErrorStr var (details)
  453. Fix MSVC "'type cast': conversion from 'unsigned int' to 'const llvm::CallBase *' of greater size" warning. NFCI. (details)
  454. [mlir] Fix invalid hoisting of dependent allocs in buffer hoisting pass. (details)
  455. [Statepoint Lowering] Handle the case with several gc.result (details)
  456. [clangd] Group filename calculations in SymbolCollector, and cache mroe. (details)
  457. [mlir] Correct verifyCompatibleShapes (details)
  458. [X86] Don't attempt to fold sub(C1, xor(X, C2)) with opaque constants (details)
  459. [clangd] Drop explicit specifier on define out-of-line (details)
  460. [clangd] Introduce a CommandLineConfigProvider (details)
  461. [clangd] Fix buildbots without grpc enabled (details)
  462. [flang][driver] Add -fdebug-module-writer option (details)
  463. Revert rGcd938ab162b0ac560dd0e9fee290980c7e0e47e5 "[X86] canonicalizeShuffleWithBinOps - add X86ISD::PSHUFB handling." (details)
  464. [compiler-rt] Set CMAKE_TRY_COMPILE_TARGET_TYPE to STATIC_LIBRARY when building builtins standalone (details)
  465. [PowerPC] Fix infinite loop in peephole CR optimization (PR49509) (details)
  466. Revert "[AArch64][SVE] Allow accesses to SVE stack objects to use frame pointer" (details)
  467. [DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands (details)
  468. [AArch64][SVE] Add fixed/scalable lowering of FMAXIMUM/FMINIMUM ISD nodes (details)
  469. [OpaquePtrs] Remove some uses of type-less CreateLoad APIs (NFC) (details)
  470. [Sema] Add some basic lambda capture fix-its (details)
  471. [PowerPC] Fix multi-use case for swap reduction (details)
  472. [Transforms] SampleProfileLoaderBaseImpl<BT>::getFunctionLoc - fix Wdocumentation warnings. NFCI. (details)
  473. [Orc] Deallocate debug objects explicitly when destroying the DebugObjectManagerPlugin (details)
  474. [OpenCL][Docs] Add guidelines for new extensions and features. (details)
  475. [lld-macho] minimal TimeTrace support (details)
  476. [PowerPC] Exploit paddi instruction on Power 10 for constant materialization (details)
  477. [llvm-mca] Fix uninitialized variable in InOrderIssueStage constructor warning. NFCI. (details)
  478. Revert "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" (details)
  479. [Sema] Use castAs<> instead getAs<> for dereferenced pointer casts. NFCI. (details)
  480. [OpenMP] Restore backwards compatibility for libomptarget (details)
  481. [lldb] Add missing debugserver dependency to check-lldb (details)
  482. [flang][OpenMP] Add semantic check for occurrence of multiple list items in aligned clause for simd directive (details)
  483. AMDGPU/GlobalISel: Add more tests for byval arguments (details)
  484. GlobalISel: Fix off by one in finding explicit byval alignment (details)
  485. AMDGPU/GlobalISel: Improve private addressing mode matching (details)
  486. [mlir] Add LLVM loop codegen options to control software pipelining (details)
  487. [mlir] Introduce data layout modeling subsystem (details)
  488. [mlir] fix cmake build (details)
  489. [ValueTypes][RISCV] Add MVT for v1f16. (details)
  490. [RISCV] Support extract_vector_elt for fixed and scalable masked registers. (details)
  491. [ELF] Support . and $ in symbol names in expressions (details)
  492. [libcxx] [test] Use a string_view of the native path type in the concat test (details)
  493. [libcxx] Avoid intermediate string objects for substrings in windows operator/= (details)
  494. [ELF] Simplify isValidCIdentifier. NFC (details)
  495. [Polly] Remove uses of type-less CreateLoad() APIs (NFC) (details)
  496. [mlir] Remove uses of type-less CreateLoad() APIs (NFC) (details)
  497. [RISCV] Handle vmv.x.s intrinsic for i64 vectors on RV32. (details)
  498. [IRBuilder] Deprecate CreateLoad APIs with implicit type (details)
  499. [PGO] Fix two issues in PGOMemOPSizeOpt. (details)
  500. [AArch64] Fix -Wunused-but-set-variable in GCC non-debug build (details)
  501. [ARM] Improve WLS lowering (details)
  502. [ARM] Move t2DoLoopStart reg alloc hint (details)
  503. [RISCV] Support fixed vector copysign. (details)
  504. [UnitTests] Remove uses of deprecated CreateLoad() API (details)
  505. [Driver] Drop $sysroot/usr special case from Gentoo gcc-config detection (details)
  506. [SamplePGO] Skip inlinee profile scaling for sample loader inlining (details)
  507. [flang] Handle type-bound procedures with alternate returns (details)
  508. [libcxx] [test] Disable a test regarding error behaviour for excessively long paths on windows (details)
  509. [lld-macho][nfc] Remove `MachO::` prefix where possible (details)
  510. [lld-macho][nfc] Create Relocations.{h,cpp} for relocation-specific code (details)
  511. [lld-macho] Fix handling of X86_64_RELOC_SIGNED_{1,2,4} (details)
  512. [lld-macho][nfc] Refactor subtractor reloc handling (details)
  513. [lld-macho] Avoid requiring shell in tests (details)
  514. [lld-macho] Unbreak build breakage from rG1752f2850685 (details)
  515. [gn build] Port 5433a79176a3 (details)
  516. [mlir][Vector][Affine] Fix heap-use-after-free in vectorizer (details)
  517. [lldb] Fix the man page build (details)
  518. [MIPS] Fix lowering of irregular vector arguments (details)
  519. [SelectionDAG] Improve scalarization of irregular vector types (details)
  520. [libcxx] Test accessing a directory on windows that gives "access denied" errors (details)
  521. [IndirectCallPromotion] Don't strip ".__uniq." suffix when it strips (details)
  522. [clangd] Add config block for Completion and option for AllScopes (details)
  523. [clangd] Make ProjectAwareIndex optionally sync (details)
  524. [mlir][StorageUniquer] Properly call the destructor on non-trivially destructible storage instances (details)
  525. [libc++] [docs] Add link to clang status page for C++2b and fix anchor for C++20. (details)
  526. [SLP] Fix crash when matching associative reduction for integer min/max. (details)
  527. [InstrProfiling] Generate runtime hook for ELF platforms (details)
  528. [Attributor] Don't access pointer elem type in constructPointer (NFC) (details)
  529. [compiler-rt] Partially revert 8bd2722f65cfd7883ed9769f7bad3ff50e4c6905 (details)
  530. [dfsan] Disable testing origin tracking on non x86_64 arch (details)
  531. [AMDGPU] Remove dead MTBUF patterns (details)
  532. Reland: [mlir][Vector][Affine] Improve affine vectorizer algorithm (details)
  533. [Matrix] Add support for matrix-by-scalar division. (details)
  534. [PDB] Improve warning for corrupt debug info (details)
  535. Reland: [mlir][Affine][Vector] Add initial support for 'iter_args' to Affine vectorizer. (details)
  536. Fix use of deprecated IRBuilder::CreateLoad in Kaleidoscope (details)
  537. [RISCV] Add test cases for fixed vector bitreverse, bswap, ctlz, cttz, and ctpop. (details)
  538. [crt][fuzzer] Fix up various numeric conversions (details)
  539. [AMDGPU] Free reserved VGPR if no SGPR spill (details)
  540. [AMDGPU] Don't check hasStackObjects() when reserving VGPR (details)
  541. Replace use of OperationState with builder::create in GPU Kernel Outlining (NFC) (details)
  542. [AMDGPU] Restrict image_msaa_load to MSAA dimension types (details)
  543. [asan] disable no-fd test on darwin (details)
  544. [RuntimeDyld] Speedup resolution of relocations to external symbols (details)
  545. [NFC] Test commit. Add empty lines. (details)
  546. Move (llvm-original-di-preservation) test example output into the Inputs directory (since it's an input to the test execution) (details)
  547. void cast to suppress -Wunused-variable in non-asserts build (details)
  548. [NPM][CGSCC] FunctionAnalysisManagerCGSCCProxy: do not clear immutable function passes (details)
  549. [mlir][Vector] Lowering of transfer_read/write to vector.load/store (details)
  550. [compiler-rt] PR#39514 Support versioned llvm-symbolizer binaries (details)
  551. Revert "[NPM][CGSCC] FunctionAnalysisManagerCGSCCProxy: do not clear immutable function passes" (details)
  552. [compiler-rt][asan] Make wild-pointer crash error more useful (details)
  553. [AMDGPU] Do not annotate an else branch if there is a kill (details)
  554. [libFuzzer] Add attribute noinline on Fuzzer::ExecuteCallback(). (details)
  555. Revert "[compiler-rt][asan] Make wild-pointer crash error more useful" (details)
  556. BPF: provide better error message for unsupported atomic operations (details)
  557. [libcxx] adds concept std::movable (details)
  558. [libcxx] adds concept std::copyable (details)
  559. [RISCV] Return false from isShuffleMaskLegal except for splats. (details)
  560. [libc][NFC] Move the template implementation of integer_abs to __support. (details)
  561. [Debug-Info] Add names for the debug line prologue. (details)
  562. Disable unique linkage suffixes ifor global vars until demanglers can be fixed. (details)
  563. [FIX] Allow non-constant assume operand bundle operands. (details)
  564. [Utils] Check for more global information in update_test_checks (details)
  565. [OpenMP] Do not propagate match extensions to nested contexts (details)
  566. [OpenMP] Introduce the `disable_selector_propagation` variant selector trait (details)
  567. [OpenMP][DeviceRTL] Extract shuffle idiom and port it to declare variant (details)
  568. [OpenMP][NFC] Use `AsyncInfo` as the variable name for a `__tgt_async_info` (details)
  569. [Attributor][NFC] Update tests after D94741 (details)
  570. [Attributor] Derive `willreturn` based on `mustprogress` (details)
  571. Revert "[OpenMP] Introduce the `disable_selector_propagation` variant selector trait" (details)
  572. Revert "[OpenMP] Do not propagate match extensions to nested contexts" (details)
  573. [libcxx] adds concept std::semiregular (details)
  574. [mlir] Fix ConstantOp verifier (details)
  575. [ConstantFold] Handle undef/poison when constant folding smul_fix/smul_fix_sat (details)
  576. [InstSimplify] Simplify smul.fix and smul.fix.sat (details)
  577. [mlir] fix memory leak on failure path in parser (details)
  578. [OpenCL] Refactor diagnostic for OpenCL extension/feature (details)
  579. [RISCV] Fix up stale VECREDUCE comments. NFC. (details)
  580. [RISCV] Optimize INSERT_VECTOR_ELT sequences (details)
  581. [Matrix] Add missing newline to appease sphinx. (details)
  582. [libcxx] Move Linaro 32 bit armv bots to buildkite (details)
  583. Revert "Mark gc.relocate and gc.result as readnone" (details)
  584. [PPC] Fix static analyzer / UBSAN warnings about out of range shifts. NFCI. (details)
  585. [builtins] Fix value of ARM_INEXACT (details)
  586. [PPC] Fix UBSAN warning about out of range shift. NFCI. (details)
  587. Add support for digit separators in C2x. (details)
  588. Revert "[InstrProfiling] Don't generate __llvm_profile_runtime_user" (details)
  589. [analyzer][solver] Prevent infeasible states (PR49490) (details)
  590. [Orc] Fix race condition in DebugObjectManagerPlugin (details)
  591. [SimplifyCFG] avoid sinking insts within an infinite-loop (details)
  592. [mlir] Remove mlir-cuda-runner (details)
  593. [LV] Account IV recipes being uniform in VPTransformState::get(). (details)
  594. [LV] Fix name in CHECK pattern after fb3ca7076 (details)
  595. [NFC] Use StringRef instead of const char* for AsmPrinter (details)
  596. AMDGPU/GlobalISel: Cleanup call lowering sequence (details)
  597. AArch64/GlobalISel: Don't use common prefix in test (details)
  598. GlobalISel: Partially fix handling of byval arguments (details)
  599. GlobalISel: Fix marking byval arguments as immutable (details)
  600. Test cases for rem-seteq fold with illegal types (details)
  601. Revert "[IndirectCallPromotion] Don't strip ".__uniq." suffix when it strips" (details)
  602. [X86] Provide lighter weight getTargetShuffleMask wrapper. NFCI. (details)
  603. [X86][AVX] Insert zeros byte elements into 256/512-bit vectors using shuffle/and (details)
  604. [clang] Use Constant::getAllOnesValue helper. NFCI. (details)
  605. Revert "Revert "[compiler-rt][asan] Make wild-pointer crash error more useful"" (details)
  606. [lldb] Remove unused StackFrame::TrackGlobalVariable (details)
  607. [PowerPC] Add more missing overloads to altivec.h (details)
  608. [libcxx] adds concept std::regular (details)
  609. [lit] rewrap a few lines to 80 columns (details)
  610. [AsmParser][SystemZ][z/OS] Introducing HLASM Comment Syntax (details)
  611. [gn build] (manually) port bcdd40f802a5 (details)
  612. [clang] Mark re-injected tokens appropriately during pragma handling (details)
  613. Add Semantic check for Flang OpenMP 4.5 - 2.15.3.6 Reduction clause (details)
  614. [NFC] Use llvm::raw_string_ostream instead of std::stringstream (details)
  615. [mlir] fix a memory leak in NestedPattern (details)
  616. [FileCheck] Add support for hex alternate form in FileCheck (details)
  617. [AMDGPU] Fix -amdgpu-inline-arg-alloca-cost (details)
  618. [NFC] Fix "unused parameter" error revealed in the Linux self-build. (details)
  619. [RISCV] Add support for scalable vector masked load/store. (details)
  620. [flang] Make the symbol count used for collating symbols static (details)
  621. [SCEV] Improve modelling for (null) pointer constants (details)
  622. [RISCV] Add test cases for failure to optimize select_cc with X < 1 or X > -1. NFC (details)
  623. [Clang][ARM] Reenable arm_acle.c test. (details)
  624. [mlir] Annotate functions used only in debug mode with LLVM_ATTRIBUTE_UNUSED (details)
  625. Revert "[Clang][ARM] Reenable arm_acle.c test." (details)
  626. Revert "[AsmParser][SystemZ][z/OS] Introducing HLASM Comment Syntax" (details)
  627. [RISCV] Teach normaliseSetCC to canonicalize X > -1 to X >= 0 and X < 1 to 0 >= X. (details)
  628. [OpaquePtrs] Remove some uses of type-less CreateGEP() (NFC) (details)
  629. [flang][OpenMP][FIX] Fix function to check nesting level of current directive. (details)
  630. Revert "[gn build] (manually) port bcdd40f802a5" (details)
  631. [OpenCL] Use spir target for CIndex tests for OpenCL. (details)
  632. [RISCV] Add test cases for masked load/store with all ones/zeros mask. NFC (details)
  633. [DAGCombiner] Use isConstantSplatVectorAllZeros/Ones instead of isBuildVectorAllZeros/Ones in visitMSTORE and visitMLOAD. (details)
  634. [InstCombine] add test for zext-of-icmps; NFC (details)
  635. [DebugInfo] Add an attribute to force type info to be emitted for types that are required to be complete. (details)
  636. [SystemZ][z/OS] Missing wchar functions libc++ (details)
  637. [tests] Cover a case brought up in review of D98222 (details)
  638. [libc] Introduce a full build mode CMake option. (details)
  639. [IndirectCallPromotion] Recommit "Don't strip ".__uniq." suffix when it strips (details)
  640. [libc] Adjust full build entrypoints for aarch64. (details)
  641. [MemCpyOpt] Add test for memcpy in loop (NFC) (details)
  642. Revert "[CodeGenPrepare] Fix isIVIncrement (PR49466)" (details)
  643. [libc][Obvious] Add string tests to non-full-build mode. (details)
  644. [lld-macho] Check address ranges when applying relocations (details)
  645. [lld-macho][nfc] Give every SyntheticSection a fake InputSection (details)
  646. [lld-macho] Only codesign by default on arm64 macOS (details)
  647. [libFuzzer] Use macro instead of __attribute__. (details)
  648. [AMDGPU] Fix getAlignedAGPRClassID (details)
  649. [gcov] Delete FreeBSD<10 (reached end of life for years) workaround (details)
  650. [gcov] Delete ancient MSVC workaround (details)
  651. [flang] Update DE/ALLOCATE statement runtime message processing (details)
  652. [lld-macho] Make range-check.s test more tolerant (details)
  653. [flang] Ensure pointer function results are acceptable variables (details)
  654. [clang] Improve diagnostics on implicitly deleted defaulted comparisons (details)
  655. [clang] Fix ICE on invalid type parameters for concepts (details)
  656. [mlir][sparse] disable nonunit stride dense vectorization (details)
  657. Replace func name with regex for update test scripts (details)
  658. Revert "Replace func name with regex for update test scripts" (details)
  659. Don't load kexts/kernels without dSYMs present (details)
  660. Replace func name with regex for update test scripts (details)
  661. [flang] Fix static build of flang (details)
  662. [Fuchsia] Add check-polly to CLANG_BOOTSTRAP_TARGETS (details)
  663. [JITLink][ORC] Make the LinkGraph available to modifyPassConfig. (details)
  664. [ORC] Fix some comments in the LLJITWithObjectLinkingLayerPlugin example. (details)
  665. [NFC] Adjust SmallVector.h header to workaround XL build compiler issue (details)
  666. [dfsan] Update shadow-args-zext.ll test (details)
  667. Temporairly evert "[SCEV] Improve modelling for (null) pointer constants" (details)
  668. [RISCV] Remove redundancy -mattr=+d in test file (details)
  669. change rvv frame layout (details)
  670. [MemorySSA] Don't bail on phi starting access (details)
  671. [MemCpyOpt] Add additional tests for memset+memcpy overwrite (NFC) (details)
  672. [MemCpyOpt] Don't generate zero-size memset (details)
  673. [MemCpyOpt] Use AA to check for MustAlias between memset and memcpy (details)
  674. [libomptarget] Add allocator support for target memory (details)
  675. [NFC][LSR] Add test case that from https://reviews.llvm.org/D98147#2623549 (details)
  676. [LSR] Don't try to fixup uses in 'EH pad' instructions (details)
  677. Reland [SCEV] Improve modelling for (null) pointer constants (details)
  678. [InstCombine] avoid creating an extra instruction in zext fold and possible inf-loop (details)
  679. [Attributor][fix] Remove problematic EXPENSIVE_CHECK (details)
  680. [Orc] Deallocate debug objects properly when removing resources from DebugObjectManagerPlugin (details)
  681. [DAGCombiner] Optimize 1-bit smulo to AND+SETNE. (details)
  682. [MemCpyOpt] Add additional tests for memcpy of undef (NFC) (details)
  683. [MemCpyOpt] Handle read from lifetime.start with offset (details)
  684. [compiler-rt] Use arm-specific builtins sources for arm/mingw builds (details)
  685. [SROA] Regenerate test checks (NFC) (details)
  686. [InstCombine] Update GEP tests (details)
  687. [lld-macho][nfc] Move list of section names into InputSection.h (details)
  688. [flang][OpenMP] Add support for getting parent context and clauses and modify the relevant sema checks to use the new functions. (details)
  689. [CGP] Consolidate logic for getIVIncrement and isIVIncrement (details)
  690. Restore fixed version of "[CodeGenPrepare] Fix isIVIncrement (PR49466)" (details)
  691. [libc][Obvious] Fix except flags reading overflow detected by asan. (details)
  692. X86: adjust the windows 64 calling convention for Swift (details)
  693. [X86][AMX] Prevent transforming load pointer from <256 x i32>* to x86_amx*. (details)
  694. [AST] Add generator for source location introspection (details)
  695. [Clang][ARM] Reenable arm_acle.c test. (details)
  696. [gn build] (manually) kind of merge d627a27d26 (details)
  697. CodeGen: Reorder MachinePointerInfo fields (details)
  698. [InstCombine] Restrict a GEP transform to avoid changing provenance (details)
  699. [AArch64] Expand build-vector-extract.ll tests to i8's. NFC (details)
  700. Remove unneeded targets dependency (details)
  701. Update python script per review comments (details)
  702. [X86] Add test for PR49587 (NFC) (details)
  703. Fix license headers (details)
  704. Revert "[AST] Add generator for source location introspection" (details)
  705. Revert "[gn build] (manually) kind of merge d627a27d26" (details)
  706. [M68k] Fix extract-section.py under Python 3 (details)
  707. [M68k] Make M68k TargetMachine use getter function (details)
  708. [M68k] Tidy up some bit shifting during code emission (details)
  709. [llvm] [dwarf] Fix DWARFListTableHeader::getOffsetEntry off-by-one (details)
  710. [InstSimplify] Add additional GEP transform tests & regenerate (details)
  711. [ArgPromotion] Copy additional metadata for loads. (details)
  712. [lldb] Move PlatformPOSIX::ConnectToWaitingProcesses to RemoteAwarePlatform (details)
  713. [AST] Add generator for source location introspection (details)
  714. [X86] Add -prefer-vector-width=256 tests for v16i8 smulo/umulo. (details)
  715. Ensure that cache variable is set when not building introspection (details)
  716. Revert "Ensure that cache variable is set when not building introspection" (details)
  717. Revert "[AST] Add generator for source location introspection" (details)
  718. [AST] Add generator for source location introspection (details)
  719. Attempt to fix ARM buildbot (details)
  720. [RISCV] Give an explicit error if 'generic' CPU is passed instead of 'generic-rv32' or 'generic-rv64'. Validate 64Bit feature against the triple. (details)
  721. Revert "Attempt to fix ARM buildbot" (details)
  722. Revert "[AST] Add generator for source location introspection" (details)
  723. [Canonicalizer] Process regions top-down instead of bottom up & reuse existing constants. (details)
  724. [RISCV] Support inline asm for vector instructions. (details)
  725. [m_Constant] Check #operands/results before hasTrait() (details)
  726. debuginfo-tests: Fix check-gdb-mlir-support build after MLIR API change in a4bb667d831c (details)
  727. [NFC][Inliner] Debugging support to print funtion size after each inlining. (details)
  728. [Test] Replace checks with auto-generated checks (details)
  729. [mlir][AVX512] Add while loop-based sparse vector-vector dot product variants. (details)
  730. [NFCI][ValueTracking] getUnderlyingObject(): assert that no cycles are encountered (details)
  731. [MLIR] Allow compatible shapes in `Elementwise` operations (details)
  732. Revert "[NFCI][ValueTracking] getUnderlyingObject(): assert that no cycles are encountered" (details)
  733. [MLIR] Add canonicalization for `shape.broadcast` (details)
  734. [AArch64][compiler-rt] Strip PAC from the link register. (details)
  735. Revert "[Canonicalizer] Process regions top-down instead of bottom up & reuse existing constants." (details)
  736. [X86][SSE] Attempt to merge single-op hops for slow targets. (details)
  737. Fix MSVC "switch statement contains 'default' but no 'case' labels" warning. NFCI. (details)
  738. [mlir] fix cmake for generating data layout documentation (details)
  739. [mlir] better formatting in interface docs (details)
  740. [MLIR] Create memref dialect and move dialect-specific ops from std. (details)
  741. [AMDGPU] Use depth first iterator instead of recursive DFS. NFCI. (details)
  742. [RISCV] Support fixed-length vectors in the calling convention (details)
  743. [NFCI][ValueTracking] getUnderlyingObject(): gracefully handle cycles (details)
  744. [AST] Add generator for source location introspection (details)
  745. [Sanitizer][RISCV][AArch64][Android] Adjust allocator tests (details)
  746. [LLDB] Skip TestExitDuringExpression on arm/linux buildbot (details)
  747. [dexter] Check path != None before calling os.path.exists (details)
  748. [X86][SSE] canonicalizeShuffleWithBinOps - handle target shuffles. NFCI. (details)
  749. Revert "[NFCI][ValueTracking] getUnderlyingObject(): gracefully handle cycles" (details)
  750. Revert rG9ba577eca2e339726bfaad4e615c6324a705b292 "[X86][SSE] canonicalizeShuffleWithBinOps - handle target shuffles. NFCI." (details)
  751. [AArch64][SVE] Add unpredicated ld1/st1 patterns for reg+reg addressing modes (details)
  752. [mlir] fix shared-lib build fallout of e2310704d890ad252aeb1ca28b4b84d29514b1d1 (details)
  753. [X86][SSE] canonicalizeShuffleWithBinOps - add X86ISD::PSHUFB handling. (details)
  754. [AMDGPU] Fix shortfalls in WQM marking (details)
  755. [ast-dump-tool] fix regression if --empty-implementation but --json-input-path is not (details)
  756. [SLP][Test] Precommit test for PR40522 (details)
  757. Revert "[Sanitizer][RISCV][AArch64][Android] Adjust allocator tests" (details)
  758. [ASTMatchers] Fix documentation for hasAnyBody matcher (details)
  759. [ASTMatchers][Dynamic] Add missing matchers from Registry (details)
  760. [mlir] enable Python bindings for the MemRef dialect (details)
  761. [SystemZ][z/OS] Define _LIBCPP_ELAST (details)
  762. [PATCH] fix location of test case (details)
  763. [mlir] fix integration tests post e2310704d890ad252aeb1ca28b4b84d29514b1d1 (details)
  764. [NFC][PowerPC] Add additional load/store test cases (details)
  765. [clang][lex] Speculative fix for buffer overrun on raw string parse (details)
  766. [ASTMatchers] Don't forward matchers in MapAnyOf (details)
  767. [clang-tidy] Fix readability-identifer-naming duplicating prefix or suffix for replacements. (details)
  768. [clang-tidy] Enable modernize-concat-nested-namespaces also on headers (details)
  769. [AArch64] Zero extended extract_vector_elt pattern (details)
  770. [asan] Fixed test failing on windows due to different printf behaviour. (details)
  771. [X86][SSE] canonicalizeShuffleWithBinOps - handle target shuffles. (details)
  772. [flang] Build intrinsic .mod files in include/flang (details)
  773. [scudo][standalone] Add shared library to makefile (details)
  774. [amdgpu] Implement lower function LDS pass (details)
  775. [gn build] Port 13e49dcee48f (details)
  776. [libcxx] [docs] Update docs about how to build for Windows (details)
  777. Stop traping on sNaN in __builtin_isinf (details)
  778. [RISCV][compiler-rt] Add support for save-restore (details)
  779. [InstSimplify] add tests for ctlz of shifted constant; NFC (details)
  780. [InstSimplify] ctlz({signbit} >>u x) --> x (details)
  781. [clang][patch] Solve PR49479, File scope fp pragma should propagate to functions nested in struct, and initialization expressions (details)
  782. [NFC] Fix "unused parameter" error revealed in the Linux self-build. (details)
  783. [dfsan] Add origin ABI wrappers for thread/signal/fork (details)
  784. [mlir] make memref.cast implement ViewLikeOpInterface (details)
  785. [X86][SSE] isHorizontalBinOp - ensure we clear any unused source operands to improve HADD/SUB matching (details)
  786. [RISCV] Improve legalization of i32 UADDO/USUBO on RV64. (details)
  787. [CMake] Require python 3.6 if enabling LLVM test targets (details)
  788. [gn build] (semi-manually) port b136a74efc54 (details)
  789. [libcxx] [test] Disable some allocation checks in class.path tests on windows (details)
  790. [libcxx] [test] Fix the get_temp_file_name() function for mingw (details)
  791. [libomptarget][amdgcn] Drop use of inttypes.h, moving closer to freestanding (details)
  792. [Polly] Refactoring astScheduleDimIsParallel to take the C++ wrapper object. NFC (details)
  793. [CodeGen] Fix issues with scalable-vector INSERT/EXTRACT_SUBVECTORs (details)
  794. [AssumeBundles] Add nonnull/align to op bundle if noundef exists (details)
  795. [libcxx] [test] Fix the temp_directory_path test for windows (details)
  796. [flang][docs] Fix the time for the new Flang driver call (details)
  797. [OpenCL] Respect calling convention for builtin (details)
  798. [NFC] Use higher level constructs to check for whitespace/newlines in the lexer (details)
  799. Allow __ieee128 as an alias to __float128 on ppc (details)
  800. [mlir] fix SPIR-V CPU and Vulkan runners after e2310704d890ad252aeb1ca28b4b84d29514b1d1 (details)
  801. [AArch64] Implement __rndr, __rndrrs intrinsics (details)
  802. [Polly][Optimizer] Apply user-directed unrolling. (details)
  803. [RISCV] Add isel-patterns to optimize (a < 1) into blez (a <= 0) (details)
  804. [libomptarget] Drop assert.h, use freestanding for amdgcn devicertl (details)
  805. [RISCV] Add RISCVISD::BR_CC similar to RISCVISD::SELECT_CC. (details)
  806. [dfsan] Do not check dfsan_get_origin by check_custom_wrappers.sh (details)
  807. [lld-macho] Place LC_FUNCTION_STARTS data at the right position (details)
  808. Change void getNoop(MCInst &NopInst) to MCInst getNop() (details)
  809. [dfsan] Updated check_custom_wrappers.sh to dedup function names (details)
  810. [CSSPGO] Load context profile for external functions in PreLink and populate ThinLTO import list (details)
  811. [Polly] Fix deprecation warning. NFC. (details)
  812. [libomptarget] Fix devicertl build (details)
  813. [test] Add ability to get error messages from CMake for errc substitution (details)
  814. [AMDGPU] Use single cache policy operand (details)
  815. [SLP] update stale test comments; NFC (details)
  816. Revert line accidentally included in af2796c76d2ff4b73165ed47959afd35a769beee (details)
  817. [clangd] Optionally add reflection for clangd-index-server (details)
  818. [libomptarget] Build amdgpu plugin by default (details)
  819. [libomptarget][nfc] Drop unused DEVICE macro (details)
  820. [PowerPC] Add __PCREL__ when PC Relative is enabled. (details)
  821. [libomptarget][nfc][amdgcn] Use precise triple for devicertl build (details)
  822. [AMDGPU] Fixed msan failure with uninitialized value (details)
  823. [gn build] kind of merge af2796c76d2f (details)
  824. [SystemZ] Test for isinf and isfinite in testFPKind(). (details)
  825. [gn build] merge 9bcf0eff99 (details)
  826. [AnnotationRemarks] Remove unneeded Function.h include (NFC). (details)
  827. [AMDGPU] Fix copyPhysReg to not produce unalined vgpr access (details)
  828. [flang] Runtime: implement INDEX intrinsic function (details)
  829. NFC: Formatting changes. (details)
  830. [NVPTX] Avoid temp copy of byval kernel parameters. (details)
  831. [AIX][XCOFF] Fixed the test case which failed at aix OS because enable -mignore-xcoff-visibility by default. (details)
  832. [DWARF] Check for AddrOffsetSectionBase to work with DWO Units. (details)
  833. [OpenMP] Remove unused cpu_stackoffset member (details)
  834. [lldb-vscode] Handle request_evaluate's context attribute (details)
  835. [flang] Create intrinsics modules directory (details)
  836. [gn build] merge af2796c76d2f a bit more (details)
  837. Emit inline implementation of __builtin__wmemchr on MSVCRT platforms. (details)
  838. [flang] Create intrinsics modules directory (contd.) (details)
  839. [JITLink][MachO][x86-64] Introduce generic x86-64 support. (details)
  840. [gn build] Port ecf6466f01c5 (details)
  841. [libomptarget] Build amdgcn devicertl by default (details)
  842. [CMake] Clean up unnecessary dependency (details)
  843. Fix 34885bffdf43920c0f011e17a65fd678100240dd (details)
  844. [mlir][amx] Add Intel AMX dialect (architectural-specific vector dialect) (details)
  845. Skip path separators to make the test portable across Win/Linux (details)
  846. [X86] Pass to transform amx intrinsics to scalar operation. (details)
  847. [gn build] Port 4f198b0c27b0 (details)
  848. [OCaml][test] Fix Bindings/OCaml/executionengine.ml test (details)
  849. [NVPTX] CUDA does provide malloc/free since compute capability 2.X (details)
  850. [OpenMP][FIX] Repair accidental replacement of _shfl_sync with _shfl (details)
  851. [CSSPGO][llvm-profgen] Fix getCanonicalFnName usage in llvm-profgen (details)
  852. [OpenMP][AMDGPU] Skip backend and assemble phases for amdgcn (details)
  853. [AArch64][ASAN] Disable fgets_fputs.cpp test. (details)
  854. [AArch64][GlobalISel] Fix crash on lowering <1 x half> types. (details)
  855. [RISCV] Don't emit #undef BUILTIN from RISCVVEmitter.cpp (details)
  856. scf::ForOp: Fold away iterator arguments with no use and for which the corresponding input is yielded (details)
  857. [SVE][LoopVectorize] Add support for scalable vectorization of loops with vector reverse (details)
  858. [NFC] Wisely nest dyn_cast in FunctionLoweringInfo (details)
  859. [lit] Sort test start times based on prior test timing data (details)
  860. [flang] Save AllocateObject and PointerObject analyzed expression (details)
  861. [mlir]: Add canonicalization for dim of 1D alloc of size rank. (details)
  862. [test][NFC] Minor formatting and comment adjustments in GetErrcMessages.cmake (details)
  863. [AMDGPU][MC] Disabled lds_direct for GFX90a (details)
  864. [sanitizer][NFC] Don't inherit InternalMmapVector (details)
  865. [CodeCompletion] Don't track preferred types if code completion is disabled. (details)
  866. [clangd] Reject renames to non-identifier characters (details)
  867. [test] Make sure the test program in GetErrcMessages.cmake exits normally. (details)
  868. [clangd] Turn off implicit cancellation based on client capabilities (details)
  869. [clangd] Add `limit` extension on completion and workspace-symbols (details)
  870. [SLP] improve readability in reduction logic; NFC (details)
  871. [TableGen/GlobalISel] Emit MI_predicate custom code for PatFrags (not only PatFrag) (details)
  872. [CodeCompletion] Avoid spurious signature help for init-list args (details)
  873. [NFC] Replace loop by idiomatic llvm::find_if (details)
  874. [clangd] Introduce pullDiags endpoint (details)
  875. [llvm-exegesis testing] Workaround unreliable test (details)
  876. [mlir] NFC - Expose GlobalCreator so it can be reused. (details)
  877. [NFC] Use SmallString instead of std::string for the AttrBuilder (details)
  878. [clangd] Add basic monitoring info request for remote index server (details)
  879. [Test] Update auto-generated checks (details)
  880. [Test] Add test with loops guarded by trivial conditions (details)
  881. [lit testing] Fix Windows reliability? (details)
  882. [InstSimplify] Match PtrToInt more directly in a GEP transform (NFC) (details)
  883. [AMDGPU, NFC] Refactor FP/BP spill index code in emitPrologue/emitEpilogue (details)
  884. [X86][SSE] canonicalizeShuffleWithBinOps - add PERMILPS/PERMILPD + PERMPD/PERMQ + INSERTPS handling. (details)
  885. [OpenMP] Add runtime interface for OpenMP 5.1 error directive (details)
  886. [Polly][Unroll] Fix unroll_double test. (details)
  887. [clang-tidy] Remove readability-deleted-default (details)
  888. [gn build] Port 9a5af541ee05 (details)
  889. Correct Doxygen syntax for inline code (details)
  890. [RISCV] Improve i32 UADDSAT/USUBSAT on RV64. (details)
  891. [AArch64][SVEIntrinsicOpts] Factor out redundant SVE mul/fmul intrinsics (details)
  892. [lit testing] Mark reorder.py as unavailable on Windows (details)
  893. [RISCV] Look through copies when trying to find an implicit def in addVSetVL. (details)
  894. [SCEV][NFC] Move check up the stack (details)
  895. [AArch64][SVE] Fold vector ZExt/SExt into gather loads where possible (details)
  896. [OCaml] Add missing TypeKinds, Opcode, and AtomicRMWBinOps (details)
  897. [mlir][amx] blocked tilezero integration test (details)
  898. [MemDepAnalysis] Remove redundant comment. (details)
  899. [LoopVectorize] add FP induction test with minimal FMF; NFC (details)
  900. [OpenCL][NFCI] Prefer CodeGenFunction::EmitRuntimeCall (details)
  901. [libcxx][type_traits] add tests for is_signed and is_unsigned (details)
  902. Tweak spelling of system-windows UNSUPPORTED line (details)
  903. [InstSimplify] Restrict a GEP transform to avoid provenance changes (details)
  904. [RISCV] Support clang -fpatchable-function-entry && GNU function attribute 'patchable_function_entry' (details)
  905. Support !heapallocsite attachments in stripNonLineTableDebugInfo(). (details)
  906. Support !heapallocsite attachments in StripDebugInfo(). (details)
  907. [llvm-nm] Add --format=just-symbols and make --just-symbol-name its alias (details)
  908. [mlir][amx] reformatted examples (details)
  909. [Docs] Mention linking to reviews page when committing (details)
  910. [Utils] Support lit-like substitutions in update_cc_test_checks (details)
  911. [VPlan] Remove PredInst2Recipe, use VP operands instead. (NFC) (details)
  912. [gvn] CSE gc.relocates based on meaning, not spelling (try 2) (details)
  913. Fix for memory leak reported by Valgrind (details)
  914. Add ConstantDataVector::getRaw() to create a constant data vector from raw data. (details)
  915. [libc++] Improve src/filesystem's formatting of paths. (details)
  916. [regalloc] Ensure Query::collectInterferringVregs is called before interval iteration (details)
  917. [MemCpyOpt] Add missing MemorySSAWrapperPass dependency macro (details)
  918. Revert "[regalloc] Ensure Query::collectInterferringVregs is called before interval iteration" (details)
  919. [rs4gc] don't duplicate existing values which are provably base pointers (details)
  920. scudo: Allow TBI to be disabled on Linux with a macro. (details)
  921. [rs4gc] don't force a conflict for a canonical broadcast (details)
  922. [rs4gc] Simplify code by cloning existing instructions when inserting base chain [NFC] (details)
  923. [sanitizers] [windows] Use InternalMmapVector instead of silencing -Wframe-larger-than (details)
  924. [mlir][pdl] Restructure how results are represented. (details)
  925. [mlir][pdl] Remove CreateNativeOp in favor of a more general ApplyNativeRewriteOp. (details)
  926. [mlir][PDL] Add support for variadic operands and results in PDL (details)
  927. [mlir][PDL] Add support for variadic operands and results in the PDL Interpreter (details)
  928. [mlir][PDL] Add support for variadic operands and results in the PDL byte code (details)
  929. [compiler-rt] Use try_compile_only to check for __ARM_FP (details)
  930. [M68k] Fixed incorrect `extract-section` command substitution (details)
  931. [M68k] Add more specific operand classes (details)
  932. [InstCombine] Avoid Bitcast-GEP fusion for pointers directly from allocation functions (details)
  933. [AArch64] Parse "rng" feature flag in .arch directive (details)
  934. [AsmParser][SystemZ][z/OS] Reland "Introduce HLASM Comment Syntax" (details)
  935. [sanitizer][NFC] Remove InternalScopedString::size() (details)
  936. [RISCV] Make empty name symbols SF_FormatSpecific so that llvm-symbolizer ignores them for symbolization (details)
  937. [SLP] separate min/max matching from its instruction-level implementation; NFC (details)
  938. [Polly][CodeGen] Allow nesting of BandAttr mark without loop. (details)
  939. Revert "[ConstantFold] Handle vectors in ConstantFoldLoadThroughBitcast()" (details)
  940. [sanitizer][NFC] Fix compilation error on Windows (details)
  941. [asan] disable MallocNanoZone for no fd test on darwin (details)
  942. [flang] Order Symbols by source provenance (details)
  943. Revert "[AsmParser][SystemZ][z/OS] Reland "Introduce HLASM Comment Syntax"" (details)
  944. [mlir] Add lowering from math::Log1p to LLVM (details)
  945. [mlir][pdl] Cast the OperationPosition to Position to fix MSVC miscompile (details)
  946. [mlir][AttrTypeDefGen] Add support for custom parameter comparators (details)
  947. [mlir][IR] Move the remaining builtin attributes to ODS. (details)
  948. This introduces gmtime to LLVM libc, based on C99/C2X/Single Unix Spec. (details)
  949. [AST] Hide errors from the attempt to introspect nodes (details)
  950. [mlir][Python] Fix test broken after D98474 (details)
  951. [flang] Fix build error (unused data member warning) (details)
  952. [AST] Suppress diagnostic output when generating code (details)
  953. [dfsan] Add origin ABI wrappers (details)
  954. [X86][AMX] Rename amx-bf16 intrinsic according to correct naming convention (details)
  955. [flang] Replace Arithmetic Ops with their builtin conunterpart (details)
  956. [lld-macho] Handle error cases properly for -exported_symbol(s_list) (details)
  957. [BasicAA] Drop dependency on Loop Info. PR43276 (details)
  958. [OCaml] DebugInfo support for OCaml bindings (details)
  959. [Unswitch] Guard dbgs logging with LLVM_DEBUG (details)
  960. [lld-macho][NFC] Drop unnecessary braces around simple if/for bodies (details)
  961. [OCaml] Fix buildbot failure in OCaml tests (details)
  962. [Flang][OpenMP][OpenACC] Add function for mapping parser clause classes with the corresponding clause kind. (details)
  963. [MC] Delete unused MCOperand::{create,is,get}FPImm (details)
  964. [NFC] [XCOFF] Update PowerPC readobj test case with expression (details)
  965. [libcxx] Simplify rounding of durations in win32 __libcpp_thread_sleep_for (details)
  966. [-Wcalled-once-parameter] Let escapes overwrite MaybeCalled states (details)
  967. [sanitizer_common][test] Handle missing REG_STARTEND in Posix/regex_startend.cpp (details)
  968. Make iteration over the DeclContext::lookup_result safe. (details)
  969. [SLP][Test] Precommit test for D98423 (details)
  970. [TableGen] Fix excessive compile time issue in FixedLenDecoderEmitter (details)
  971. [libcxx] [docs] Fix formatting of inline verbatim snippets in the Windows section (details)
  972. [AMDGPU] Split dot2-insts feature (details)
  973. [RISCV] Optimize "dominant element" BUILD_VECTORs (details)
  974. [lldb] Correct typo in memory read error (details)
  975. [SLP] Fix the trunc instruction insertion problem (details)
  976. [LV] Account for the cost of predication of scalarized load/store (details)
  977. [MLIR] Fix lowering of Affine IfOp in the presence of yield values. (details)
  978. [AMDGPU] Regenerate wave32.ll test checks (details)
  979. Revert "[libomptarget] Build amdgcn devicertl by default" (details)
  980. [AArch64][SVE/NEON] Add support for FROUNDEVEN for both NEON and fixed length SVE (details)
  981. [lit] Harmonize test timing data between Unix and Windows (details)
  982. Revert rG3b635253ddd0106c88051cff3540d8eb90bee22f "[AMDGPU] Regenerate wave32.ll test checks" (details)
  983. Added documentation for SSA like property in Bufferization. (details)
  984. Update diagnostic groups for pre-compat warnings (details)
  985. [mlir][llvm] Pass struct results as parameter in c wrapper (details)
  986. [mlir] scf::ForOp: Drop iter arguments (and corresponding result) with no use (details)
  987. NFC: Use a simple macro to test AST node introspection (details)
  988. [NFC][OCaml] Fix documentation for verify_function and const_of_int64 (details)
  989. [SYCL] Rework the SYCL driver options (details)
  990. Revert "[DebugInfo] Handle multiple variable location operands in IR" (details)
  991. Fixing a test case that was missed in c165a99a1b8861af87e0509a2e14debf2764804b (details)
  992. Move BaseOpWithOffsetSizesAndStrides to OpBase.td (details)
  993. [OCaml] Handle nullptr in Llvm.global_initializer (details)
  994. [mlir][ODS] Support specialized Attribute class for Enums (details)
  995. [clang] Disable LTO and LLD on SystemZ for stage3 builds (details)
  996. [llvm-objcopy][NFC] Move ownership keeping code into restoreStatOnFile(). (details)
  997. [RGT] RPCUtilsTest, replace un-executed EXPECT with unreachable (details)
  998. [DAG] TargetLowering::isBinOp() - add ISD::SSUBSAT/USUBSAT (details)
  999. Add arm_neon.sdot operation (details)
  1000. [ARM] Use lrdsb for more thumb1 loads. (details)
  1001. [Sanitizer] Fix debug builds of sanitizer_stacktrace_test.cpp (details)
  1002. [LoopVectorize] Refine hasIrregularType predicate (details)
  1003. [lldb] Correct unsigned decimal argument check in memory write (details)
  1004. [ms] [llvm-ml] Allow the /Zs parameter as a synonym for -filetype=null (details)
  1005. [lldb] [test] Fix TestGdbRemote_vContThreads.py logic (details)
  1006. [ELF] Special case --shuffle-sections=-1 to reverse input sections (details)
  1007. [CGSCC] Print CG node itself instead of its address (details)
  1008. [OPENMP51]Initial support for the interop directive. (details)
  1009. Reapply "[DebugInfo] Handle multiple variable location operands in IR" (details)
  1010. [mlir][amx] regression test for tile-muli (all zero/sign-extension combinations) (details)
  1011. [mlir][cpu-runner] register all llvm ir dialects (details)
  1012. [RISCV] Support masked load/store for fixed vectors. (details)
  1013. [TTI] Add a Mask to getShuffleCost (details)
  1014. [RISCV] Update RVV shift intrinsic tests to use XLEN bit as shift amount. (details)
  1015. [LICM] Fix a crash when sinking instructions w/token operands (details)
  1016. [lldb] [test] Skip vCont tests on Windows (details)
  1017. [lldb/Docs] Update docs with new buildbot URLs (details)
  1018. [RISCV] Use getTargetExtractSubreg and getTargetInsertSubreg to simplify some code. NFCI (details)
  1019. [Test] Fix undef var in attr-speculative-load-hardening.c (details)
  1020. [LCSSA] Extract a utility for deciding if a new use requires a new lcssa phi [NFC] (details)
  1021. [lld-link] emit an error when writing a PDB > 4 GiB (details)
  1022. [X86][SSE] Add SSE2/SSE42 test coverage to urem combine tests (details)
  1023. [NFC][AArch64] Add codegen tests for various csinc-cmp sequences. (details)
  1024. [compiler-rt] -fsanitize=cfi is not supported on Darwin (details)
Commit 75c7e3e3145f06d85b9580d4a1c9bc7f4b5a9a9e by lebedev.ri
[NFC][InstCombine] Add plain GEP test for  (gep i8* X, -(ptrtoint Y))  -->  (inttoptr (sub (ptrtoint X), (ptrtoint Y)))  fold
The file was modifiedllvm/test/Transforms/InstCombine/getelementptr.ll
Commit 2ad1f5eb1a47275593bd9baf75dcf3e9c3977473 by lebedev.ri
[InstCombine] Don't canonicalize  (gep i8* X, -(ptrtoint Y))  as  (inttoptr (sub (ptrtoint X), (ptrtoint Y)))

It's just a wrong thing to do.

We introduce inttoptr where there were none, which results in
loosing all provenance information because we no longer have a GEP{i,},
and pessimize all future optimizations,
because we are basically not allowed to look past `inttoptr`.

(gep i8* X, -(ptrtoint Y))  *is* the canonical form.
So just drop this fold.

Noticed while reviewing D98120.
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/test/Transforms/InstCombine/getelementptr.ll
Commit d601edf0b053b0df3bea0df16187009b2a0c946b by martin
[libcxx] [test] Fix lexically_normal and lexically_relative_and_proximate for windows

Convert the expected result path to preferred separators, add exceptions
to the test results where needed (due to some cases being interpreted
as a root name).

Differential Revision: https://reviews.llvm.org/D98106
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_relative_and_proximate.pass.cpp
Commit 494b5ba364a9c02da1b7b67fe5528d9f66a285e6 by flo
[VPlan] Support to widen call intructions in VPlan native path

Add support to widen call instructions in VPlan native path by using a correct recipe when such instructions are encountered. This is already used by inner loop vectorizer.

Previously call instructions got handled by wrong recipes and resulted in unreachable instruction errors like this one: https://bugs.llvm.org/show_bug.cgi?id=48139.

Patch by Mauri Mustonen <mauri.mustonen@tuni.fi>

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D97278
The file was addedllvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Commit fb2cf0dd609238931b0fc53ef0ea2172a99307ae by i
[FunctionImport] Delete unneeded setLive. NFC

ValueInfo's in Worklist are guaranteed to be live.
The file was modifiedllvm/lib/Transforms/IPO/FunctionImport.cpp
Commit e6a104465d9b6bba3944b2b03f3825bb6bcf24f9 by i
[ModuleSummaryAnalysis] Avoid duplicate elements in Worklist. NFC
The file was modifiedllvm/lib/Analysis/ModuleSummaryAnalysis.cpp
Commit 5f319fc444ca6c4b6b3905a026534d6d90acd37e by nikita.ppv
[GVN] Add test for load GVN with dead block (NFC)

What this test illustrates is that GVN inserts an unnecessary
phi node initially, which prevents alias analysis from establishing
NoAlias, and MDA caches that result. We would be able to fully fold
this after another -gvn run with clean MDA.
The file was addedllvm/test/Transforms/GVN/load-dead-block.ll
Commit 3fedaf2a522b5ca8db209a3864bf55978c407b29 by nikita.ppv
[GVN] Don't explicitly materialize undefs from dead blocks

When materializing an available load value, do not explicitly
materialize the undef values from dead blocks. Doing so will
will force creation of a phi with an undef operand, even if there
is a dominating definition. The phi will be folded away on
subsequent GVN iterations, but by then we may have already
poisoned MDA cache slots.

Simply don't register these values in the first place, and let
SSAUpdater do its thing.
The file was modifiedllvm/test/Transforms/GVN/load-dead-block.ll
The file was modifiedllvm/lib/Transforms/Scalar/GVN.cpp
Commit d96af2ed2d6cfaa227c82a79d85733bcca4d9084 by i
[MC] Support .symver *, *, remove

As a resolution to https://sourceware.org/bugzilla/show_bug.cgi?id=25295 , GNU as
from binutils 2.35 supports the optional third argument for the .symver directive.

'remove' for a non-default version is useful:
`.symver def_v1, def@v1, remove` => def_v1 is not retained in the symbol table.
Previously the user has to strip the original symbol or specify a `local:`
version node in a version script to localize the symbol.

`.symver def, def@@v1, remove` and `.symver def, def@@@v1, remove` are supported
as well, though they are identical to `.symver def, def@@@v1`.

local/hidden are not useful so this patch does not implement them.
The file was modifiedllvm/lib/MC/MCELFStreamer.cpp
The file was modifiedllvm/lib/MC/MCParser/ELFAsmParser.cpp
The file was modifiedllvm/include/llvm/MC/MCStreamer.h
The file was modifiedllvm/lib/MC/MCAsmStreamer.cpp
The file was modifiedllvm/lib/MC/MCStreamer.cpp
The file was addedllvm/test/MC/ELF/symver-remove.s
The file was modifiedllvm/include/llvm/MC/MCELFStreamer.h
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
The file was modifiedllvm/lib/Object/RecordStreamer.cpp
The file was modifiedllvm/lib/Object/RecordStreamer.h
The file was modifiedllvm/include/llvm/MC/MCAssembler.h
Commit 31443f8e86ec3bfbba6ca7f1c96db3c2122d6c09 by kazu
[clang] Fix typos in documentation (NFC)
The file was modifiedclang/docs/analyzer/checkers.rst
The file was modifiedclang/docs/SanitizerCoverage.rst
The file was modifiedclang/docs/AutomaticReferenceCounting.rst
The file was modifiedclang/docs/ControlFlowIntegrity.rst
The file was modifiedclang/docs/ClangFormatStyleOptions.rst
The file was modifiedclang/docs/InternalsManual.rst
The file was modifiedclang/docs/UsersManual.rst
The file was modifiedclang/docs/analyzer/developer-docs/IPA.rst
The file was modifiedclang/docs/LanguageExtensions.rst
The file was modifiedclang/docs/ControlFlowIntegrityDesign.rst
Commit 3e8be5ab87169163f1423cbd0c313e0e80a37910 by kazu
[objdump] Use ListSeparator (NFC)
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
Commit dd9a6411846b06e424a59c0b12cfacf4e4e17532 by kazu
[TableGen] Use range-based for loops (NFC)
The file was modifiedllvm/lib/TableGen/StringMatcher.cpp
The file was modifiedllvm/lib/TableGen/SetTheory.cpp
The file was modifiedllvm/lib/TableGen/TGLexer.cpp
Commit fd785f98aaea1d99f7018051f0d80b554e7540e4 by i
[MC] Parse end-of-line for .cfi_* directives

Otherwise MCAsmStreamer will emit duplicate newlines.
The file was modifiedllvm/lib/MC/MCParser/AsmParser.cpp
The file was modifiedllvm/test/MC/ELF/cfi-adjust-cfa-offset.s
The file was modifiedllvm/test/MC/ELF/cfi.s
The file was modifiedllvm/test/MC/ELF/cfi-window-save.s
The file was modifiedllvm/test/MC/ELF/cfi-def-cfa-register.s
The file was modifiedllvm/test/MC/ELF/cfi-escape.s
The file was modifiedllvm/test/MC/ELF/cfi-return-column.s
The file was modifiedllvm/test/MC/ELF/cfi-register.s
The file was removedllvm/test/MC/AsmParser/cfi-window-save.s
The file was modifiedllvm/test/MC/ELF/cfi-rel-offset.s
The file was modifiedllvm/test/MC/ELF/cfi-same-value.s
The file was modifiedllvm/test/MC/AArch64/cfi.s
The file was modifiedllvm/test/MC/ELF/cfi-remember.s
The file was modifiedllvm/test/MC/ELF/cfi-undefined.s
Commit e5eb3e3836a7d5ad86cb6e3ee991600622eb0f82 by i
[MC] Parse end-of-line for .addrsig & .addrsig_sym
The file was modifiedllvm/test/MC/ELF/addrsig.s
The file was modifiedllvm/lib/MC/MCParser/AsmParser.cpp
Commit bb6732cf622522f17dad948279ba4f68e3bd55e1 by i
[MC] Add parseEOL() overload and migrate some parseToken(AsmToken::EndOfStatement) to parseEOL()

For many directives, the following diagnostics

* `error: unexpected token`
* `error: unexpected token in '.abort' directive"`

are replaced with `error: expected newline`.

`unexpected token` may make the user think a different token is needed.
`expected newline` is clearer about the expected token.

For `in '...' directive`, the directive name is not useful because the next line
replicates the error line which includes the directive.
The file was modifiedllvm/test/MC/AsmParser/directive_incbin.s
The file was modifiedllvm/lib/MC/MCParser/MCAsmParser.cpp
The file was modifiedllvm/lib/MC/MCParser/AsmParser.cpp
The file was modifiedllvm/test/MC/ARM/thumb_set-diagnostics.s
The file was modifiedllvm/test/MC/ARM/directive_parsing.s
The file was modifiedllvm/test/MC/ELF/cfi.s
The file was modifiedllvm/test/MC/AsmParser/AArch64/directive-parse-err.s
The file was modifiedllvm/include/llvm/MC/MCParser/MCAsmParser.h
The file was modifiedllvm/test/MC/AsmParser/if-diagnostics.s
Commit 45f949ee469f3e59d30a88c97aa7c1139069b261 by i
[MC] Migrate some parseToken(AsmToken::EndOfStatement, ...) to parseEOL()
The file was modifiedllvm/test/MC/AsmParser/AArch64/directive-parse-err.s
The file was modifiedllvm/test/MC/AsmParser/directive_print.s
The file was modifiedllvm/test/MC/AsmParser/directive_dcb.s
The file was modifiedllvm/test/MC/AsmParser/directive_rept-diagnostics.s
The file was modifiedllvm/test/MC/AsmParser/directive_ds.s
The file was modifiedllvm/lib/MC/MCParser/AsmParser.cpp
Commit ca602a72b37ddc3c4053cda3335610b0ffe4ec1d by Tony.Tye
[NFC][AMDGPU]DWARF Extensions For Heterogeneous Debugging generic type endianity

In "DWARF Extensions For Heterogeneous Debugging" document that the
DWARF generic type has a target architecture defined endianity.

Reviewed By: scott.linder

Differential Revision: https://reviews.llvm.org/D98126
The file was modifiedllvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
Commit 41476d89b82647c1ff690fdc805c859262d571e5 by phosek
[Driver] Pass --unwindlib=platform to tests that check unwinder

This addresses an issue which was revealed by D98022.

Differential Revision: https://reviews.llvm.org/D98131
The file was modifiedclang/test/Driver/linux-ld.c
The file was modifiedclang/test/Driver/compiler-rt-unwind.c
Commit 39ad160468e2b6acaa0b2b1ab353079eca4a3b03 by martin
[libunwind] Install the DLL when doing "ninja install"

This matches how install(... RUNTIME) is used in e.g. libcxx.

Differential Revision: https://reviews.llvm.org/D98020
The file was modifiedlibunwind/src/CMakeLists.txt
Commit ab67fd39fc144d911d926c4db886d301061d1368 by martin
[libcxx] [test] Fix path.modifiers remove_filename and replace_filename for windows

Also fix the synopsis in the replace_filename test, while touching
that file.

Differential Revision: https://reviews.llvm.org/D98108
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/remove_filename.pass.cpp
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/replace_filename.pass.cpp
Commit 772a501bf41fd15294192b9522c4567a9fc25834 by llvm-dev
[X86] canonicalizeShuffleWithBinOps - shuffle oneuse constants.

We can freely shuffle all ones/zeros constants but we can also freely shuffle other constants as long as they only have one use.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/promote-cmp.ll
Commit cd938ab162b0ac560dd0e9fee290980c7e0e47e5 by llvm-dev
[X86] canonicalizeShuffleWithBinOps - add X86ISD::PSHUFB handling.
The file was modifiedllvm/test/CodeGen/X86/vector-fshr-rot-128.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-shift-ashr-128.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shift-lshr-128.ll
Commit 2c16c4a43c756dd0e6e11426badfd858040dd46a by aqjune
[ValueTracking] update directlyImpliesPoison to look into select's condition

This is a minor update in directlyImpliesPoison and makes it look into select's
condition.
Splitted from https://reviews.llvm.org/D96945
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
Commit d65c9476001908004d0d51f209e4ed1cea9dc149 by aqjune
[InstCombine] enrich select-safe-bool-transforms.ll test (NFC)

for https://reviews.llvm.org/D96945
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
Commit 5bb38e84d3d0420e7159ffc34e3dd33ab5088b8e by aqjune
[LoopUnswitch] unswitch if cond is in select form of and/or as well

Hello all,
I'm trying to fix unsafe propagation of poison values in and/or conditions by using
equivalent select forms (`select i1 A, i1 B, i1 false` and `select i1 A, i1 true, i1 false`)
instead.
D93065 has links to patches for this.

This patch allows unswitch to happen if the condition is in this form as well.
`collectHomogenousInstGraphLoopInvariants` is updated to keep traversal if
Root and the visiting I matches both m_LogicalOr()/m_LogicalAnd().
Other than this, the remaining changes are almost straightforward and simply replaces
Instruction::And/Or check with match(m_LogicalOr()/m_LogicalAnd()).

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D97756
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/nontrivial-unswitch.ll
The file was modifiedllvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch.ll
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
Commit 99108c791de0285ee726a10e8274772b18cee73c by aqjune
[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe

This patch makes FoldBranchToCommonDest merge branch conditions into `select i1` rather than `and/or i1` when it is called by SimplifyCFG.
It is known that merging conditions into and/or is poison-unsafe, and this is towards making things *more* correct by removing possible miscompilations.
Currently, InstCombine simply consumes these selects into and/or of i1 (which is also unsafe), so the visible effect would be very small. The unsafe select -> and/or transformation will be removed in the future.
There has been efforts for updating optimizations to support the select form as well, and they are linked to D93065.

The safe transformation is fired when it is called by SimplifyCFG only. This is done by setting the new `PoisonSafe` argument as true.
Another place that calls FoldBranchToCommonDest is LoopSimplify. `PoisonSafe` flag is set to false in this case because enabling it has a nontrivial impact in performance because SCEV is more conservative with select form and InductiveRangeCheckElimination isn't aware of select form of and/or i1.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D95026
The file was modifiedllvm/test/Transforms/PGOProfile/chr.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/switch_create-custom-dl.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/ARM/branch-fold-threshold.ll
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/test/Transforms/SimplifyCFG/annotations.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/common-dest-folding.ll
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/test/Transforms/SimplifyCFG/fold-debug-location.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll
Commit 33590ed4f264557ff34702dd61d50484962d667b by aqjune
[InstCombine] fix another poison-unsafe select transformation

This fixes another unsafe select folding by disabling it if
EnableUnsafeSelectTransform is set to false.

EnableUnsafeSelectTransform's default value is true, hence it won't
affect generated code (unless the flag is explicitly set to false).
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit 176bbcae1113fbb4f34d2b79eab35b086a9f2a8e by nikita.ppv
[DSE] Remove MemDep-based implementation

The MemorySSA-based implementation has been enabled without issue
for a while now, so keeping the old implementation around doesn't
seem useful anymore. This drops the MemDep-based implementation.

Differential Revision: https://reviews.llvm.org/D97877
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/OverwriteStoreBegin.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/merge-stores.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/combined-partial-overwrites.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/atomic-todo.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/dominate.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/masked-dead-store-inseltpoison.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/simple.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/out-of-bounds-stores.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-captures.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/PartialStore.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/tail-byval.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/PartialStore2.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/read-clobber-after-overwrite.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/inst-limits.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/const-pointers.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/OverwriteStoreBegin.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memset-missing-debugloc.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-unreachable.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-memintrinsics.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/loop-invariant-entry-block.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/simple.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/OverwriteStoreEnd.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/simple-preservation.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/no-targetdata.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/tail-byval.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/mda-with-dbg-values.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memset-unknown-sizes.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/2011-03-25-DSEMiscompile.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/libcalls.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/OverwriteStoreEnd.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-loop-carried-dependence.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/OverwriteStoreEnd.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/2016-07-17-UseAfterFree.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/simple.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-loops.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/lifetime.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-overlap.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/merge-stores-big-endian.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-loop-carried-dependence.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/combined-partial-overwrites.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/PartialStore.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/debug-counter.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memoryssa-scan-limit.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memset-and-memcpy.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/2011-09-06-MemCpy.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/atomic.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/memset-missing-debugloc.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/lifetime.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/launder.invariant.group.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/fence-todo.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/crash.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/no-targetdata.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/debuginfo.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/operand-bundles.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/combined-partial-overwrites.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/fence.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memcpy-lifetimes.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/2011-09-06-EndOfFunction.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/crash.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/atomic-overlapping.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/inst-limits.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/lifetime.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-partial.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/PartialStore2.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/X86/gather-null-pointer.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/merge-stores.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/stores-of-existing-values.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-multipath.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/launder.invariant.group.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/fence.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/2011-09-06-EndOfFunction.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/PartialStore2.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/libcalls2.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/PartialStore.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/X86/gather-null-pointer.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/free.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-malloc-free.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/merge-stores-big-endian.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memcpy-complete-overwrite.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/out-of-bounds-stores.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/scoped-noalias.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/2011-09-06-EndOfFunction.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-malloc-free.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/tail-byval.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/debuginfo.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/operand-bundles.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/int_sideeffect.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/libcalls.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/stores-of-existing-values.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/const-pointers.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/int_sideeffect.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-simple.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-partial.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/fence.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/invariant.start.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memintrinsics.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/OverwriteStoreBegin.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/no-targetdata.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/launder.invariant.group.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memset-and-memcpy.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/pr11390.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-throwing.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memoryssa-scan-limit.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/pr47285-not-overwritten-on-all-exit-paths.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memcpy-lifetimes.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/DeleteThrowableInst.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/cs-cs-aliasing.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/calloc-store.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memset-unknown-sizes.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/overlap.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/simple-preservation.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/inst-limits.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/pr47285-not-overwritten-on-all-exit-paths.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/scoped-noalias.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memintrinsics.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/2011-03-25-DSEMiscompile.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/int_sideeffect.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-throwing.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/crash.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/2011-09-06-MemCpy.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/merge-stores.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/debuginfo.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-multipath-throwing.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/stats.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-exceptions.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-simple.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/read-clobber-after-overwrite.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/invariant.start.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/atomic.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/loop-invariant-entry-block.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/invariant.start.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-memintrinsics.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/fence-todo.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-loops.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/pr11390.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/cs-cs-aliasing.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/free.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/2011-03-25-DSEMiscompile.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/pr11390.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/2016-07-17-UseAfterFree.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/mda-with-dbg-values.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/noop-stores.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/mda-with-dbg-values.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/noop-stores.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/X86/gather-null-pointer.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/atomic-todo.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-unreachable.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/memintrinsics.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/libcalls.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/dominate.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/masked-dead-store.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/stats.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/cs-cs-aliasing.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-multipath-throwing.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/const-pointers.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/2011-09-06-MemCpy.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/2016-07-17-UseAfterFree.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/memset-missing-debugloc.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-memoryphis.ll
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
The file was addedllvm/test/Transforms/DeadStoreElimination/debug-counter.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/atomic-overlapping.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-captures.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-memoryphis.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/operand-bundles.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/calloc-store.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/free.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/overlap.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-exceptions.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/calloc-store.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MSSA/memcpy-complete-overwrite.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/atomic.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-multipath.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/dominate.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/multiblock-overlap.ll
The file was removedllvm/test/Transforms/DeadStoreElimination/MemDepAnalysis/merge-stores-big-endian.ll
Commit 2b494f85f10ab79f41e74c8e75d707825f8cc110 by nikita.ppv
[CVP] Remove -cvp-dont-add-nowrap-flags option

This option was originally added to work around a bug in LFTR.
The bug has long since been fixed.
The file was modifiedllvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/shl.ll
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/sub.ll
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/mul.ll
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/add.ll
Commit d672c81126550a1b74ef77adfb7e7d1dd728a61e by aqjune
[InstCombine] use safe transformation by default

.. since it will be folded into and/or anyway
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit fdbd5d32060c50313493fbdbbea74dc9ea73b591 by craig.topper
[RISCV] Fold (select_cc (xor X, Y), 0, eq/ne, trueV, falseV) -> (select_cc X, Y, eq/ne, trueV, falseV)

This pattern occurs when lowering for overflow operations
introduce an xor after select_cc has already been formed.

I had to rework another combine that looked for select_cc of an xor
with 1. That xor will now get combined away so we just need to
look for the RHS of the select_cc being 1.

Reviewed By: luismarques

Differential Revision: https://reviews.llvm.org/D98130
The file was modifiedllvm/test/CodeGen/RISCV/sadd_sat_plus.ll
The file was modifiedllvm/test/CodeGen/RISCV/ssub_sat.ll
The file was modifiedllvm/test/CodeGen/RISCV/ssub_sat_plus.ll
The file was modifiedllvm/test/CodeGen/RISCV/xaluo.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/sadd_sat.ll
Commit 07c3b97e184d5bd828b8a680cdce46e73f3db9fc by aqjune
[InstCombine] Add simplification of two logical and/ors

This is a patch that adds folding of two logical and/ors that share one variable:

a && (a && b) -> a && b
a && (a & b)  -> a && b
...

This is towards removing the poison-unsafe select optimization (D93065 has more context).

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D96945
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit f449e5ef9bee553b9e3626ee70bcae13068a4403 by lebedev.ri
[NFCI] Fix polly tests after b46c085d2b6d15873fb53718f0a70b3848e19e4a

That commit changed SCEVExpander to emit intrinsics instead of icmp+select,
but i forgot about polly, and i'm not sure if any bots complained.
The file was modifiedpolly/test/Isl/CodeGen/param_div_div_div_2.ll
The file was modifiedpolly/test/Isl/CodeGen/scop_expander_insert_point.ll
Commit c91b3c9e63c3580348701a81a82740d84d2e5102 by craig.topper
[RISCV] Fold (select_cc (setlt X, Y), 0, ne, trueV, falseV) -> (select_cc X, Y, lt, trueV, falseV)

A setcc can be created during LegalizeDAG after select_cc has been
created. This combine will enable us to fold these late setccs.

Reviewed By: luismarques

Differential Revision: https://reviews.llvm.org/D98132
The file was modifiedllvm/test/CodeGen/RISCV/usub_sat.ll
The file was modifiedllvm/test/CodeGen/RISCV/xaluo.ll
The file was modifiedllvm/test/CodeGen/RISCV/usub_sat_plus.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/uadd_sat.ll
The file was modifiedllvm/test/CodeGen/RISCV/uadd_sat_plus.ll
Commit 0eb405c3b8e2bef5f80499991d67a7bf9e419412 by craig.topper
[SelectionDAG] Add computeKnownBits support for ISD::USUBSAT.

The result of ISD::USUBSAT will never be larger than the LHS. We
can use this to put a bound on the number of leading zeros.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D98133
The file was modifiedllvm/test/CodeGen/ARM/usub_sat.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/usubsat.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/test/CodeGen/X86/combine-sub-usat.ll
The file was modifiedllvm/test/CodeGen/X86/usub_sat_plus.ll
The file was modifiedllvm/test/CodeGen/ARM/usub_sat_plus.ll
The file was modifiedllvm/test/CodeGen/RISCV/usub_sat.ll
The file was modifiedllvm/test/CodeGen/X86/usub_sat.ll
Commit e867951de6c954a7bf560b195ce15e6c8d982b34 by Matthew.Arsenault
IR: Fix assert string message referring to the wrong attribute
The file was modifiedllvm/lib/IR/Function.cpp
Commit c79a4490d443b4c4e194f380315c889f53635a87 by Matthew.Arsenault
OpaquePtr: Record byref types in bitcode writer

I missed this case when adding byref. I believe this is NFC until
pointee types are really removed.
The file was modifiedllvm/lib/Bitcode/Writer/ValueEnumerator.cpp
Commit f79bab3fd7f4a143d5148b6f53ac2d4650ee1c3f by Tony.Tye
[NFC][AMDGPU] DWARF Extensions For Heterogeneous Debugging clarifications

Clarify that the base type endianity is used when creating implicit
location storage.

Remove duplicate definition of the generic type.

Reviewed By: scott.linder

Differential Revision: https://reviews.llvm.org/D98137
The file was modifiedllvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
Commit 898b40645d4452ac470896783947d8c397422b02 by spatel
[ConstProp] add tests for cmp with null and constexpr; NFC
The file was addedllvm/test/Transforms/InstSimplify/ConstProp/icmp-null.ll
Commit bde2e5607167f3e9fd8c6b51275fc8ac654230a2 by Kuba Mracek
[tsan] Use large address space mapping on Apple Silicon Macs

Differential Revision: https://reviews.llvm.org/D86377
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_posix.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform.h
Commit 4d571cf4e99e3a7abe898dbbc02b2e872e9490e8 by martin
[libcxx] [test] Clarify and improve consistency in lexically_relative_and_proximate.pass.cpp. NFC.

Use "expect" instead of "output" for generating "proximate_expected",
pass the arguments to PathEq in the same order as above, rename the
"proximate_expected" variable to be consistent with the naming of the
earlier "expect", use .empty() instead of .native().empty().

Differential Revision: https://reviews.llvm.org/D98127
The file was modifiedlibcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_relative_and_proximate.pass.cpp
Commit 52c5f5ad5f203d4659f0613a6133f85688ff8266 by martin
[libcxx] [test] Fix building create_directory in MSVC configurations

Don't use the mode_t type - the official windows sdk doesn't have that type.
(Mingw headers does have such a typedef though.) The umask function returns
int on windows, in both header variants.

Thus just use auto to deduce the umask return type automatically.

Differential Revision: https://reviews.llvm.org/D98140
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_directory/create_directory.pass.cpp
Commit 3a11a41795bec548e91621caaa4cc00fc31b2212 by martin
[libcxx] [test] Don't test CharFile (/dev/null) on windows

Also clarify a nearby comment regarding block devices.

Differential Revision: https://reviews.llvm.org/D98138
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.symlink_status/symlink_status.pass.cpp
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.status/status.pass.cpp
Commit 40391cef61644d565c5db4d416e227698647f1ed by whitneyt
[LoopUnrollRuntime] Add option to assume the non latch exit block to be
predictable. (Add LIT)

Reviewed By: Meinersbur, bmahjour

Differential Revision: https://reviews.llvm.org/D97747
The file was addedllvm/test/Transforms/LoopUnroll/runtime-loop-at-most-two-exits.ll
Commit 0d8f102809b260d046d60a280d005362725c33e5 by whitneyt
[NFC][LoopUnroll] Add `-unroll-runtime-other-exit-predictable=false` in
`runtime-multiexit-heuristic.ll`

Added -unroll-runtime-other-exit-predictable=false in
runtime-multiexit-heuristic.ll to make it more robust.
runtime-multiexit-heuristic.ll intention is to test
-unroll-runtime-multi-exit=false, so the default value of
-unroll-runtime-other-exit-predictable should not impact the result.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D98098
The file was modifiedllvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll
Commit 8d5a981a135a0f0ae0a10c59b7c8093aae1c28de by joker.eph
Revert "[SimplifyCFG] Update FoldBranchToCommonDest to be poison-safe"

This reverts commit 99108c791de0285ee726a10e8274772b18cee73c.
Clang is miscompiling LLVM with this change, a stage-2 build hits
multiple failures.

As a repro, I built clang in a stage1 directory and used it this way:

cmake -G Ninja ../llvm \
  -DCMAKE_CXX_COMPILER=`pwd`/../build-stage1/bin/clang++ \
  -DCMAKE_C_COMPILER=`pwd`/../build-stage1/bin/clang \
  -DLLVM_TARGETS_TO_BUILD="X86;NVPTX;AMDGPU" \
  -DLLVM_ENABLE_PROJECTS=mlir \
  -DLLVM_BUILD_EXAMPLES=ON \
  -DCMAKE_BUILD_TYPE=Release \
  -DLLVM_ENABLE_ASSERTIONS=On
ninja check-mlir
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/test/Transforms/SimplifyCFG/ARM/branch-fold-threshold.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/annotations.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll
The file was modifiedllvm/test/Transforms/PGOProfile/chr.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/common-dest-folding.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
The file was modifiedllvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/switch_create-custom-dl.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/fold-debug-location.ll
Commit 64240f8138f55cbc1d0451d776f481762f7db0ab by keithbsmiley
llvm-nm: add flag to suppress no symbols warning

This spelling matches binutils https://sourceware.org/bugzilla/show_bug.cgi?id=27408

Differential Revision: https://reviews.llvm.org/D83152
The file was modifiedllvm/test/tools/llvm-nm/X86/nm-no-symbols.test
The file was modifiedllvm/docs/CommandGuide/llvm-nm.rst
The file was modifiedllvm/tools/llvm-nm/llvm-nm.cpp
Commit fe9a4b55da7443c0ae308587cf86e4e31a0993c0 by joker.eph
Fix build post-revert in 8d5a981a135a

One commit introduced after the reverted change was using an API
introduced there, this is reintroducing the API, but not the original
broken change.
The file was modifiedllvm/include/llvm/IR/IRBuilder.h
Commit ab49f50ad0bedc437cc2bd621c5badfdac31f462 by arthur.j.odwyer
[libc++] Fix typos in the synopsis of bit_xor, bit_not, etc. NFC.
The file was modifiedlibcxx/include/functional
Commit 7514f1a312751089ef25df02eaf638a5a5192da3 by phosek
[Driver] Pass --unwindlib=platform to tests that check unwinder

There are two additional cases that were missed in D98131.

Differential Revision: https://reviews.llvm.org/D98158
The file was modifiedclang/test/Driver/linux-ld.c
Commit df9158c9a45a6902c2b0394f9bd6512e3e441f31 by tu.da.wei
[LoopInterchange] Replace tightly-nesting-ness check with the one from `LoopNest`

The check `tightlyNested()` in `LoopInterchange` is similar to the one in `LoopNest`.
In fact, the former misses some cases where loop-interchange is not feasible and results in incorrect behaviour.
Replacing it with the much robust version provided by `LoopNest` reduces code duplications and fixes https://bugs.llvm.org/show_bug.cgi?id=48113.

`LoopInterchange` has a weaker definition of tightly or perfectly nesting-ness than the one implemented in `LoopNest::arePerfectlyNested()`.
Therefore, `tightlyNested()` is instead implemented with `LoopNest::checkLoopsStructure` and additional checks for unsafe instructions.

Reviewed By: Whitney

Differential Revision: https://reviews.llvm.org/D97290
The file was modifiedllvm/include/llvm/Analysis/LoopNestAnalysis.h
The file was addedllvm/test/Transforms/LoopInterchange/pr48113.ll
The file was modifiedllvm/lib/Analysis/LoopNestAnalysis.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopInterchange.cpp
Commit e94e55712c0adb49adcd14c1839e9e30a8e2e6f1 by joker.eph
Forward the `LLVM_ENABLE_LIBCXX` CMake parameter to the mlir standalone test

This allows to build and test MLIR with `-DLLVM_ENABLE_LIBCXX=ON`.
The file was modifiedmlir/test/lit.site.cfg.py.in
The file was modifiedmlir/examples/standalone/test/lit.site.cfg.py.in
The file was modifiedmlir/test/Examples/standalone/test.toy
The file was modifiedmlir/test/Examples/standalone/lit.local.cfg
Commit 5f9489b754055da979876bcb5a357310251c6b87 by freddy.ye
[X86] Refine "Support -march=alderlake"

Refine "Support -march=alderlake"
Compare with tremont, it includes 25 more new features. They are
adx, aes, avx, avx2, avxvnni, bmi, bmi2, cldemote, f16c, fma, hreset, invpcid,
kl, lzcnt, movdir64b, movdiri, pclmulqdq, pconfig, pku, serialize, shstk, vaes,
vpclmulqdq, waitpkg, widekl.

Reviewed By: pengfei

Differential Revision: https://reviews.llvm.org/D97832
The file was modifiedllvm/lib/Support/X86TargetParser.cpp
The file was modifiedclang/test/Preprocessor/predefined-arch-macros.c
The file was modifiedllvm/lib/Target/X86/X86.td
Commit ba860963b156db3b653c67ef044df877f3cea9cc by raul.tambre
[CMake][compiler-rt] Use copying instead of symlinking for LSE builtins on non-Unix-likes

As reported in D93278 post-review symlinking requires privilege escalation on Windows.
Copying is functionally same, so fallback to it for systems that aren't Unix-like.
This is similar to the solution in AddLLVM.cmake.

Reviewed By: ikudrin

Differential Revision: https://reviews.llvm.org/D98111
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
Commit de3185647d937260dc4e3bdbce857cb1416110d9 by david.sherwood
[LoopVectorize][SVE] Add tests for vectorising conditional loads of invariant addresses

For loops of the form:

void foo(int *a, int *cond, short *inv, long long n) {
   for (long long i=0; i<n; ++i) {
     if (cond[i])
       a[i] = *inv;
   }
}

we can vectorise for SVE using masked gather loads where the array
of pointers is simply a vector splat of 'inv' and the mask comes
from the condition 'cond[i] != 0'.

This patch simply adds tests upstream to defend this capability.

Differential Revision: https://reviews.llvm.org/D98043
The file was addedllvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
Commit 63851a701eac1918777535c8e1df2e97c7a01966 by flo
[Matrix] Implement += and -= for MatrixType.

Make sure CompLHSTy is set correctly for += and -= and matrix type
operands.

Bugzilla ticket is here https://bugs.llvm.org/show_bug.cgi?id=46164

Patch by Saurabh Jha <saurabh.jhaa@gmail.com>

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D98075
The file was modifiedclang/test/CodeGen/matrix-type-operators.c
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/Sema/matrix-type-operators.c
Commit 18173c57bd39fad2320b27c1bd13d62cf23e891d by fraser
[RISCV] Add new entry points to getContainerForFixedLengthVector

While working on adding fixed-length vectors to the calling convention,
it was necessary to be able to query for a fixed-length vector container
type without access to an instance of SelectionDAG.

This patch modifies the "main" getContainerForFixedLengthVector function
to use an instance of TargetLowering rather than SelectionDAG, and
preserves the SelectionDAG overload as a wrapper.

An additional non-static version of the function was also added to
simplify the common case in RISCVTargetLowering.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D97925
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
Commit 3b9667a84c2f08f7616f642467649dac94aaad13 by frgossen
Clarify documentation for `Elementwise`, `Scalarizable`, `Vectorizable`, and
`Tensorizable` traits.

Differential Revision: https://reviews.llvm.org/D97841
The file was modifiedmlir/include/mlir/IR/OpDefinition.h
Commit 66e3a4abe99c89cc12cc5818f988d7f3519d5c65 by jeremy.morse
Revert "[tsan] Use large address space mapping on Apple Silicon Macs"

This reverts commit bde2e5607167f3e9fd8c6b51275fc8ac654230a2.

This patch produces a compile failure on linux amd64 environments, when
running:

  ninja GotsanRuntimeCheck

I get various build errors:

  ../rtl/tsan_platform.h:608: error: use of undeclared identifier 'Mapping'
    return MappingImpl<Mapping, Type>();

Here's a buildbot with the same failure during stage "check-tsan in gcc
build", there are other unrelated failures in there.

  http://lab.llvm.org:8011/#/builders/37/builds/2831
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_posix.cpp
Commit 1f1b15508618c57357658cf0855f645a6618efb5 by sguelton
[NFC] Use ranged loop iteration instead of explicit looping
The file was modifiedllvm/lib/MC/MCELFStreamer.cpp
Commit ad294e572bc5c16f9dc420cc994322de6ca3fbfb by Alexander.Richardson
[sanitizers] Fix interception of GLibc regexec

Previously, on GLibc systems, the interceptor was calling __compat_regexec
(regexec@GLIBC_2.2.5) insead of the newer __regexec (regexec@GLIBC_2.3.4).
The __compat_regexec strips the REG_STARTEND flag but does not report an
error if other flags are present. This can result in infinite loops for
programs that use REG_STARTEND to find all matches inside a buffer (since
ignoring REG_STARTEND means that the search always starts from the first
character).

The underlying issue is that GLibc's dlsym(RTLD_NEXT, ...) appears to
always return the oldest versioned symbol instead of the default. This
means it does not match the behaviour of dlsym(RTLD_DEFAULT, ...) or the
behaviour documented in the manpage.

It appears a similar issue was encountered with realpath and worked around
in 77ef78a0a5dbaa364529bd05ed7a7bd9a71dd8d4.

See also https://sourceware.org/bugzilla/show_bug.cgi?id=14932 and
https://sourceware.org/bugzilla/show_bug.cgi?id=1319.

Fixes https://github.com/google/sanitizers/issues/1371

Reviewed By: #sanitizers, vitalybuka, marxin

Differential Revision: https://reviews.llvm.org/D96348
The file was modifiedcompiler-rt/lib/memprof/memprof_interceptors.cpp
The file was modifiedcompiler-rt/lib/msan/msan_interceptors.cpp
The file was modifiedcompiler-rt/lib/asan/asan_interceptors.cpp
The file was modifiedcompiler-rt/lib/asan/asan_interceptors.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
The file was addedcompiler-rt/test/sanitizer_common/TestCases/Posix/regex_startend.cpp
The file was modifiedcompiler-rt/lib/memprof/memprof_interceptors.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
Commit f71cee136d7ea83b21c099e04d5807e2f5cff88e by llvm-dev
[X86] Break if-else chain. NFCI.

Both if blocks affect control flow - we don't need the else.

Fixes clang-tidy warning.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit c2d18d700500991eff15ac674dacdeb3e1d8c21d by llvm-dev
[KnownBits] Add min/max shift amount handling to shl/lshr/ashr KnownBits helpers

Pulled out of the original D90479 patch - also includes the "impossible shift amount" filtering from computeKnownBitsFromShiftOperator.

Differential Revision: https://reviews.llvm.org/D90479
The file was modifiedllvm/lib/Support/KnownBits.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/icmp-constant.ll
Commit 6f3778d31a9accdcb5a910506d3ff6debf7b92bc by Raphael Isemann
[lldb][NFC] std::set -> DenseSet in ClangModulesDeclVendor

ModuleID is just an integer so let's use a DenseSet.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
Commit c9ff39a3f9840c84453f23a37386a3dc374f055a by hokein.wu
Add "assert require" for the test added in df9158c9a45a6902c2b0394f9bd6512e3e441f31

The test is using "debug-only", it was failing in opt built mode.
The file was modifiedllvm/test/Transforms/LoopInterchange/pr48113.ll
Commit 962c6fda4d33767dd84d8234f2ac086cd3e3b264 by spatel
[JumpThreading] auto-generate complete test checks; NFC
The file was modifiedllvm/test/Transforms/JumpThreading/thread-two-bbs.ll
Commit b9f169fb7dcd09721a4487801873a61a1e20da7e by martin
[libcxx] Document windows specifics regarding file_type and perms. NFC.

This was requested in the review of D98138.

Differential Revision: https://reviews.llvm.org/D98155
The file was modifiedlibcxx/include/filesystem
Commit a093942c287501484481384dd03686ffaa5fc98e by spatel
[ConstProp][JumpThreading] add more test coverage for potential nullptr folds; NFC

See D98150.
The file was modifiedllvm/test/Transforms/JumpThreading/thread-two-bbs.ll
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/icmp-null.ll
Commit f75b5305f4def4973027a9b96fb3f1e50ce056e3 by spatel
[ConstantFold] allow folding icmp of null and constexpr

I noticed that we were not folding expressions like this:
icmp ult (constexpr), null
in https://llvm.org/PR49355, so we end up with extremely large
icmp instructions as the constant expressions pile up on each other.

There is no potential to mis-fold an unsigned boundary condition
with a zero/null, so this is just falling through a crack in the
pattern matching.

The more general case of comparisons of non-zero constants and
constexpr are more tricky and may require the datalayout to know
how to cast to different types, etc. Negative tests verify that
we are only changing a subset of potential patterns.

Differential Revision: https://reviews.llvm.org/D98150
The file was modifiedllvm/test/Transforms/JumpThreading/thread-two-bbs.ll
The file was modifiedllvm/test/Transforms/InstCombine/vector_gep1-inseltpoison.ll
The file was modifiedllvm/test/CodeGen/PowerPC/pr46923.ll
The file was modifiedllvm/test/Transforms/InstCombine/vector_gep1.ll
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/icmp-null.ll
Commit 203731d2c82bc1ba0cfaeb8f3d38e696158ca2cd by thakis
[clang/mac] Accept -why_load and make -whyload an alias for it

From `man ld`:

     -why_load   Log why each object file in a static library is loaded.
                 That is, what symbol was needed.
                 Also called -whyload for compatibility.

`-why_load` is the spelling preferred by the linker and `-whyload` an old
compatibility setting. clang should accept the preferred form, and map both
forms to the preferred form.

Differential Revision: https://reviews.llvm.org/D98156
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedclang/include/clang/Driver/Options.td
Commit acce401068e78a8c5dc9e06802111ffad3da763f by saghir
[PowerPC] Change target data layout for 16-byte stack alignment

This changes the target data layout to make stack align to 16 bytes
on Power10. Before this change, stack was being aligned to 32 bytes.

Reviewed By: #powerpc, nemanjai

Differential Revision: https://reviews.llvm.org/D96265
The file was modifiedclang/test/CodeGen/target-data.c
The file was modifiedlld/test/ELF/common-archive-lookup.s
The file was addedllvm/test/CodeGen/PowerPC/P10-stack-alignment.ll
The file was modifiedclang/lib/Basic/Targets/PPC.h
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetMachine.cpp
Commit 08d9e2ceec60f4801b19243c6a4fcacb33aa043c by sguelton
[NFC] Avoid useless BitVector move
The file was modifiedllvm/lib/CodeGen/CFIInstrInserter.cpp
Commit e5d958c45629ccd2f5b5f7432756be1d0fcf052c by stephen.tozer
[DebugInfo] Support DIArgList in DbgVariableIntrinsic

This patch updates DbgVariableIntrinsics to support use of a DIArgList for the
location operand, resulting in a significant change to its interface. This patch
does not update all IR passes to support multiple location operands in a
dbg.value; the only change is to update the DbgVariableIntrinsic interface and
its uses. All code outside of the intrinsic classes assumes that an intrinsic
will always have exactly one location operand; they will still support
DIArgLists, but only if they contain exactly one Value.

Among other changes, the setOperand and setArgOperand functions in
DbgVariableIntrinsic have been made private. This is to prevent code from
setting the operands of these intrinsics directly, which could easily result in
incorrect/invalid operands being set. This does not prevent these functions from
being called on a debug intrinsic at all, as they can still be called on any
CallInst pointer; it is assumed that any code directly setting the operands on a
generic call instruction is doing so safely. The intention for making these
functions private is to prevent DIArgLists from being overwritten by code that's
naively trying to replace one of the Values it points to, and also to fail fast
if a DbgVariableIntrinsic is updated to use a DIArgList without a valid
corresponding DIExpression.
The file was modifiedllvm/lib/Target/AArch64/AArch64StackTagging.cpp
The file was modifiedllvm/lib/Transforms/Utils/LCSSA.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Scalar/ADCE.cpp
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/unittests/Transforms/Utils/LocalTest.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopRotationUtils.cpp
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/lib/IR/Constants.cpp
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/Bitcode/Reader/MetadataLoader.cpp
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
Commit 7a46d34a1953625f03b71494c0f33fe00316e4ba by kai
[SystemZ][z/OS] Add support to validate a HLASM Label.

- This patch adds in support to determine whether a particular label
  is valid for the hlasm variant
- The label syntax being checked is that of an ordinary HLASM symbol
  (Reference, Chapter 2 (Coding and Structure) - Terms, Literals and
  Expressions - Terms - Symbols - Ordinary Symbol)
- To achieve this, the virtual function isLabel defined in
  MCTargetAsmParser.h is made use of
- The isLabel function is overridden in SystemZAsmParser for the
  hlasm variant, and the syntax is checked appropriately
- Things remain unchanged for the att variant
- Further patches will add in support to emit the label. These future
  patches will make use of this isLabel function

Reviewed By: uweigand, Kai

Differential Revision: https://reviews.llvm.org/D97748
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.h
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp
Commit 4343c68fa3ffb2d84a7f18af047d1d24d2062bd8 by stephen.tozer
Fix: [DebugInfo] Support DIArgList in DbgVariableIntrinsic

This patch removed the only use of a lambda capture, triggering an error
on `-Werror -Wunused-lambda-capture` builds.
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit a89a3c2c7d55e672f5154408396975587f9de28c by yhegde
Add Semantic check for Flang OpenMP 4.5 - 2.7.1 Do Loop restrictions for Threadprivate.
Implementation of Do loop threadprivate check.

Files:

resolve-directives.cpp

Testcases:

omp-do04-positivecase.f90
omp-do04.f90

Reviewed by: Kiran Chandramohan @kiranchandramohan

Differential Revision: https://reviews.llvm.org/D96686
The file was addedflang/test/Semantics/omp-do04-positivecase.f90
The file was modifiedflang/test/Semantics/omp-do04.f90
The file was modifiedflang/lib/Semantics/resolve-directives.cpp
Commit 60d4c73b30a0e324c6ae314722eb036f70f4b03a by georgakoudis1
Run non-filechecked commands in update_cc_test_checks.py

Some tests in clang require running non-filechecked commands to generate the actual filecheck input. For example, tests for openmp offloading require generating the host bc without any checking, before running the clang command to actually generate the filechecked IR of the target device. This patch enables `update_cc_test_checks.py` to run non-filechecked run lines in-place.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D97068
The file was addedclang/test/utils/update_cc_test_checks/exec-all-runlines.test
The file was addedclang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c
The file was addedclang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected
The file was modifiedllvm/utils/update_cc_test_checks.py
Commit b0f0115308e4e8692b254c3b0e20f3743616b2d5 by lei
[AIX][TLS] Generate 32-bit general-dynamic access code sequence

Adds support for the TLS general dynamic access model to
assembly files on AIX 32-bit.

To generate the correct code sequence when accessing a TLS variable
`v`, we first create two TOC entry nodes, one for the variable offset, one
for the region handle. These nodes are followed by a `PPCISD::TLSGD_AIX`
node (new node introduced by this patch).
The `PPCISD::TLSGD_AIX` node (`TLSGDAIX` pseudo instruction) is
expanded to 2 copies (to put the variable offset and region handle in
the right registers) and a call to `__tls_get_addr`.

This patch also changes the way TC entries are generated in asm files.
If the generated TC entry is for the region handle of a TLS variable,
we add the `@m` relocation and the `.` prefix to the entry name.
For example:

```
L..C0:
  .tc .v[TC],v[TL]@m -> region handle
L..C1:
  .tc v[TC],v[TL] -> variable offset
```

Reviewed By: nemanjai, sfertile

Differential Revision: https://reviews.llvm.org/D97948
The file was addedllvm/test/CodeGen/PowerPC/aix-tls-gd-int.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetStreamer.h
The file was addedllvm/test/CodeGen/PowerPC/aix-tls-gd-double.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
The file was addedllvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-tls-checks.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.h
The file was modifiedllvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
Commit e2738b3758a9d5a6dfdc5a6768046b44a1b9f135 by jonathan.l.peyton
[OpenMP] Fix potential integer overflow in dynamic schedule code

Restrict the chunk_size * chunk_num to only occur for valid
chunk_nums and reimplement calculating the limit to avoid overflow.

Differential Revision: https://reviews.llvm.org/D96747
The file was modifiedopenmp/runtime/src/kmp_dispatch.cpp
The file was addedopenmp/runtime/test/worksharing/for/omp_for_dynamic_large_chunk.c
Commit 57a0e0d4c2a1c83f8c0d50b893616220d1167e00 by stephen.tozer
Fix 2: [DebugInfo] Support DIArgList in DbgVariableIntrinsic

Changes to function calls in LocalTest resulted in comparisons between
unsigned values and signed literals; the latter have been updated to be
unsigned to prevent this warning.
The file was modifiedllvm/unittests/Transforms/Utils/LocalTest.cpp
Commit 1b7e5d461aee80cd3031b4854ab71f6721b71e31 by weratt
[lldb] Fix error message in IRInterpreter

`memory_read_error` -> `memory_write_error`

Reviewed By: teemperor

Differential Revision: https://reviews.llvm.org/D98170
The file was modifiedlldb/source/Expression/IRInterpreter.cpp
Commit c4542005dae203dc4cb4e4be22628d4e24b4d5b6 by Tim Northover
AArch64/MacOS: switch default CPU to apple-a13.

The DevKits had A12 processors, but they're all gone now and real hardware has
an A13.
The file was modifiedclang/test/Preprocessor/aarch64-target-features.c
The file was modifiedclang/test/Driver/aarch64-mac-cpus.c
The file was modifiedclang/lib/Driver/ToolChains/Arch/AArch64.cpp
Commit 42c195f0ec8f2d9236b237c5ad2c6f3ca9b4184c by benny.kra
[mlir][Shape] Allow shape.split_at to return extent tensors and lower it to std.subtensor

split_at can return an error if the split index is out of bounds. If the
user knows that the index can never be out of bounds it's safe to use
extent tensors. This has a straight-forward lowering to std.subtensor.

Differential Revision: https://reviews.llvm.org/D98177
The file was modifiedmlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
The file was modifiedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
Commit ff58b243acfb9674b2461683a019f5d4421c4ae7 by aqjune
Apply update_test_checks.py to test/Transforms/Util/assume-builder.ll (NFC)
The file was modifiedllvm/test/Transforms/Util/assume-builder.ll
Commit addbc9b34d6fc4757ea1582bd3dd4d9da1cfaf5c by jan.kratochvil
[nfc] [lldb] Remove unused function DWARFAttribute::set
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
Commit 2ef03bc3a83f67a98d82a03a0c0f7ac9caf2426f by nikita.ppv
[ConstProp] Add more tests for pointer icmp folding (NFC)
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/icmp-null.ll
Commit f08148e874088a07b972203a183db00de9c38a70 by nikita.ppv
[ConstProp] Fix folding of pointer icmp with signed predicates

While @g ugt null is always true (ignoring weak symbols),
@g sgt null is not necessarily the case -- that would imply that
it is forbidden to place globals in the high half of the address
space.
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/icmp-null.ll
The file was modifiedllvm/lib/IR/ConstantFold.cpp
Commit 7faad5c90033c56a32b07eac527a456d60ed9a70 by nikita.ppv
[ConstantFold] Handle icmp of global and null consistently

Return UGT rather than NE for icmp @g, null, which is slightly
stronger. This is consistent with what we do for more complex
folds. It is somewhat silly that @g ugt null does not get folded
while (gep @g) ugt null does.
The file was modifiedllvm/test/Transforms/InstSimplify/ConstProp/icmp-null.ll
The file was modifiedllvm/lib/IR/ConstantFold.cpp
Commit 2bf1955f8b3272fce1d06fa10ffe1d91f9b08045 by flo
[InstCombine] Pre-commit tests for redundant phis with pointer casts.

Pre-commit tests for D98058.
The file was addedllvm/test/Transforms/InstCombine/phi-pointercasts.ll
Commit 2211a49294b9aaa8d5f0f1187e7dcf26910071a9 by nikita.ppv
[Assembler] Fix global icmp test

Remove test that no longer folds after
f08148e874088a07b972203a183db00de9c38a70.
The file was modifiedllvm/test/Assembler/ConstantExprFold.ll
Commit dc4ca9b0d43a27bdf638799b4c4f4c64452bea7a by Raphael Isemann
[lldb][NFC] Code style fixes for ClangModulesDeclVendor

Doxygenify comments and remove {} around one line if's.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
Commit 5e963a24415eb88d512eb74c8addf87051f7969a by Sanne.Wouda
Rehome an orphaned comment [NFC]

As seen in 35827164c4, the "shuffle x, x, mask" comment has drifted away
from the implementation of the pattern. Put it back.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Commit 05a6e2eb9a412db22309031d2326bf6a3aa0c90c by Sanne.Wouda
[InstCombine] Add a combine for a shuffle of similar bitcasts

Some intrinsics wrapper code has the habit of ignoring the type of the
elements in vectors, thinking of vector registers as a "bag of bits". As
a consequence, some operations are shared between vectors of different
types are shared. For example, functions that rearrange elements in a
vector can be shared between vectors of int32 and float.

This can result in bitcasts in awkward places that prevent the backend
from recognizing some instructions. For AArch64 in particular, it
inhibits the selection of dup from a general purpose register (GPR), and
mov from GPR to a vector lane.

This patch adds a pattern in InstCombine to move the bitcasts past the
shufflevector if this is possible. Sometimes this even allows
InstCombine to remove the bitcast entirely, as in the included tests.

Alternatively this could be done with a few extra patterns in the
AArch64 backend, but InstCombine seems like a better place for this.

Differential Revision: https://reviews.llvm.org/D97397
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
The file was addedllvm/test/Transforms/InstCombine/shuffle-cast-dist.ll
Commit 63abbeb6a8b7dbc57ff90a13c73ac2b41486ee70 by jan.kratochvil
[nfc] [lldb] [testsuite] Cleanup of recently added dwarf5-line-strp.s
The file was modifiedlldb/test/Shell/SymbolFile/DWARF/dwarf5-line-strp.s
Commit 97a7bc5831152eabcd61e5b970c054ce67c2c91b by listmail
[gvn] Precisely propagate equalities to phi operands

The code used for propagating equalities (e.g. assume facts) was conservative in two ways - one of which this patch fixes. Specifically, it shifts the code reasoning about whether a use is dominated by the end of the assume block to consider phi uses to exist on the predecessor edge. This matches the dominator tree handling for dominates(Edge, Use), and simply extends it to dominates(BB, Use).

Note that the decision to use the end of the block is itself a conservative choice. The more precise option would be to use the later of the assume and the value, and replace all uses after that. GVN handles that case separately (with the replace operand mechanism) because it used to be expensive to ask dominator questions within blocks. With the new instruction ordering support, we should probably rewrite this code at some point to simplify.

Differential Revision: https://reviews.llvm.org/D98082
The file was modifiedllvm/include/llvm/IR/Dominators.h
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/lib/IR/Dominators.cpp
The file was modifiedllvm/test/Transforms/GVN/phi.ll
Commit c41ae246ac673e97ec1abdc2b9cbe1989f8682fe by tianshilei1992
[OpenMP][Clang][NVPTX] Only build one bitcode library for each SM

In D97003, CUDA 9.2 is the minimum requirement for OpenMP offloading on
NVPTX target. We don't need to have macros in source code to select right functions
based on CUDA version. we don't need to compile multiple bitcode libraries of
different CUDA versions for each SM. We don't need to worry about future
compatibility with newer CUDA version.

`-target-feature +ptx61` is used in this patch, which corresponds to the highest
PTX version that CUDA 9.2 can support.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D97198
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/CMakeLists.txt
The file was modifiedclang/lib/Driver/ToolChains/Cuda.cpp
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.cu
The file was addedclang/test/Driver/Inputs/libomptarget/libomptarget-nvptx-sm_35.bc
The file was removedclang/test/Driver/Inputs/libomptarget/libomptarget-nvptx-cuda_102-sm_35.bc
The file was modifiedclang/test/Driver/openmp-offload-gpu.c
Commit e68fafa49f91c5e775605cbbde0815fc4809bf46 by hoy
[CSSPGO] llvm-profdata support for CS profile.

Context-sensitive AutoFDO profile has a different name scheme where full calling contexts are encoded as function names. When processing CS proifle, llvm-profdata should use full contexts instead of leaf function names.

Reviewed By: wmi, wenlei, wlei

Differential Revision: https://reviews.llvm.org/D97998
The file was modifiedllvm/test/tools/llvm-profdata/sample-hot-func-list.test
The file was modifiedllvm/test/tools/llvm-profdata/sample-overlap.test
The file was modifiedllvm/tools/llvm-profdata/llvm-profdata.cpp
Commit a2651266c5eb08f9dcb059247a35b1ce88ad148e by craig.topper
[RISCV] Add explicit i64 types to RV64 isel patterns to stop tablegen from generating unneeded i32 patterns for RV32 HwMode.
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoA.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoM.td
Commit 7a64cc4a764eb30499d8254d071e2e315a46f3dd by craig.topper
[RISCV] Make use of DAG.getNeutralElement in lowerVECREDUCE to avoid repeating the same list of constants. NFC

Reviewed By: frasercrmck, khchen

Differential Revision: https://reviews.llvm.org/D98091
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
Commit 239a618180313a13bb2b4b9cf2cd3828f1487c42 by listmail
[instcombine] Collapse trivial and recurrences

If we have a recurrence of the form <Start, And, Step> we know that the value taken by the recurrence stabilizes on the first iteration (provided step is loop invariant). We can exploit that fact to remove the loop carried dependence in the recurrence.

Differential Revision: https://reviews.llvm.org/D97578 (and part)
The file was modifiedllvm/test/Transforms/InstCombine/recurrence.ll
The file was modifiedllvm/test/Transforms/IndVarSimplify/X86/pr45360.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
Commit ebc61f9d3caaf9683be6af91c33ef029b67b9ff8 by listmail
[instcombine] Collapse trivial or recurrences

If we have a recurrence of the form <Start, Or, Step> we know that the value taken by the recurrence stabilizes on the first iteration (provided step is loop invariant). We can exploit that fact to remove the loop carried dependence in the recurrence.

Differential Revision: https://reviews.llvm.org/D97578 (or part)
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
The file was modifiedllvm/test/Transforms/InstCombine/recurrence.ll
Commit f1f9cc6c400fb67b7c41c9a5049b4fa93a20667b by listmail
Fix ppc build bot after 239a6181

(Yes, I checked, return undef is the right result for the function.)
The file was modifiedllvm/test/Transforms/PhaseOrdering/reassociate-after-unroll.ll
Commit fe7333174f54149c00cd32383bf5f6f05455de93 by jan.kratochvil
[nfc] [lldb] Removed unused operator== for DWARFAbbreviationDeclaration and DWARFAttribute

Also DWARFAttribute::operator== was buggy as it was ignoring its `m_value`.
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
Commit 7cdcb4a3b98004e5003ef0cfc748aaf30e8a7cfa by csigg
[mlir] NFC: Add #endif comment.
The file was modifiedmlir/test/lib/Transforms/TestConvertGPUKernelToCubin.cpp
Commit 9525af7b916a0f706c3646946a5c4cd7cf41cb55 by stephen.tozer
[DebugInfo] Support representation of multiple location operands in SDDbgValue

This patch modifies the class that represents debug values during ISel,
SDDbgValue, to support multiple location operands (to represent a dbg.value that
uses a DIArgList). Part of this class's functionality has been split off into a
new class, SDDbgOperand.

The new class SDDbgOperand represents a single value, corresponding to an SSA
value or MachineOperand in the IR and MIR respectively. Members of SDDbgValue
that were previously related to that specific value (as opposed to the
variable or DIExpression), such as the Kind enum, have been moved to
SDDbgOperand. SDDbgValue now contains an array of SDDbgOperand instead, allowing
it to hold more than one of these values.

All changes outside SDDbgValue are simply updates to use the new interface.

Differential Revision: https://reviews.llvm.org/D88585
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit cb3542e1ca36d3deb49103336bbd409bc87b2177 by rob.suderman
[MLIR][TOSA] Added lowerings for Reduce operations to Linalg

Lowerings for min, max, prod, and sum reduction operations on int and float
values. This includes reduction tests for both cases.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D97893
The file was modifiedmlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
The file was modifiedmlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
Commit c0450af55996930cf3ba927fb79e36fe97219144 by stephen.tozer
Fix: [DebugInfo] Support representation of multiple location operands in SDDbgValue

Removes a "default" label from a fully covered switch, causing errors on
-Wcovered-switch-default builds.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
Commit e4492b6f31ffc6eaf8476aaf0ad737c563767028 by Andrey.Churbanov
[OpenMP] NFC: temporarily disable assertion until the bug with dependences is fixed
The file was modifiedopenmp/runtime/src/kmp_taskdeps.h
Commit ebe6161c54b92199d897d086834e0c873e3de01c by zibi
[SystemZ][z/OS] Missing locale functions libc++

The aim is to add the missing z/OS specific locale functions for libc++ (newlocale, freelocale and uselocale).

Reviewed By: ldionne, #libc, curdeius

Differential Revision: https://reviews.llvm.org/D98044
The file was addedlibcxx/include/__support/ibm/locale_mgmt_zos.h
The file was modifiedlibcxx/src/CMakeLists.txt
The file was modifiedlibcxx/include/CMakeLists.txt
The file was modifiedlibcxx/include/__support/ibm/xlocale.h
The file was addedlibcxx/src/support/ibm/xlocale_zos.cpp
Commit d9a29a67527fbabd0e0388aefa8e6aa9b19f3f03 by listmail
constify getUnderlyingObject implementation [nfc]
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
Commit aa0c571a5fa9130ccd932f9b6970440a1bae177f by sbc
[WebAssembly] Add new relocation for location relative data

This `R_WASM_MEMORY_ADDR_SELFREL_I32` relocation represents an offset
between its relocating address and the symbol address. It's very similar
to `R_X86_64_PC32` but restricted to be used for only data segments.

```
S + A - P
```

A: Represents the addend used to compute the value of the relocatable
field.
P: Represents the place of the storage unit being relocated.
S: Represents the value of the symbol whose index resides in the
relocation entry.

Proposal: https://github.com/WebAssembly/tool-conventions/issues/162

Differential Revision: https://reviews.llvm.org/D96659
The file was modifiedllvm/include/llvm/MC/MCWasmObjectWriter.h
The file was addedlld/test/wasm/reloc-relative.s
The file was modifiedlld/wasm/InputFiles.cpp
The file was modifiedllvm/lib/Object/RelocationResolver.cpp
The file was modifiedllvm/lib/BinaryFormat/Wasm.cpp
The file was modifiedllvm/test/MC/WebAssembly/bad-fixup-expr.s
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
The file was modifiedlld/wasm/InputChunks.cpp
The file was modifiedlld/wasm/InputFiles.h
The file was modifiedllvm/lib/Object/WasmObjectFile.cpp
The file was modifiedllvm/lib/MC/WasmObjectWriter.cpp
The file was modifiedllvm/include/llvm/BinaryFormat/WasmRelocs.def
The file was addedllvm/test/MC/WebAssembly/reloc-relative.ll
Commit 08c709a2664878ca4b460144b75f3d7b5a8c2707 by thakis
[gn build] (manually) port ebe6161c54b9
The file was modifiedllvm/utils/gn/secondary/libcxx/src/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 621023b21853d711e02a339e9452d78a8687f3d7 by wei.huang
[AIX][TLS] Add assert check of valid csect type for the storage mapping class XCOFF::XMC_UL

This patch adds the assert check inside the constructor for the csect (MCSectionXCOFF) to ensure
valid csect type used for the storage mappping class XCOFF:XMC_UL.
The file was modifiedllvm/include/llvm/MC/MCSectionXCOFF.h
Commit f0fcad5ccc25a73a0b50fd96b9857ea694cac8f9 by gbalats
[dfsan] Remove hardcoded shadow width in struct.ll

As a preparation step for fast8 support, we need to update the tests
to pass in both modes. That requires generalizing the shadow width
and remove any hard coded references that assume it's always 2 bytes.

Reviewed By: stephan.yichao.zhao

Differential Revision: https://reviews.llvm.org/D98090
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/struct.ll
Commit e81d813717b2ef227c5b995057153d2cca027afb by martin
[clang] Don't set CLANG_DEFAULT_UNWINDLIB to none if rtlib is set to compiler-rt

002dd47bdd674fad8186650f07458b1e062545df was meant to not be any
functional change, but it turned out it was.

With CLANG_DEFAULT_RTLIB set to compiler-rt, CLANG_DEFAULT_UNWINDLIB used
to bet set to an empty string, but now was set to "none".

If one only overrode rtlib to libgcc, one previously would get libgcc
as unwind lib, but now didn't. This caused test failures, fixed in
41476d89b82647c1ff690fdc805c859262d571e5.

Secondly, for the android target, the previous default was to link
libunwind, which this now changed.

Reinstate the exact same behaviour as before (removing the previously
typoed cmake check) and fix the option comment in one place to match
the other one above.

Differential Revision: https://reviews.llvm.org/D98142
The file was modifiedclang/CMakeLists.txt
Commit a3fee3993a0936f7ff462a94e469bb8127c82116 by minyihh
[M68k][CODE_OWNERS](0/8) Add code owner for the M68k target

Assign yours truely as code owner for the upcoming M68k target

Differential Revision: https://reviews.llvm.org/D95315
The file was modifiedllvm/CODE_OWNERS.TXT
Commit 503343191e12ccb9dad7e89072cd3e897caf4c2d by minyihh
[M68k][TableGen](1/8) TableGen related changes

- Add a new TableGen backend: CodeBeads
- Add support to generate logical operand information

For the first item, it is currently a workaround of M68k's (complex)
instruction encoding. A typical architecture, especially CISC one like
X86, normally uses `MCInstrDesc::TSFlags` to carry instruction encoding
info. However, at the early days of M68k backend development, we found
it difficult to fit every possible encoding into the 64-bit
`MCInstrDesc::TSFlags`. Therefore CodeBeads was invented to provide
an alternative, arbitrary length container for instruciton encoding
info. However, in the long term we incline not to use a new TG
backend for less common pattern like what we encountered in M68k. A bug
has been created to host to discussion on migrating from CodeBeads to
more concise solution: https://bugs.llvm.org/show_bug.cgi?id=48792

The second item was also served for similar purpose. It created utility
functions that tell you the index of a `MachineOperand` in a
`MachineInst` given a logical operand index. In normal cases a logical
operand is the same as `MachineOperand`, but for operands using complex
addressing mode a logical operand might be consisting of multiple
`MachineOperand`. The TableGen-ed `getLogicalOperandIdx`, for instance,
can give you the mapping between these two concepts. Nevertheless, we
hope to remove this feature in the future if possible. Since it's not
really useful for the targets supported by LLVM now either.

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88385
The file was modifiedllvm/utils/TableGen/TableGenBackends.h
The file was modifiedllvm/include/llvm/Target/Target.td
The file was modifiedllvm/utils/TableGen/InstrInfoEmitter.cpp
The file was modifiedllvm/utils/TableGen/CMakeLists.txt
The file was addedllvm/utils/TableGen/CodeBeadsGen.cpp
The file was modifiedllvm/utils/TableGen/TableGen.cpp
Commit 6dcc325ce04541a766bef8217d7063ab2063caf0 by minyihh
[M68k][MIR](2/8) Changes in the target-independent MIR part

- Add new callback in `TargetInstrInfo` --
  `isPCRelRegisterOperandLegal` -- to query whether pc-rel
   register MachineOperand is legal.
- Add new function to search DebugLoc in a reverse ordering

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88386
The file was modifiedllvm/include/llvm/CodeGen/MachineBasicBlock.h
The file was modifiedllvm/lib/CodeGen/MachineBasicBlock.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetInstrInfo.h
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
Commit bec7b166923bbaf0882ff4665224d7a8a7320aa0 by minyihh
[M68k](3/8) Skeleton and target description files

- Infrastructure for the target (i.e. build files, target triple etc.)
- All of the target description TableGen file

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88389
The file was addedllvm/lib/Target/M68k/M68kInstrCompiler.td
The file was addedllvm/lib/Target/M68k/TargetInfo/CMakeLists.txt
The file was addedllvm/lib/Target/M68k/M68k.td
The file was addedllvm/lib/Target/M68k/M68kInstrShiftRotate.td
The file was addedllvm/lib/Target/M68k/M68kInstrBits.td
The file was addedllvm/lib/Target/M68k/M68kRegisterInfo.td
The file was addedllvm/lib/Target/M68k/M68kInstrData.td
The file was modifiedllvm/include/llvm/ADT/Triple.h
The file was addedllvm/lib/Target/M68k/M68kInstrArithmetic.td
The file was addedllvm/lib/Target/M68k/M68kInstrControl.td
The file was addedllvm/lib/Target/M68k/M68kInstrInfo.td
The file was addedllvm/lib/Target/M68k/CMakeLists.txt
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kMCTargetDesc.cpp
The file was addedllvm/lib/Target/M68k/M68kInstrFormats.td
The file was addedllvm/lib/Target/M68k/MCTargetDesc/CMakeLists.txt
The file was addedllvm/lib/Target/M68k/M68kSchedule.td
The file was addedllvm/lib/Target/M68k/M68kTargetMachine.cpp
The file was addedllvm/lib/Target/M68k/TargetInfo/M68kTargetInfo.cpp
The file was modifiedllvm/lib/Support/Triple.cpp
The file was addedllvm/lib/Target/M68k/M68kCallingConv.td
The file was modifiedllvm/cmake/config-ix.cmake
Commit 8dddc15297f1101f7e312dd0fd9cd57246dbc8bb by minyihh
[M68k](4/8) MC layer and object file support

- Add the M68k-specific MC layer implementation
- Add ELF support for M68k
- Add M68k-specifc CC and reloc

TODO: Currently AsmParser and disassembler are not implemented yet.
Please use this bug to track the status:
https://bugs.llvm.org/show_bug.cgi?id=48976

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88390
The file was modifiedllvm/lib/Target/M68k/MCTargetDesc/CMakeLists.txt
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.cpp
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.h
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kMCTargetDesc.h
The file was modifiedllvm/lib/Target/M68k/TargetInfo/M68kTargetInfo.cpp
The file was modifiedllvm/include/llvm/IR/CallingConv.h
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kMCAsmInfo.cpp
The file was addedllvm/include/llvm/BinaryFormat/ELFRelocs/M68k.def
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kFixupKinds.h
The file was modifiedllvm/lib/Object/ELF.cpp
The file was modifiedllvm/include/llvm/module.modulemap
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kBaseInfo.h
The file was modifiedllvm/lib/Target/M68k/MCTargetDesc/M68kMCTargetDesc.cpp
The file was modifiedllvm/lib/ObjectYAML/ELFYAML.cpp
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kELFObjectWriter.cpp
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kAsmBackend.cpp
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
The file was modifiedllvm/include/llvm/Object/ELFObjectFile.h
The file was addedllvm/lib/Target/M68k/MCTargetDesc/M68kMCAsmInfo.h
The file was modifiedllvm/include/llvm/BinaryFormat/ELF.h
Commit 5ac19e0acf86ec2b080aaee6dd9226d64778ce83 by minyihh
[M68k](5/8) Target-specific lowering

- TargetMachine implementation for M68k
- ISel, ISched for M68k
- Other lowering (e.g. FrameLowering)
- AsmPrinter

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88391
The file was addedllvm/lib/Target/M68k/M68kFrameLowering.h
The file was modifiedllvm/lib/Target/M68k/CMakeLists.txt
The file was addedllvm/lib/Target/M68k/M68kCollapseMOVEMPass.cpp
The file was addedllvm/lib/Target/M68k/M68kRegisterInfo.cpp
The file was addedllvm/lib/Target/M68k/M68kSubtarget.cpp
The file was addedllvm/lib/Target/M68k/M68k.h
The file was addedllvm/lib/Target/M68k/M68kISelDAGToDAG.cpp
The file was addedllvm/lib/Target/M68k/M68kInstrInfo.h
The file was addedllvm/lib/Target/M68k/M68kTargetObjectFile.cpp
The file was addedllvm/lib/Target/M68k/M68kAsmPrinter.cpp
The file was addedllvm/lib/Target/M68k/M68kAsmPrinter.h
The file was addedllvm/lib/Target/M68k/M68kFrameLowering.cpp
The file was addedllvm/lib/Target/M68k/M68kRegisterInfo.h
The file was modifiedllvm/lib/Target/M68k/M68kTargetMachine.cpp
The file was addedllvm/lib/Target/M68k/M68kMachineFunction.cpp
The file was addedllvm/lib/Target/M68k/M68kExpandPseudo.cpp
The file was addedllvm/lib/Target/M68k/M68kCallingConv.h
The file was addedllvm/lib/Target/M68k/M68kMCInstLower.h
The file was addedllvm/lib/Target/M68k/M68kISelLowering.cpp
The file was addedllvm/lib/Target/M68k/M68kSubtarget.h
The file was addedllvm/lib/Target/M68k/M68kMCInstLower.cpp
The file was addedllvm/lib/Target/M68k/M68kMachineFunction.h
The file was addedllvm/lib/Target/M68k/M68kISelLowering.h
The file was addedllvm/lib/Target/M68k/M68kInstrInfo.cpp
The file was addedllvm/lib/Target/M68k/M68kInstrBuilder.h
The file was addedllvm/lib/Target/M68k/M68kTargetObjectFile.h
The file was addedllvm/lib/Target/M68k/M68kTargetMachine.h
Commit c23a780c306c410008ab127009cda26c7d9e5966 by minyihh
[M68k][test](6/8) Add all of the tests

And a small utilities -- extract-section.py -- that helps extracting
specific object file section and printing in textual format. This
utility is just a workaround for tests inside `Encoding`. Hopefully in
the future we can replace dependencies in those tests with existing tools
(e.g. llvm-readobj). Please refer to this bug for more context:
https://bugs.llvm.org/show_bug.cgi?id=49245

Note that since we don't have AsmParser for now, we are testing the MC
part using MIR as input and put those tests under the `Encoding` folder.
In the future when AsmParser (and disassembler) is finished, those tests
will be moved to `test/MC/M68k`.

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88392
The file was addedllvm/test/CodeGen/M68k/Control/setcc.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxCALL.mir
The file was addedllvm/test/CodeGen/M68k/CodeModel/small-static.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_FMI.mir
The file was addedllvm/test/CodeGen/M68k/Arith/mul64.ll
The file was addedllvm/test/CodeGen/M68k/Control/long-setcc.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_RM.mir
The file was addedllvm/test/CodeGen/M68k/CConv/c-call.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMove_RM.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxCMP_RR.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Bits/Classes/MxBTST_MI.mir
The file was addedllvm/test/CodeGen/M68k/Control/cmp.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Relocations/data-pc-rel.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMove_MR.mir
The file was addedllvm/test/CodeGen/M68k/CConv/c-args.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Bits/Classes/MxBTST_RI.mir
The file was addedllvm/test/CodeGen/M68k/Alloc/dyn_alloca_aligned.ll
The file was addedllvm/test/CodeGen/M68k/CConv/fastcc-args.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_FMR.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/README.md
The file was addedllvm/utils/extract-section.py
The file was addedllvm/test/CodeGen/M68k/Arith/imul.ll
The file was addedllvm/test/CodeGen/M68k/Arith/sdiv-exact.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Bits/Classes/MxBTST_RR.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/ShiftRotate/Classes/MxSR_DI.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/call-pc-rel.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxLEA.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxJMP.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxCMP_BI.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_RFRR_xEA.mir
The file was addedllvm/test/CodeGen/M68k/CodeModel/medium-pie-global-access.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_RFRR_EAd.mir
The file was addedllvm/test/CodeGen/M68k/Arith/add-with-overflow.ll
The file was addedllvm/test/CodeGen/M68k/Arith/sub.ll
The file was addedllvm/test/CodeGen/M68k/CodeModel/small-pie-global-access.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_RFRI.mir
The file was addedllvm/test/CodeGen/M68k/CodeModel/medium-pic.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMove_MI.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMove_RI.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_RFRRF.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Bits/Classes/MxBTST_MR.mir
The file was addedllvm/test/CodeGen/M68k/lit.local.cfg
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxCMP_RM.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxDiMu.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxScc.mir
The file was addedllvm/test/CodeGen/M68k/CodeModel/medium-pie.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxCMP_MI.mir
The file was modifiedllvm/utils/UpdateTestChecks/asm.py
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxCMP_RI.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxBRA.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxBcc.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Relaxations/branch.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Relocations/data-gotpcrel.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Relocations/data-gotoff.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMove_MM.mir
The file was addedllvm/test/CodeGen/M68k/CodeModel/small-pic.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMoveCCR.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Relocations/text-plt.mir
The file was addedllvm/test/CodeGen/M68k/Arith/lshr.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_RFRM.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxNOP.mir
The file was addedllvm/test/CodeGen/M68k/Arith/sub-with-overflow.ll
The file was addedllvm/test/CodeGen/M68k/Arith/smul-with-overflow.ll
The file was addedllvm/test/CodeGen/M68k/Arith/add.ll
The file was addedllvm/test/CodeGen/M68k/CodeModel/medium-static.ll
The file was addedllvm/test/CodeGen/M68k/CodeModel/small-pie.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_MR.mir
The file was addedllvm/test/CodeGen/M68k/Arith/divide-by-constant.ll
The file was addedllvm/test/CodeGen/M68k/CConv/c-args-inreg.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxExt.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/ShiftRotate/Classes/MxSR_DD.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxNEG.mir
The file was addedllvm/test/CodeGen/M68k/varargs.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxBiArOp_RFRI_xEA.mir
The file was addedllvm/test/CodeGen/M68k/CConv/fastcc-call.ll
The file was addedllvm/test/CodeGen/M68k/Arith/umul-with-overflow.ll
The file was addedllvm/test/CodeGen/M68k/CollapseMOVEM.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMove_RR.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Relocations/data-abs.mir
The file was addedllvm/test/CodeGen/M68k/Arith/imul-neg.ll
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/branch-pc-rel.mir
The file was addedllvm/test/CodeGen/M68k/Encoding/Control/Classes/MxRTS.mir
Commit 5eb7a5814a5c629378ba2a4a45fc65cd7f183c9c by minyihh
[cfe][M68k](7/8) Clang basic support

This is the first patch supporting M68k in Clang
- Register M68k as a target
- Target specific CodeGen support
- Target specific attribute support

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88393
The file was addedclang/lib/Basic/Targets/M68k.cpp
The file was modifiedclang/lib/Basic/CMakeLists.txt
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/Basic/Targets.cpp
The file was addedclang/lib/Basic/Targets/M68k.h
Commit 5509748f2ce5e06bda7da754297d09a0e68a1f30 by minyihh
[cfe][driver][M68k](8/8) Clang driver support

Add M68k-specific toolchain and driver configurations / options.

Authors: myhsu, m4yers, glaubitz

Differential Revision: https://reviews.llvm.org/D88394
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
The file was modifiedclang/lib/Driver/ToolChains/Gnu.cpp
The file was addedclang/lib/Driver/ToolChains/Arch/M68k.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was addedclang/lib/Driver/ToolChains/Arch/M68k.h
The file was addedclang/test/Driver/m68k-features.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/CMakeLists.txt
The file was addedclang/test/Driver/m68k-sub-archs.cpp
Commit bb1fe3f943719eacae0195350cf7f84c36f1f9e0 by llvmgnsyncbot
[gn build] Port 503343191e12
The file was modifiedllvm/utils/gn/secondary/llvm/utils/TableGen/BUILD.gn
Commit b790a15e4b478930e5d9049d2a88f8cee36d7d9e by llvmgnsyncbot
[gn build] Port 5509748f2ce5
The file was modifiedllvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
Commit e1928f0e9215f6c9afa7faa411e0128407c0c4d8 by llvmgnsyncbot
[gn build] Port 5eb7a5814a5c
The file was modifiedllvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
Commit 29482426b58e3c0e81ffe6b69c08067b3adc6461 by asbirlea
Revert "[LICM] Make promotion faster"

Revert 3d8f842712d49b0767832b6e3f65df2d3f19af4e
Revision triggers a miscompile sinking a store incorrectly outside a
threading loop. Detected by tsan.
Reverting while investigating.

Differential Revision: https://reviews.llvm.org/D89264
The file was modifiedllvm/include/llvm/Analysis/AliasSetTracker.h
The file was modifiedllvm/lib/Analysis/AliasSetTracker.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
Commit 5c26be214d9fd9bd544aab42f51898b447524edc by Jessica Paquette
[AArch64][GlobalISel] Lower G_BUILD_VECTOR -> G_DUP

If we have

```
%vec = G_BUILD_VECTOR %reg, %reg, ..., %reg
```

Then lower it to

```
%vec = G_DUP %reg
```

Also update the selector to handle constant splats on G_DUP.

This will not combine when the splat is all zeros or ones. Tablegen-imported
patterns rely on these being G_BUILD_VECTOR.

Minor code size improvements on CTMark at -Os.

Also adds some utility functions to make it a bit easier to recognize splats,
and an AArch64-specific splat helper.

Differential Revision: https://reviews.llvm.org/D97731
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/Utils.h
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-build-vector-to-dup.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/Utils.cpp
The file was modifiedllvm/lib/Target/AArch64/CMakeLists.txt
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-vashr-vlshr.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-dup.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64Combine.td
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/select-vector-shift.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.h
The file was addedllvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.cpp
Commit 84fa3497c83396c9873712f27f6f1e0f7936034a by llvmgnsyncbot
[gn build] Port 5c26be214d9f
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Commit afa443831bfd6f7ec858aa19dcb21a74d08d8c79 by spatel
[InstSimplify] add tests for cttz of shifted-1; NFC
The file was modifiedllvm/test/Transforms/InstSimplify/call.ll
Commit 0a2d69480da7e4a66c0fa118ec4d10710579551d by spatel
[InstSimplify] cttz(1<<x) --> x

https://alive2.llvm.org/ce/z/TDacYu
https://alive2.llvm.org/ce/z/KF84S3
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/call.ll
Commit 820f508b08d7c94b2dd7847e9710d2bc36d3dd45 by msd.ataei
[PowerPC] Removing _massv place holder

Since P8 is the oldest machine supported by MASSV pass,
_massv place holder is removed and the oldest version of
MASSV functions is assumed. If the P9 vector specific is
detected in the compilation process, the P8 prefix will
be updated to P9.

Differential Revision: https://reviews.llvm.org/D98064
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll
The file was modifiedllvm/test/CodeGen/Generic/replace-intrinsics-with-veclib.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/massv-altivec.ll
The file was modifiedllvm/test/Transforms/Util/add-TLI-mappings.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCLowerMASSVEntries.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/massv-unsupported.ll
The file was modifiedllvm/test/CodeGen/PowerPC/lower-massv-attr.ll
The file was modifiedllvm/test/CodeGen/PowerPC/powf_massv_075_025exp.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
The file was modifiedllvm/test/CodeGen/PowerPC/lower-massv.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/massv-calls.ll
The file was modifiedllvm/include/llvm/Analysis/VecFuncs.def
The file was modifiedllvm/test/CodeGen/PowerPC/pow_massv_075_025exp.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/PowerPC/massv-nobuiltin.ll
Commit 8a8fa09cb78af47ad81e933045fc20ddce8482ff by Kuba Mracek
[tsan] Use large address space mapping on Apple Silicon Macs

Differential Revision: https://reviews.llvm.org/D86377
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_posix.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
Commit 8d79b0536796ab4d13b897aa3d762206aa003e4b by jonathan_roelofs
Add intrinsics_gen as a dependency of libRemarks

Builds were failing with errors like:

```
fatal error: 'llvm/IR/Attributes.inc' file not found
         ^~~~~~~~~~~~~~~~~~~~~~~~
```

rdar://75179147
The file was modifiedllvm/lib/Remarks/CMakeLists.txt
Commit c5a6ad86b066a6f159b687d181d947cb43aab70b by luismarques
[Sanitizer][RISCV] Fix internal_clone

A RISC-V implementation of `internal_clone` was introduced in D87573, as
part of the RISC-V ASan patch set by @EccoTheDolphin. That function was
never used/tested until I ported LSan for RISC-V, as part of D92403. That
port revealed problems in the original implementation, so I provided a fix
in D92403. Unfortunately, my choice of replacing the assembly with regular
C++ code wasn't correct. The clone syscall arguments specify a separate
stack, so non-inlined calls, spills, etc. aren't going to work. This wasn't
a problem in practice for optimized builds of Compiler-RT, but it breaks
for debug builds. This patch fixes the original problem while keeping the
assembly.

Differential Revision: https://reviews.llvm.org/D96954
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
Commit a4bb667d831cb90f2b0f5096faba26b685440f51 by riddleriver
[mlir][IR][NFC] Define the Location classes in ODS instead of C++

This also removes the need for LocationDetail.h.

Differential Revision: https://reviews.llvm.org/D98092
The file was modifiedmlir/lib/Target/SPIRV/Serialization/Serializer.cpp
The file was modifiedmlir/lib/Dialect/Quant/Transforms/ConvertConst.cpp
The file was addedmlir/include/mlir/IR/BuiltinLocationAttributes.td
The file was modifiedmlir/lib/CAPI/IR/IR.cpp
The file was removedmlir/lib/IR/LocationDetail.h
The file was modifiedmlir/include/mlir/IR/CMakeLists.txt
The file was modifiedmlir/lib/Parser/Parser.cpp
The file was modifiedmlir/lib/Parser/LocationParser.cpp
The file was modifiedmlir/lib/Target/LLVMIR/DebugTranslation.cpp
The file was modifiedmlir/lib/IR/MLIRContext.cpp
The file was modifiedmlir/lib/Target/SPIRV/TranslateRegistration.cpp
The file was modifiedmlir/lib/IR/Location.cpp
The file was modifiedmlir/lib/Parser/Lexer.cpp
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
The file was modifiedmlir/include/mlir/IR/Location.h
The file was modifiedmlir/lib/IR/CMakeLists.txt
Commit 0d01dfbc377a259e6d2cf318dd2bdb82da44ad1a by riddleriver
[mlir][IR][NFC] Move the remaining builtin types to ODS

This will allow for removing the duplicated type documentation from LangRef and instead link to the builtin dialect documentation.

Differential Revision: https://reviews.llvm.org/D98093
The file was modifiedmlir/include/mlir/IR/BuiltinTypes.td
The file was modifiedmlir/lib/IR/BuiltinTypes.cpp
The file was modifiedmlir/include/mlir/IR/BuiltinTypes.h
The file was modifiedmlir/include/mlir/IR/OpBase.td
The file was modifiedmlir/lib/IR/TypeDetail.h
Commit c460ef61d64f3ccb46f60d1b53f271f5b1c05b79 by wlei
[CSSPGO][llvm-profgen] Change sample count of dangling probe in llvm-profgen

Differential Revision: https://reviews.llvm.org/D96811
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
The file was modifiedllvm/test/tools/llvm-profgen/inline-cs-pseudoprobe.test
The file was modifiedllvm/test/tools/llvm-profgen/noinline-cs-pseudoprobe.test
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
Commit f7d73a6b9e8d6aad2039be1f6f42c9b3e012677f by Jessica Paquette
[SelectionDAG] Don't scalarize vector fpround sources that don't need it.

Similar to the workaround code in ScalarizeVecRes_UnaryOp, ScalarizeVecRes_SETCC
, ScalarizeVecRes_VSELECT, etc.

If we have a case like this:

```
define <1 x half> @func(<1 x float> %x) {
  %tmp = fptrunc <1 x float> %x to <1 x half>
  ret <1 x half> %tmp
}
```

On AArch64, the <1 x float> is legal. So, this will crash if we call
GetScalarizedVector on it.

Differential Revision: https://reviews.llvm.org/D98208
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
Commit 34d0d644ffa4a3282a03f6e47b5f420a09ff9848 by spatel
[ValueTracking] move/add helper to get inverse min/max; NFC

We will need to this functionality to improve min/max folds
in instcombine when we canonicalize to intrinsics.
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit c05d574a98592228fdba7d350e9a1e4f40d18e2e by spatel
[InstCombine] add tests for min/max intrinsics with not ops; NFC
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit 3f71ce85897cc92190af6a66c5b2dcffc85212e2 by peter
scudo: Support memory tagging in the secondary allocator.

This patch enhances the secondary allocator to be able to detect buffer
overflow, and (on hardware supporting memory tagging) use-after-free
and buffer underflow.

Use-after-free detection is implemented by setting memory page
protection to PROT_NONE on free. Because this must be done immediately
rather than after the memory has been quarantined, we no longer use the
combined allocator quarantine for secondary allocations. Instead, a
quarantine has been added to the secondary allocator cache.

Buffer overflow detection is implemented by aligning the allocation
to the right of the writable pages, so that any overflows will
spill into the guard page to the right of the allocation, which
will have PROT_NONE page protection. Because this would require the
secondary allocator to produce a header at the correct position,
the responsibility for ensuring chunk alignment has been moved to
the secondary allocator.

Buffer underflow detection has been implemented on hardware supporting
memory tagging by tagging the memory region between the start of the
mapping and the start of the allocation with a non-zero tag. Due to
the cost of pre-tagging secondary allocations and the memory bandwidth
cost of tagged accesses, the allocation itself uses a tag of 0 and
only the first four pages have memory tagging enabled.

This is a reland of commit 7a0da8894348 which was reverted in commit
9678b07e42ee. This reland includes the following changes:

- Fix the calculation of BlockSize which led to incorrect statistics
  returned by mallinfo().
- Add -Wno-pedantic to silence GCC warning.
- Optionally add some slack at the end of secondary allocations to help
  work around buggy applications that read off the end of their
  allocation.

Differential Revision: https://reviews.llvm.org/D93731
The file was modifiedcompiler-rt/lib/scudo/standalone/wrappers_c.inc
The file was modifiedcompiler-rt/lib/scudo/standalone/secondary.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/memtag.h
The file was modifiedcompiler-rt/lib/scudo/standalone/CMakeLists.txt
The file was modifiedcompiler-rt/lib/scudo/standalone/primary64.h
The file was modifiedcompiler-rt/lib/scudo/standalone/allocator_config.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tsd_shared.h
The file was modifiedcompiler-rt/lib/scudo/standalone/options.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tsd_exclusive.h
The file was modifiedcompiler-rt/lib/scudo/standalone/combined.h
The file was modifiedcompiler-rt/lib/scudo/standalone/linux.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/common.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/combined_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/fuchsia.cpp
Commit 535a4192a9d19ef5d474f1d6bfa1ab9f08b2b1c7 by lei
[AIX][TLS] Generate 64-bit general-dynamic access code sequence

Add support for the TLS general dynamic access model to assembly
files on AIX 64-bit.

Reviewed By: sfertile

Differential Revision: https://reviews.llvm.org/D98078
The file was modifiedllvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-tls-gd-int.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstr64Bit.td
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-tls-gd-double.ll
The file was removedllvm/test/CodeGen/PowerPC/aix-tls-checks.ll
Commit cfd7d8123a3b1e77343763ac2b62124bfcffe6d6 by psteinfeld
[flang] Fix bad dereference of NULLIFY pointer object

When we have a subprogram that has been determined to contain errors, we do not
perform name resolution on its execution part.  In this case, if the subprogram
contains a NULLIFY statement, the parser::Name of a pointer object in a NULLIFY
statement will not have had name resolution performed on it.  Thus, its symbol
will not have been set.  Later, however, we do semantic checking on the NULLIFY
statement.  The code that did this assumed that the parser::Name of the
pointer object was non-null.

I fixed this by just removing the null pointer check for the "symbol" member of
the "parser::Name" of the pointer object when doing semantic checking for
NULLIFY statements.  I also added a test that will make the compiler crash
without this change.

Differential Revision: https://reviews.llvm.org/D98184
The file was modifiedflang/test/Semantics/nullify02.f90
The file was modifiedflang/lib/Semantics/check-nullify.cpp
Commit 0d96ea0792bccca804ed89f7116ef518e40bf34a by benny.kra
[ValueTracking] Move matchSimpleRecurrence out of line

The header only has a forward declaration of PHINode available, and this
function doesn't seem to get much out of inlining.
The file was modifiedllvm/include/llvm/Analysis/ValueTracking.h
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
Commit 001a12ed59c354aa759ff3e104748c36803cfaa2 by sivachandra
[libc][NFC] Make x86_64 fenv functions msan safe.

These functions used inline asm to read FPU state. This change adds
explicit unpoisoning in these functions as the sanitizers don't see the
read operations.
The file was modifiedlibc/utils/FPUtil/CMakeLists.txt
The file was modifiedlibc/src/__support/CMakeLists.txt
The file was modifiedlibc/utils/FPUtil/x86_64/FEnv.h
Commit 3f3f88fb95033b0461f14bc32b2d4267e06edba0 by sivachandra
[libc][Obvious] Add a file which was missed in 001a12ed59c354aa759ff3e104748c36803cfaa2.
The file was addedlibc/src/__support/sanitizer_annotations.h
Commit 5a91d23ddfb2effd471b919241d1ef80bf1a4c9d by Ben.Dunbobbin
[Docs][Windows Itanium] Add a How-To document for Windows Itanium.

This is a basic How-To that describes:
- What Windows Itanium is.
- How to assemble a build environment.

Differential Revision: https://reviews.llvm.org/D89518
The file was addedllvm/docs/HowToBuildWindowsItaniumPrograms.rst
The file was modifiedllvm/docs/UserGuides.rst
Commit f1b690598eeca0568e39134f28e0a59c1c1f3598 by davelee.com
[build][modules] Fix ObjCARCUtil.h modularization

This change was introduced by this fix:
a2a55def354df2cd4de0b1cbd6b2795a07e6905a.

This makes a submodule for ObjCARCUtil.h, because leaving it in
LLVM_intrinsic_gen causes a dependency cycle between LLVM_IR and
LLVM_intrinsic_gen.
The file was modifiedllvm/include/llvm/module.modulemap
Commit fe5305b3993ce382f3b09c8bc9e37e526b0704f1 by Ben.Dunbobbin
Revert "[Docs][Windows Itanium] Add a How-To document for Windows Itanium."

This reverts commit 5a91d23ddfb2effd471b919241d1ef80bf1a4c9d.

Markup was incorrect.
The file was removedllvm/docs/HowToBuildWindowsItaniumPrograms.rst
The file was modifiedllvm/docs/UserGuides.rst
Commit e08f278f5b5aa506f3f4ff46fff51a1e8336a6e1 by Stanislav.Mekhanoshin
[AMDGPU] Cleanup test checks. NFC.
The file was modifiedllvm/test/MC/AMDGPU/gfx90a_asm_features.s
Commit c245c21c436b5d29da62a7c416f08f8631f5df95 by rahmanl
[llvm-readelf] Support dumping the BB address map section with --bb-addr-map.

This patch lets llvm-readelf dump the content of the BB address map
section in the following format:
```
Function {
  At: <address>
  BB entries [
    {
      Offset:   <offset>
      Size:     <size>
      Metadata: <metadata>
    },
    ...
  ]
}
...
```

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D95511
The file was modifiedllvm/include/llvm/Object/ELF.h
The file was addedllvm/test/tools/llvm-readobj/ELF/bb-addr-map.test
The file was modifiedllvm/docs/CommandGuide/llvm-readobj.rst
The file was modifiedllvm/include/llvm/Object/ELFTypes.h
The file was modifiedllvm/docs/CommandGuide/llvm-readelf.rst
The file was modifiedllvm/unittests/Object/ELFObjectFileTest.cpp
The file was modifiedllvm/include/llvm/ObjectYAML/ELFYAML.h
The file was modifiedllvm/tools/llvm-readobj/llvm-readobj.cpp
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/lib/Object/ELF.cpp
The file was modifiedllvm/tools/llvm-readobj/ObjDumper.h
Commit 2817e21c4172637f0751552d65e67f90bfa71a33 by Tony.Tye
[NFC][AMDGPU] Correct typo in DWARF Extensions For Heterogeneous Debugging

A note in the defintion of DW_OP_piece had an incomplete sentence.

Reviewed By: scott.linder

Differential Revision: https://reviews.llvm.org/D98157
The file was modifiedllvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
Commit dca5737945b9a52d0c66c7ec0cbaa2e15ada69cf by Akira
Move ObjCARCUtil.h back to llvm/Analysis

Instead of adding the header to llvm/IR, just duplicate the marker
string in the auto upgrader.
The file was addedllvm/include/llvm/Analysis/ObjCARCUtil.h
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/PtrState.cpp
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was modifiedllvm/lib/Transforms/Utils/InlineFunction.cpp
The file was modifiedclang/lib/CodeGen/CGObjC.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARC.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
The file was modifiedllvm/lib/Transforms/ObjCARC/ObjCARC.h
The file was removedllvm/include/llvm/IR/ObjCARCUtil.h
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit c22d18b7e81e6b543f549980d3328ab9a18a9c34 by rahmanl
Read NumBlocks as uint64_t.

This fixes the Buildbot failure happened due to a sloppy merge.
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp
Commit f0ccdde3c9ab23f997a4a30a0e9ab7d9435ec1c6 by ruiling.song
[AMDGPU] Remove SI_MASK_BRANCH

This is already deprecated, so remove code working on this.
Also update the tests by using S_CBRANCH_EXECZ instead of SI_MASK_BRANCH.

Reviewed By: foad

Differential Revision: https://reviews.llvm.org/D97545
The file was modifiedllvm/test/CodeGen/AMDGPU/coalescer-subranges-another-prune-error.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/spill-before-exec.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/optimize-if-exec-masking.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/insert-skips-ignored-insts.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/collapse-endcf2.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/coalescer-subregjoin-fullcopy.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/insert-skips-flat-vmem-ds.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/loop_header_nopred.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/skip-branch-taildup-ret.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/readlane_exec0.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/insert-skips-gws.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was modifiedllvm/test/CodeGen/AMDGPU/subreg-split-live-in-error.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/coalescer-with-subregs-bad-identical.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-atomic-insert-end.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/undefined-physreg-sgpr-spill.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertSkips.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/coalescer-extend-pruned-subrange.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/optimize-exec-masking-pre-ra.mir
Commit a24644bb1ce09b40c2d751569dd5bb37ea9c995d by jonathan_roelofs
Revert "Run non-filechecked commands in update_cc_test_checks.py"

This reverts commit 60d4c73b30a0e324c6ae314722eb036f70f4b03a.

The new test is broken on macos hosts. Discussion here:
https://reviews.llvm.org/D97068#2611269
https://reviews.llvm.org/D97068#2612675

... revert to green.
The file was removedclang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c
The file was removedclang/test/utils/update_cc_test_checks/exec-all-runlines.test
The file was modifiedllvm/utils/update_cc_test_checks.py
The file was removedclang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected
Commit c5c6f187a32d4273175443ff396872d54ce71a6b by Ben.Dunbobbin
Reland: [Docs][Windows Itanium] Add a How-To document for Windows Itanium.

This is a basic How-To that describes:
- What Windows Itanium is.
- How to assemble a build environment.

Differential Revision: https://reviews.llvm.org/D89518
The file was addedllvm/docs/HowToBuildWindowsItaniumPrograms.rst
The file was modifiedllvm/docs/UserGuides.rst
Commit 3d6183661d3a2d1e39468a51ebf4cef5bd0a2ed8 by aqjune
[LangRef] mention that the lifetime intrinsics' description in LangRef isn't everything

This is a minor patch that addresses concerns about lifetime in D94002.

We need to mention that what's written in LangRef isn't everything about lifetime.start/end
and its semantics depends on the stack coloring algorithm's pattern matching of a stack pointer.

If the stack coloring algorithm cannot conclude that a pointer is a stack-allocated object, the pointer is conservatively
considered as a non-stack one because stack coloring won't take this lifetime into account while assigning addresses.

A reference from alloca to lifetime.start/end is added as well.

Differential Revision: https://reviews.llvm.org/D98112
The file was modifiedllvm/docs/LangRef.rst
Commit 5f2f84a68a2eb715c818365bbac233dc62af4120 by alexshap
[llvm-objdump][MachO] Add support for dumping function starts

Add support for dumping function starts for Mach-O binaries.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D97027
The file was modifiedllvm/docs/CommandGuide/llvm-objdump.rst
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
The file was addedllvm/test/tools/llvm-objdump/MachO/function-starts.test
The file was modifiedllvm/tools/llvm-objdump/MachODump.h
The file was modifiedllvm/tools/llvm-objdump/MachODump.cpp
Commit 67a05f4e09f08685b2898c6aa3597b06c57fa6ea by ruiling.song
[AMDGPU] Remove unused function opcodeEmitsNoInsts()

This was missed in the patch D97545, and cause buildbot failure.

Reviewed by: critson

Differential Revision: https://reviews.llvm.org/D98229
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertSkips.cpp
Commit ede56e5127c9bd88b870f3300a4af6526c0dca86 by alexshap
[llvm-objcopy][MachO] Add support for --keep-undefined

This diff introduces --keep-undefined in llvm-objcopy/llvm-strip for Mach-O
which makes the tools preserve undefined symbols.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D97040
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was modifiedllvm/docs/CommandGuide/llvm-objcopy.rst
The file was modifiedllvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/CommonOpts.td
The file was modifiedllvm/tools/llvm-objcopy/CopyConfig.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/keep-undefined.test
Commit f2cb3be0f926c53bbc4cd98c7212076b9e3dc64c by alexshap
[docs] Fix llvm-objcopy.rst

Adjust the title underline, NFC.
The file was modifiedllvm/docs/CommandGuide/llvm-objcopy.rst
Commit 5cdb2e98608bf57c216ee7067e8a12d070c9e2bd by shihpo.hung
[RISCV][MC] Fix nf encoding for vector ld/st whole register

The three bit nf is one less than the number of NFIELDS,
so we manually decrement 1 for VS1/2/4/8R & VL1/2/4/8R.

Reviewed By: craig.topper

Differential revision: https://reviews.llvm.org/D98185
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoV.td
The file was modifiedllvm/test/MC/RISCV/rvv/aliases.s
The file was modifiedllvm/test/MC/RISCV/rvv/load.s
The file was modifiedllvm/test/MC/RISCV/rvv/store.s
Commit 7a3e664db5761e27a3cf7d67580f43470f927624 by rafaelauler
[DebugInfo] Do not error on unsupported CIE version

D81469 introduced a check to error on CIE version different
than 1 for eh_frame, but older compilers mistakenly create binaries
with this version set to 3 for DWARF4 or 4 to DWARF5. Move the check
to dump time instead of eh_frame parse time, so we can be tolerant
with older binaries.

Reviewed By: aprantl

Differential Revision: https://reviews.llvm.org/D97830
The file was modifiedllvm/test/DebugInfo/X86/eh-frame-invalid-version.s
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
The file was modifiedllvm/test/DebugInfo/X86/eh-frame-invalid-version-zero.s
Commit f344dfebdb127f66f591749b1f12e9ddfa10a05c by alexshap
[lld][MachO] Add support for LC_FUNCTION_STARTS

Add first bits for emitting LC_FUNCTION_STARTS.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D97260
The file was modifiedlld/MachO/SyntheticSections.h
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/test/MachO/local-got.s
The file was modifiedlld/test/MachO/headerpad.s
The file was addedlld/test/MachO/function-starts.s
The file was modifiedlld/test/MachO/x86-64-relocs.s
Commit 179d72549ea57b8a539ebd94d7d79f12ccc3360c by alexshap
[lld][MachO] Fix function starts test

Fix the build breakage caught by the ppc64le-lld-multistage-test build bot.
NFC.
The file was modifiedlld/test/MachO/function-starts.s
Commit 0c7c5af1a770daa49f13b20dea265f1e87c7edf6 by alexshap
Revert "[lld][MachO] Fix function starts test"

This reverts commit 179d72549ea57b8a539ebd94d7d79f12ccc3360c
since some build bots still appear to be broken.
The file was modifiedlld/test/MachO/function-starts.s
Commit 1b0819e325b78ceae0051172294ebc0fd6aac869 by alexshap
Revert "[lld][MachO] Add support for LC_FUNCTION_STARTS"

This reverts commit f344dfebdb127f66f591749b1f12e9ddfa10a05c.
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/test/MachO/local-got.s
The file was modifiedlld/test/MachO/headerpad.s
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/MachO/SyntheticSections.h
The file was modifiedlld/test/MachO/x86-64-relocs.s
The file was removedlld/test/MachO/function-starts.s
Commit 038f2a337d09e114469ddcfba5b613cdb8c0fe1d by joker.eph
Move LLVM::FMFAttr definition to TableGen (NFC)

This is using the new Attribute storage generation support in
TableGen to define the LLVM FastMathFlags.

Differential Revision: https://reviews.llvm.org/D98007
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
The file was modifiedmlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
The file was modifiedmlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
Commit cf82700af8c658ae09b14c3d01bb1e73e48d3bd3 by tu.da.wei
[CodeGenPrepare] Fix isIVIncrement (PR49466)

In the NFC commit 8d835f42a57f15c0b9053bd7c41ea95821a40e5f, the check for `!L` is
moved to a separate function `getIVIncrement` which, instead of using `BO->getParent()`,
uses `PN->getParent()`. However, these two basic blocks are not necessarily the same.

https://bugs.llvm.org/show_bug.cgi?id=49466 demonstrates a case where `PN` is contained in
a loop while `BO` is not, causing the null-pointer dereference in `L->getLoopLatch()`.

This patch checks whether both `BO` and `PN` belong to the same loop before entering `getIVIncrement`.

Reviewed By: mkazantsev

Differential Revision: https://reviews.llvm.org/D98144
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was addedllvm/test/CodeGen/X86/pr49466.ll
Commit 9afdd3607a035feb47b7d85e6d81d3758a2ed340 by alexshap
[lld][MachO] Add support for LC_FUNCTION_STARTS

Add first bits for emitting LC_FUNCTION_STARTS.

This is a recommit of f344dfeb with the adjusted test
which should address build bots breakages.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D97260
The file was modifiedlld/test/MachO/x86-64-relocs.s
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/test/MachO/headerpad.s
The file was modifiedlld/MachO/SyntheticSections.h
The file was modifiedlld/test/MachO/local-got.s
The file was addedlld/test/MachO/function-starts.s
Commit 1200f85818d16e4f0a57c503e186df7a8ad92435 by davelee.com
[lldb] Remove duplicated ThreadPlanStepOverBreakpoint comment

This comment was present twice in the function.
The file was modifiedlldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
Commit 4c3d759d001950dc3fa0bd721707085c295f6e20 by hoy
[CSSPGO] Always use callsite samples as callsite probe counts.

For CS profile, the callsite count of previously inlined callees is populated with the entry count of the callees. Therefore when trying to get a weight for calliste probe after inlinining, the callsite count should always be used. The same fix has already been made for non-probe case.

Reviewed By: wenlei

Differential Revision: https://reviews.llvm.org/D98094
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
Commit e31c77b1827fa4dd3511f21af11cfab18ecf6d38 by stellaraccident
[mlir][python] Reorganize MLIR python into namespace packages.

* Only leaf packages are non-namespace packages. This allows most of the top levels to be split into different directories or deployment packages. In the previous state, the presence of __init__.py files at each level meant that the entire tree could only ever exist in one physical directory on the path.
* This changes the API usage slightly: `import mlir` will no longer do a deep import of `mlir.ir`, etc. This may necessitate some client code changes.
* Dialect gen code was restructured so that the user is responsible for providing the `my_dialect.py` file, which then must import its peer `_my_dialect_ops_gen`. This gives complete control of the dialect namespace to the user instead of to tablegen code, allowing further dialect-specific python APIs.
* Correspondingly, the previous extension modules `_my_dialect.py` are now `_my_dialect_ops_ext.py`.
* Now that the `linalg` namespace is open, moved the `linalg_opdsl` tool into it.
* This may require some corresponding downstream adjustments to npcomp, circt, et al:
  * Probably some shallow imports need to be converted to deep imports (i.e. not `import mlir` brings in the world).
  * Each tablegen generated dialect now needs an explicit `foo.py` which does a `from ._foo_ops_gen import *`. This is similar to the way that generated code operates in the C++ world.
  * If providing dialect op extensions, those need to be moved from `_foo.py` -> `_foo_ops_ext.py`.

Differential Revision: https://reviews.llvm.org/D98096
The file was removedmlir/lib/Bindings/Python/mlir/dialects/_linalg.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/__init__.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/dsl.py
The file was modifiedmlir/lib/Bindings/Python/mlir/execution_engine.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/__init__.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/opdsl/lit.local.cfg
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/affine.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/ops/__init__.py
The file was addedmlir/lib/Bindings/Python/mlir/_cext_loader.py
The file was removedmlir/lib/Bindings/Python/mlir/dialects/_builtin.py
The file was modifiedmlir/test/Bindings/Python/context_lifecycle.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/comprehension.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/__init__.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/ops.py
The file was modifiedmlir/lib/Bindings/Python/mlir/passmanager.py
The file was removedmlir/test/Bindings/Python/tools/linalg_opdsl/assignments.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/opdsl/doctests.py
The file was removedmlir/lib/Bindings/Python/mlir/dialects/__init__.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/comprehension.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/config.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/config.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/types.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/tensor.py
The file was removedmlir/test/Bindings/Python/tools/linalg_opdsl/test_core_named_ops.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/ops/__init__.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/__init__.py
The file was removedmlir/lib/Bindings/Python/mlir/__init__.py
The file was modifiedmlir/cmake/modules/AddMLIRPythonExtension.cmake
The file was modifiedmlir/docs/Bindings/Python.md
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/types.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/__init__.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/scalar_expr.py
The file was modifiedmlir/test/Bindings/Python/ir_operation.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/opdsl/test_core_named_ops.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/dump_oplib.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/opdsl/shape_maps_iteration.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/scalar_expr.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/yaml_helper.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/opdsl/interfaces.py
The file was removedmlir/test/Bindings/Python/tools/linalg_opdsl/shape_maps_iteration.py
The file was removedmlir/test/Bindings/Python/dialects/linalg.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/lang/affine.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/_ods_common.py
The file was addedmlir/test/Bindings/Python/dialects/linalg/opdsl/assignments.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/python_test.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/_builtin_ops_ext.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/dsl.py
The file was removedmlir/lib/Bindings/Python/mlir/tools/linalg_opdsl/ops/core_named_ops.py
The file was modifiedmlir/lib/Bindings/Python/mlir/transforms/__init__.py
The file was modifiedmlir/test/Bindings/Python/dialects.py
The file was removedmlir/test/Bindings/Python/tools/linalg_opdsl/interfaces.py
The file was removedmlir/test/Bindings/Python/tools/linalg_opdsl/lit.local.cfg
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/dump_oplib.py
The file was modifiedmlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
The file was modifiedmlir/lib/Bindings/Python/mlir/conversions/__init__.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/yaml_helper.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/shape.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/_linalg_ops_ext.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/builtin.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/std.py
The file was removedmlir/test/Bindings/Python/tools/linalg_opdsl/doctests.py
The file was modifiedmlir/lib/Bindings/Python/mlir/ir.py
The file was addedmlir/lib/Bindings/Python/mlir/dialects/linalg/opdsl/lang/__init__.py
Commit c1a4cd551f1c577008c33d78972929ba6593efcc by gysit
[mlir][linalg] refactor the result handling during vectorization.

Return the vectorization results using a vector passed by reference instead of returning them embedded in a structure.

Differential Revision: https://reviews.llvm.org/D98182
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
Commit ba8907bf6f2cf5ca2f6d92a6dfe7bc9cf74f003f by jan.kratochvil
[nfc] llvm-dwarfdump: DWARFAbbreviationDeclaration::AttributeSpec -> DWARFAttribute

`AttributeSpec` does not contain values while `DWARFAttribute` already
does. Therefore one no longer needs to pass `uint64_t *OffsetPtr`.

Differential Revision: https://reviews.llvm.org/D98194
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
Commit 2241b3986cd5b039c0de673866193948485242b6 by vlad.vinogradov
[mlir][CMAKE] Fix cross-compilation build

Use `MLIR_LINALG_ODS_GEN` and `MLIR_LINALG_ODS_YAML_GEN` variables
instead of `MLIR_LINALG_ODS_GEN_EXE` and `MLIR_LINALG_ODS_YAML_GEN_EXE`.
The former are defined in PARENT SCOPE only, so the `if` condition
is never evaluates to `TRUE`.

The logic should be the following (taken from tblgen part):

1. `TOOL_NAME` - CACHE variable (default equal to target name).
   User can override it to actual executable path.
2. `TOOL_NAME_EXE` - internal variable, initialized to `${TOOL_NAME}` first.
   In case of cross-compilation (`LLVM_USE_HOST_TOOLS == TRUE`) if user
   didn't set own path to native executable via `TOOL_NAME` variable,
   CMake will create separate targets to build native tool and
   will override `TOOL_NAME_EXE` to the executable produced by this target.
3. `TOOL_NAME_TARGET` - internal variable, which points to tool target name.
   If the native tool is built as described above, it will point to the
   target correspondant to that native tool.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D98025
The file was modifiedmlir/tools/mlir-linalg-ods-gen/CMakeLists.txt
Commit 587859d977e88648bee1888dce5175ef827f212e by krasimir
clang-format: use `pb` as a canonical raw string delimiter for google style

This updates the canonical text proto raw string delimiter to `pb` for Google style, moving codebases towards a simpler and more consistent style.

Also updates a behavior where the canonical delimiter was not applied for raw strings with empty delimiters detected via well-known enclosing functions that expect a text proto, effectively making the canonical delimiter more viral. This feature is not widely used so this should be safe and more in line with promoting the canonicity of the canonical delimiter.

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D97688
The file was modifiedclang/lib/Format/ContinuationIndenter.cpp
The file was modifiedclang/unittests/Format/FormatTestRawStrings.cpp
The file was modifiedclang/lib/Format/Format.cpp
Commit 90fec5ed65ff9fd6692b89582fb501574137e1aa by zinenko
[mlir] make MLIRPresburger depend on MLIRIR

The analysis library uses Location, which is defined in the MLIRIR
library.
The file was modifiedmlir/lib/Analysis/Presburger/CMakeLists.txt
Commit 8184247f0bd0d40e2a2f3ea4833d6deac966e2cf by zinenko
[mlir] move LLVM target import header and tests

Move Target/LLVMIR.h to target/LLVMIR/Import.h to better reflect the purpose of
this file. Also move all LLVM IR target tests under the LLVMIR directory.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D98178
The file was removedmlir/test/Target/llvmir-debug.mlir
The file was removedmlir/test/Target/llvmir-invalid.mlir
The file was addedmlir/test/Target/LLVMIR/arm-sve.mlir
The file was removedmlir/test/Target/rocdl.mlir
The file was removedmlir/test/Target/arm-neon.mlir
The file was addedmlir/test/Target/LLVMIR/llvmir-debug.mlir
The file was removedmlir/test/Target/llvmir.mlir
The file was modifiedmlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
The file was addedmlir/test/Target/LLVMIR/llvmir-invalid.mlir
The file was addedmlir/include/mlir/Target/LLVMIR/Import.h
The file was addedmlir/test/Target/LLVMIR/rocdl.mlir
The file was addedmlir/test/Target/LLVMIR/llvmir-types.mlir
The file was removedmlir/test/Target/avx512.mlir
The file was addedmlir/test/Target/LLVMIR/avx512.mlir
The file was removedmlir/test/Target/arm-sve.mlir
The file was addedmlir/test/Target/LLVMIR/vector-to-llvm-ir.mlir
The file was addedmlir/test/Target/LLVMIR/llvmir.mlir
The file was addedmlir/test/Target/LLVMIR/openmp-llvm.mlir
The file was removedmlir/include/mlir/Target/LLVMIR.h
The file was removedmlir/test/Target/openmp-llvm.mlir
The file was removedmlir/test/Target/import.ll
The file was removedmlir/test/Target/llvmir-types.mlir
The file was addedmlir/test/Target/LLVMIR/arm-neon.mlir
The file was addedmlir/test/Target/LLVMIR/import.ll
The file was addedmlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
The file was addedmlir/test/Target/LLVMIR/nvvmir.mlir
The file was removedmlir/test/Target/nvvmir.mlir
The file was removedmlir/test/Target/vector-to-llvm-ir.mlir
The file was removedmlir/test/Target/llvmir-intrinsics.mlir
Commit 4289a7f1d78972e9f1fa173c8ee0f6b8b45223d7 by jan.kratochvil
llvm-dwarfdump: Fix DWARF-5 DW_FORM_implicit_const (used by GCC)

Differential Revision: https://reviews.llvm.org/D98195
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFFormValue.cpp
The file was addedllvm/test/DebugInfo/implicit-const-test2.s
Commit 95193ac5ba60b5ffd1af43bc561ce2b745437f94 by andrzej.warzynski
[flang] update character tests to use gtest

Move character tests to gtest, according to reviews from revision
D97349. Create a new temporary directory parallel to old runtime
unittests directory to facilitate the transition. Once patches for all
tests have been accepted using GTest, the old directory may be removed.
The new directory is required because LLVM's CMake unit test
infrastructure requires that the test depends on all source files in
the `CMAKE_CURRENT_SOURCE_DIR` directory.

Reviewed By: awarzynski

Differential Revision: https://reviews.llvm.org/D97403
The file was addedflang/unittests/RuntimeGTest/CharacterTest.cpp
The file was addedflang/unittests/RuntimeGTest/CMakeLists.txt
The file was modifiedflang/unittests/Runtime/CMakeLists.txt
The file was removedflang/unittests/Runtime/character.cpp
The file was modifiedflang/unittests/CMakeLists.txt
Commit cf806d91d562736192f91478eb47daa29c2230bf by jan.kratochvil
[lldb] Fix DWARF-5 DW_FORM_implicit_const (used by GCC)

Differential Revision: https://reviews.llvm.org/D98197
The file was addedlldb/test/Shell/SymbolFile/DWARF/dwarf5-implicit-const.s
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp
Commit 93b170ea24b49d4174de4cc310cfc455c3d94051 by stephen.tozer
[DebugInfo] Handle dbg.values with multiple variable location operands in ISel

This patch adds partial support in Instruction Selection for dbg.values that use
a DIArgList. This patch does not add support for producing DBG_VALUE_LIST, but
adds the logic for processing DIArgLists within the ISel pass. This change is
largely focused on handleDebugValue and some of the functions that it calls.
Outside of this, salvageDebugInfo and transferDbgValues have been modified to
replace individual operands instead of the entire value; dangling debug info for
variadic debug values is not currently supported (but may be added later).

Differential Revision: https://reviews.llvm.org/D88589
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
Commit df6d0579e18e868ef4b6e97794eacd5af86e1b8a by aorlov
Fix a crash in DWARFUnit::getInlinedChainForAddress in case of unexpected DWARF information.

In some cases a broken or invalid debug info could cause a crash in DWARFUnit::getInlinedChainForAddress during parsing a chain of in-lined functions. This patch fixes this issue.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D98119
The file was addedllvm/test/DebugInfo/invalid-inlined-subroutine.s
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
Commit 85801b4c68ee4f1c7b9f2a33162d852b577fe536 by dvyukov
[sanitizers] fix wrong enum of memory_order for mips

Author: mzh (Meng Zhuo)
Reviewed-in: https://reviews.llvm.org/D98231
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_mips.h
Commit 7e5cea5b509f5535eab6d1ea9b90e033570758a6 by tomas.matheson
[Clang][Sema] Warn when function argument is less aligned than parameter

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

GCC's __attribute__((align)) can reduce the alignment of a type when applied to
a typedef.  However, functions which take a pointer or reference to the
original type are compiled assuming the original alignment.  Therefore when any
such function is passed an object of the new, less-aligned type, an alignment
fault can occur.  In particular, this applies to the constructor, which is
defined for the original type and called for the less-aligned object.

This change adds a warning whenever an pointer or reference to an object is
passed to a function that was defined for a more-aligned type.

The calls to ASTContext::getTypeAlignInChars seem change the order in which
record layouts are evaluated, which caused changes to the output of
-fdump-record-layouts. As such some tests needed to be updated:

  * Use CHECK-LABEL rather than counting the number of "Dumping AST Record
    Layout" headers.

  * Check for end of line in labels, so that struct B1 doesn't match struct B
    etc.

  * Add --strict-whitespace, since the whitespace shows meaningful structure.

  * The order in which record layouts are printed has changed in some cases.

  * clang-format for regions changed

Differential Revision: https://reviews.llvm.org/D97187
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was addedclang/test/CodeGen/typedef_alignment_mismatch_warning.cpp
The file was modifiedclang/test/Layout/ms-x86-vfvb-sharing.cpp
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/test/Layout/ms-x86-empty-nonvirtual-bases.cpp
The file was modifiedclang/test/Layout/ms-x86-vtordisp.cpp
The file was modifiedclang/lib/Sema/TreeTransform.h
The file was modifiedclang/test/Layout/ms-x86-empty-virtual-base.cpp
The file was modifiedclang/test/Layout/ms-x86-pack-and-align.cpp
The file was modifiedclang/test/Layout/ms-x86-vfvb-alignment.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/test/Sema/ms_class_layout.cpp
The file was modifiedclang/include/clang/Sema/Sema.h
The file was modifiedclang/test/Layout/ms-x86-primary-bases.cpp
The file was modifiedclang/test/Layout/ms-x86-lazy-empty-nonvirtual-base.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/Layout/ms-x86-basic-layout.cpp
The file was modifiedclang/test/Layout/ms-x86-aligned-tail-padding.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/test/Layout/ms-x86-alias-avoidance-padding.cpp
Commit 2750f3ed3155aedccf42e7eccec915d6578d18e4 by cullen.rhodes
[IR] Introduce llvm.experimental.vector.splice intrinsic

This patch introduces a new intrinsic @llvm.experimental.vector.splice
that constructs a vector of the same type as the two input vectors,
based on a immediate where the sign of the immediate distinguishes two
variants. A positive immediate specifies an index into the first vector
and a negative immediate specifies the number of trailing elements to
extract from the first vector.

For example:

  @llvm.experimental.vector.splice(<A,B,C,D>, <E,F,G,H>, 1) ==> <B, C, D, E>  ; index
  @llvm.experimental.vector.splice(<A,B,C,D>, <E,F,G,H>, -3) ==> <B, C, D, E> ; trailing element count

These intrinsics support both fixed and scalable vectors, where the
former is lowered to a shufflevector to maintain existing behaviour,
although while marked as experimental the recommended way to express
this operation for fixed-width vectors is to use shufflevector. For
scalable vectors where it is not possible to express a shufflevector
mask for this operation, a new ISD node has been implemented.

This is one of the named shufflevector intrinsics proposed on the
mailing-list in the RFC at [1].

Patch by Paul Walker and Cullen Rhodes.

[1] https://lists.llvm.org/pipermail/llvm-dev/2020-November/146864.html

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D94708
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was addedllvm/test/CodeGen/AArch64/named-vector-shuffles-neon.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/include/llvm/CodeGen/ISDOpcodes.h
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
The file was addedllvm/test/CodeGen/AArch64/named-vector-shuffles-sve.ll
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
The file was modifiedllvm/include/llvm/IR/Intrinsics.td
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
Commit 373e1681c970d7e7462164defb98098b7bc79946 by dvyukov
[sanitizers] Enable runtime vma for mips64 in buildgo.sh

Go requires 47 bits VA for tsan.
Go will run race_detector testcases unless tsan warns about "unsupported VMA range"

Author: mzh (Meng Zhuo)
Reviewed-in: https://reviews.llvm.org/D98238
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
Commit bf3a27196085e4fbfdb7095539a4d030a568aee7 by john.brawn
[CodeGen] Report a normal instead of fatal error for label redefinition

A symbol being redefined as a label is something that can happen as a result of
ordinary input, so it shouldn't cause a fatal error. Also adjust the error
message to match the one you get when a symbol is redefined as a variable.

Differential Revision: https://reviews.llvm.org/D98181
The file was addedllvm/test/CodeGen/X86/symbol-redefinition.ll
The file was modifiedllvm/lib/MC/MCStreamer.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/test/CodeGen/X86/equiv_with_vardef.ll
The file was modifiedllvm/test/MC/ELF/section-sym-err.s
The file was modifiedllvm/test/CodeGen/X86/label-redefinition.ll
The file was modifiedllvm/test/CodeGen/XCore/section-name.ll
Commit d1531b08c3d1bd46829a91313e7d6eb24d04c0d0 by kadircet
[clangd] Move logging out of LSPTest base class into a separate one.

This was causing TSan failures due to a race on vptr during destruction,
see
https://lab.llvm.org/buildbot/#/builders/131/builds/6579/steps/6/logs/FAIL__Clangd_Unit_Tests__LSPTest_FeatureModulesThr.

The story is, during the execution of a destructor all the virtual
dispatches should resolve to implementations in the class being
destroyed, not the derived ones. And LSPTests will log some stuff during
destruction (we send shutdown/exit requests, which are logged), which is
a virtual dispatch when LSPTest is derived from clang::clangd::Logger.

It is a benign race in our case, as gtests that derive from LSPTest
doesn't override the `log` method. But still during destruction, we
might try to update vtable ptr (due to being done with destruction of
test and starting destruction of LSPTest) and read from it to dispatch a
log message at the same time.

This patch fixes that race by moving `log` out of the vtable of
`LSPTest`.

Differential Revision: https://reviews.llvm.org/D98241
The file was modifiedclang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Commit 0cccccf0d2cbd707503263785f9a0407d3e2bd5e by falke.marco
[compiler-rt] FuzzedDataProvider: Add missing include

Differential Revision: https://reviews.llvm.org/D98057
The file was modifiedcompiler-rt/include/fuzzer/FuzzedDataProvider.h
Commit 4f7dd715b56f1633b75d80d59838d65cc2828db4 by llvm-dev
M68kInstrInfo::AnalyzeBranchImpl - fix MSVC build. NFCI.

MSVC couldn't resolve the decltype of a capture of a capture - but is happy with an auto.
The file was modifiedllvm/lib/Target/M68k/M68kInstrInfo.cpp
Commit 13c77f204671f403a30d29ec1c9145c556302f66 by sven.vanhaastregt
[OpenCL] Fix builtins that require multiple extensions

Builtins that require multiple extensions, such as certain
`write_imagef` forms, were not exposed because of the Sema check not
splitting the extension string.

Differential Revision: https://reviews.llvm.org/D97930
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/SemaLookup.cpp
Commit 92da5b711970610a2246cfa1baff5c2a63559e1b by flo
[InstCombine] Simplify phis with incoming pointer-casts.

If the incoming values of a phi are pointer casts of the same original
value, replace the phi with a single cast. Such redundant phis are
somewhat common after loop-rotate and removing them can avoid some
unnecessary code bloat, e.g. because an iteration of a loop is peeled
off to make the phi invariant. It should also simplify further analysis
on its own.

InstCombine already uses stripPointerCasts in a couple of places and
also simplifies phis based on the incoming values, so the patch should
fit in the existing scope.

The patch causes binary changes in 47 out of 237 benchmarks in
MultiSource/SPEC2000/SPEC2006 with -O3 -flto on X86.

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D98058
The file was modifiedllvm/test/Transforms/InstCombine/phi-pointercasts.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
Commit 0875c2f7f6d60be96fa272c7b1edc15d57dd4f37 by yuanke.luo
[X86][AMX] Add test case for combining AMX bitcast.
The file was addedllvm/test/Transforms/InstCombine/X86/x86-amx.ll
Commit 3618b212987cb2a11e6d8e5c4087ba17c6526fe3 by chen3.liu
[X86][NFC] Adding one flag to imply whether the instruction should check the predicate when compress EVEX instructions to VEX encoding.

Some EVEX instructions should check the predicates when compress to VEX
encoding. For example, avx512vnni instructions. This is because avx512vnni
doesn't mean that avxvnni is supported on the target.
This patch moving the manually added check to .inc that generated by tablegen.

Differential Revision: https://reviews.llvm.org/D98011
The file was modifiedllvm/lib/Target/X86/X86InstrFormats.td
The file was modifiedllvm/utils/TableGen/X86EVEX2VEXTablesEmitter.cpp
The file was modifiedllvm/lib/Target/X86/X86EvexToVex.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
Commit 98f1564b88579af1657a1d4a997baa66959e2ef3 by alexshap
[lld][MachO] Add missing test requirements

Similarly to the existing tests (e.g. stab.s) function-starts.s
is not supported on Windows.
The file was modifiedlld/test/MachO/function-starts.s
Commit 5491a86f59ceff34b37635723fcba66cc3580c45 by stephen.tozer
[DebugInfo] Emit DBG_VALUE_LIST from ISel

This patch completes ISel support for DIArgList dbg.values by allowing
SDDbgValues with multiple location operands to be emitted as DBG_VALUE_LIST
instructions.

The primary change of this patch is refactoring EmitDbgValue by pulling location
operand emission out to the new function AddDbgValueLocationOps, which is used
for both DIArgList and single value dbg.values. Outside of that, the only
behaviour change is that the scheduler has a lambda added, HasUnknownVReg, to
prevent us from attempting to emit a DBG_VALUE_LIST before all of its used VRegs
have become available.

Differential Revision: https://reviews.llvm.org/D88592
The file was modifiedllvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/InstrEmitter.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
Commit ea5fb241b614bcf555771d4316ad822d81de105f by stephen.tozer
[DebugInfo] Add tests for ISel handling of variadic debug values

This patch adds a set of lit tests for ISel support of DIArgList/DBG_VALUE_LIST.

Differential Revision: https://reviews.llvm.org/D88593
The file was addedllvm/test/DebugInfo/X86/debug_value_list_selectiondag.ll
The file was addedllvm/test/DebugInfo/X86/dbg-val-list-dangling.ll
The file was addedllvm/test/DebugInfo/X86/arg-dbg-value-list.ll
The file was addedllvm/test/DebugInfo/X86/dbg-value-list-dag-combine.ll
The file was addedllvm/test/DebugInfo/X86/dbg-value-list-selectiondag-salvage.ll
The file was addedllvm/test/DebugInfo/X86/dbg-val-list-undef.ll
Commit 7d18cd9394c3abb278e3544b8b4159db59697187 by Stefan Gränitz
[Orc] Fix working memory buffer for section mapping in ELFDebugObject
The file was modifiedllvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
Commit 6a3a386c6fc46e2ddf436b20c171291b6d193de2 by Stefan Gränitz
[Orc] Test DebugObjectManagerPlugin fills in load-address for .text section of in-memory ELF debug object
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
Commit 265bc5af7b3be612e170c66521a120b754128818 by Stefan Gränitz
[Orc] Always check mapped sections for ELFDebugObject are in bounds of working memory buffer

As stated in the JITLink user guide: Do not assume that the input object is well formed.
https://llvm.org/docs/JITLink.html#tips-for-jitlink-backend-developers
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/DebugObjectManagerPlugin.h
The file was modifiedllvm/lib/ExecutionEngine/Orc/DebugObjectManagerPlugin.cpp
Commit fc8d3766d721ebc075e16814e48adf48034ea858 by flo
[ExtVectorType] Support conditional select operator for C++.

This patch implements the conditional select operator for
ext_vector_types in C++. It does so by using the same semantics as for
C.

D71463 added support for the conditional select operator for VectorType
in C++. Unfortunately the semantics between ext_vector_type in C are
different to VectorType in C++. Select for ext_vector_type is based on
the MSB of the condition vector, whereas for VectorType it is `!= 0`.

This unfortunately means that the behavior is inconsistent between
ExtVectorType and VectorType, but I think using the C semantics for
ExtVectorType in C++ as well should be less surprising for users.

Reviewed By: erichkeane, aaron.ballman

Differential Revision: https://reviews.llvm.org/D98055
The file was addedclang/test/CodeGenCXX/vector-size-conditional.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Sema/Sema.h
The file was addedclang/test/SemaCXX/ext-vector-type-conditional.cpp
The file was removedclang/test/CodeGenCXX/vector-conditional.cpp
The file was addedclang/test/CodeGenCXX/ext-vector-type-conditional.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was addedclang/test/SemaCXX/vector-size-conditional.cpp
The file was removedclang/test/SemaCXX/vector-conditional.cpp
Commit 2ff533cba18af853fa0688c101f7ac7e7b594db7 by Stefan Gränitz
[lldb][JITLoaderGDB] Test debug support in JITLink

LLVM OrcJIT is shifting from RuntimeDyld to JITLink. Starting with D96627 I am planning to add debug support. It would be great to have test coverage for it in LLDB early on.

Reviewed By: labath

Differential Revision: https://reviews.llvm.org/D96634
The file was removedlldb/test/Shell/Breakpoint/jitbp_elf.test
The file was addedlldb/test/Shell/Breakpoint/jit-loader_rtdyld_elf.test
The file was addedlldb/test/Shell/Breakpoint/jit-loader_jitlink_elf.test
Commit b70e02a7e73caaa69e4675f6356f825dec04a451 by chen3.liu
[X86][NFC] Move instruction selection of the x86_tdpb[s,u]d_internal and x86_tilezero_internal to X86InstrAMX.td

Differential Revision: https://reviews.llvm.org/D97997
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrAMX.td
Commit 50000abe3cb25f45ec0f293a66a81499726943de by antiagainst
[mlir] Use affine.apply when distributing to processors

This makes it easy to compose the distribution computation with
other affine computations.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D98171
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/test/lib/Transforms/TestLoopMapping.cpp
The file was modifiedmlir/test/lib/Transforms/TestGpuMemoryPromotion.cpp
The file was modifiedmlir/test/Dialect/Linalg/tile-and-distribute.mlir
The file was modifiedmlir/test/Transforms/parametric-mapping.mlir
Commit 41b9209a122e41bb124066ad644a91b3b1fa111e by spatel
[InstCombine] fold min/max intrinsics with not ops

This is a partial translation of the existing select-based
folds. We need to recreate several different transforms to
avoid regressions as noted in D98152.

https://alive2.llvm.org/ce/z/teuZ_J
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit d0884541ccaa3f80526c99c3fcebbb6155c9ed4c by llvm-dev
[X86] canonicalizeShuffleWithBinOps - add binary shuffle handling
The file was modifiedllvm/test/CodeGen/X86/vsplit-and.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 2e826088b9832067994e0348fc768b81632be687 by pavel
[lldb] Fix a bug in D96779 (shared lib directory logic)

This function would fail in debug builds, as the two usages of the
LLDB_PYTHON_RELATIVE_LIBDIR macro would expand to two distinct strings.
The path iterator macros don't support that.

Use a temporary variable to ensure everything points to a single string.
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
Commit 0250b053b5aa7fc16408e6c037e5e71db5e9b012 by n.james93
[clangd] Add a Filesystem that overlays Dirty files.

Create a `ThreadsafeFS` in the `DraftStore` that overlays the dirty file contents over another `ThreadsafeFS`.
This provides a nice thread-safe interface for using dirty file contents throughout the codebase, for example cross file refactoring.
Creating a Filesystem view will overlay a snapshot of the current contents, so if the draft store is updated while the view is being used, it will contain stale contents.

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D94554
The file was modifiedclang-tools-extra/clangd/ClangdLSPServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/unittests/DraftStoreTests.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/DraftStore.h
The file was modifiedclang-tools-extra/clangd/DraftStore.cpp
Commit 574663f9d522420be7a67d9c55728af8330e1dd3 by n.james93
[clangd][NFC] Silence some buildbot warnings after 0250b053

https://reviews.llvm.org/D94554 introduced code which wont compile with some build flags due to a field having the same identifier as a type.

clang-tools-extra/clangd/DraftStore.h:55:11: error: declaration of ‘clang::clangd::DraftStore::Draft clang::clangd::DraftStore::DraftAndTime::Draft’ changes meaning of ‘Draft’ [-fpermissive]
   55 |     Draft Draft;
      |           ^~~~~
clang-tools-extra/clangd/DraftStore.h:30:10: note: ‘Draft’ declared here as ‘struct clang::clangd::DraftStore::Draft’
   30 |   struct Draft {
         |          ^~~~~
The file was modifiedclang-tools-extra/clangd/DraftStore.cpp
The file was modifiedclang-tools-extra/clangd/DraftStore.h
Commit e23317c9dae965ebc5534acea0352621740ae1e7 by martin
[libcxx] [test] Adjust separator form in fs.op.absolute for libc++ on windows

This test was previously tweaked in
321f696920630be1b3c93e2a8b965c624ddd646c to match the output of
of MS STL (except that the MS STL fails on the testcase with an
empty path).

libc++ doesn't produce paths with all normalized separators (and the
spec doesn't mandate it to either).

Tweak the test reference to match exactly what libc++ produces. If
testing with a non-libc++ library, do a relaxed comparison that allows
the separators to differ.

Differential Revision: https://reviews.llvm.org/D98215
The file was modifiedlibcxx/test/support/filesystem_test_helper.h
The file was modifiedlibcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.absolute/absolute.pass.cpp
Commit 272bcd0eeff5297eea5a25223d169dcd44b06ba6 by tbaeder
[clang][sema][NFC] Remove a superfluous semicolon

Silences a GCC warning:

clang/lib/Sema/SemaChecking.cpp:4506:2: warning: extra ‘;’ [-Wpedantic]
};
  ^
The file was modifiedclang/lib/Sema/SemaChecking.cpp
Commit 8d632ca4365519b38004d083301abf385ce87358 by oliver.stannard
[ARM] Add comment explaining stack frame layout

Add a comment explaining how we lay out stack frames for ARM targets,
based on the existing one for AArch64. Also expand the comment to
explain reserved call frames for both architectures.

Differential revision: https://reviews.llvm.org/D98258
The file was modifiedllvm/lib/Target/AArch64/AArch64FrameLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMFrameLowering.cpp
Commit b04fbc191325a0fc07eb6882f5ab85123b6dc165 by andrzej.warzynski
[flang][driver] Refine tests for module search directories

This patch refactors include-module.f90:
  * rename the test file as use-module.f90 to better highlight which
  driver feature is being tested
  * move tests for diagnostics to use-module-error.f90 (it tests that
  `-J/-module-dir` can only be used once)
  * make sure that `f18` is tested when `FLANG_BUILD_NEW_DRIVER` is
  set to `Off`
  * add tests for when all module files are successfully discovered and
  loaded

With this patch, there should be a clear separation into 3 scenarios in
use-module.f90:
  * Everything is OK
  * One module file wasn't found (missing include path for
  basictestingmoduletwo.mod)
  * Two module files are found, but the test requires
  `basictestingmoduleone.mod` from both `Inputs` and `Inputs/module-dir`.
  Only the latter is found.

Reviewed By: tskeith

Differential Revision: https://reviews.llvm.org/D97197
The file was addedflang/test/Flang-Driver/use-module.f90
The file was modifiedflang/test/Flang-Driver/Inputs/module-dir/basictestmoduletwo.mod
The file was modifiedflang/test/Flang-Driver/Inputs/module-dir/basictestmoduleone.mod
The file was addedflang/test/Flang-Driver/use-module-error.f90
The file was removedflang/test/Flang-Driver/include-module.f90
Commit aaf16b80dd4cdeb84caae8f3785ce7e4cc7a0f69 by Andrey.Churbanov
[OpenMP] libomp: eliminate pause from atomic CAS loops

For clang this change is NFC cleanup, because clang
never calls atomic functions from runtime library.

Basically, pause is good in spin-loops waiting for something.
Atomic CAS loops do not wait for anything,
each CAS failure means some other thread progressed.

Performance experiments show that the pause only causes unnecessary slowdown
on CPUs with slow pause instruction, no difference on CPUs with fast pause
instruction, removal of the pause gives lesser binary size which is good.

Differential Revision: https://reviews.llvm.org/D97079
The file was modifiedopenmp/runtime/src/kmp_atomic.cpp
Commit 46d4d1fea401de1d22fe746077a4ca4dd7e137b4 by diggerlin
[AIX] do not emit visibility attribute into IR when there is -mignore-xcoff-visibility

SUMMARY:

n the patch https://reviews.llvm.org/D87451 "add new option -mignore-xcoff-visibility"
we did as "The option -mignore-xcoff-visibility has no effect on visibility attribute when compile with -emit-llvm option to generated LLVM IR."

in these patch we let -mignore-xcoff-visibility effect on generating IR too. the new feature only work on AIX OS

Reviewer: Jason Liu,

Differential Revision: https://reviews.llvm.org/D89986
The file was modifiedclang/test/CodeGen/aix-ignore-xcoff-visibility.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was addedclang/test/CodeGen/aix-visibility-inlines-hidden.cpp
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
Commit 4f8e299785e860cf974d696d7ca83b70a94977fe by bikineev
[Sema] Fix diagnostics for one-byte length modifier

In case a char-literal of type int (C/ObjectiveC) corresponds to a
format specifier with the %hh length modifier, don't treat the literal
as of type char for issuing diagnostics, as otherwise this results in:

printf("%hhd", 'e');
warning: format specifies type 'char' but the argument has type 'char'.

Differential revision: https://reviews.llvm.org/D97951
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/FixIt/format.m
Commit 4e1c487004a29ec9bc56fd47fc30336d033c57dd by adamcz
[clang] Fix crash when creating deduction guide.

We used to trigger assertion when transforming c-tor with unparsed
default argument. Now we ignore such constructors for this purpose.

Differential Revision: https://reviews.llvm.org/D97965
The file was modifiedclang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
Commit ef19f6cbf333ec1558a0dee49c52b9824778a660 by spatel
[InstCombine] add tests for min/max intrinsics with not+constant; NFC
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit 2986a9c7e2e8b8ef86e521cc928dda2577dde15b by spatel
[InstCombine] canonicalize 'not' op after min/max intrinsic

This is another step towards parity between existing select
transforms and min/max intrinsics (D98152)..

The existing 'not' folds around select are complicated, so
it's likely that we will need to enhance this, but this
should be a safe step.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/minmax-intrinsics.ll
Commit df69c69427dea7f5b3b3a4d4564bc77b0926ec88 by stephen.tozer
[DebugInfo] Handle multiple variable location operands in IR

This patch updates the various IR passes to correctly handle dbg.values with a
DIArgList location. This patch does not actually allow DIArgLists to be produced
by salvageDebugInfo, and it does not affect any pass after codegen-prepare.
Other than that, it should cover every IR pass.

Most of the changes simply extend code that operated on a single debug value to
operate on the list of debug values in the style of any_of, all_of, for_each,
etc. Instances of setOperand(0, ...) have been replaced with with
replaceVariableLocationOp, which takes the value that is being replaced as an
additional argument. In places where this value isn't readily available, we have
to track the old value through to the point where it gets replaced.

Differential Revision: https://reviews.llvm.org/D88232
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/unittests/IR/DebugInfoTest.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/IR/User.cpp
The file was modifiedllvm/lib/Transforms/Utils/CodeExtractor.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64StackTagging.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
The file was modifiedllvm/lib/Transforms/Scalar/ADCE.cpp
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modifiedllvm/lib/Transforms/Utils/BasicBlockUtils.cpp
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopRotationUtils.cpp
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
The file was modifiedllvm/lib/Transforms/Utils/Debugify.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
Commit 478317fbb79034694df934900665f363dd6c9a70 by craig.topper
[RISCV] Make the hasStdExtM() check in RISCVInstrInfo::getVLENFactoredAmount emit a diagnostic rather than an assert.

As far as I know we're not enforcing the StdExtM must be enabled
to use the V extension. If we use an assert here and hit this
code in a release build we'll silently emit an invalid instruction.

By using a diagnostic we report the error to the user in release
builds. I think there may still be a later fatal error from
the code emitter though.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D97970
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfo.h
Commit 72ecf2f43ffb5cbc18a3f0572006bb4f891bf3dc by craig.topper
[RISCV] Optimize fixed vector ABS. Fix crash on scalable vector ABS for SEW=64 with RV32.

The default fixed vector expansion uses sra+xor+add since it can't
see that smax is legal due to our custom handling. So we select
smax(X, sub(0, X)) manually.

Scalable vectors are able to use the smax expansion automatically
for most cases. It crashes in one case because getConstant can't build a
SPLAT_VECTOR for nxvXi64 when i64 scalars aren't legal. So
we manually emit a SPLAT_VECTOR_I64 for that case.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D97991
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was addedllvm/test/CodeGen/RISCV/rvv/abs-sdnode.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs.ll
Commit 1c7ad4dd88dd54034d9326a38163a3e5de377e44 by craig.topper
[RISCV] Don't modify the SEW immediate on the V extension pseudo instructions after inserting VSETVLI.

Previously we set the value to -1, but the SEW information could
be useful for scheduling.

Reviewed By: frasercrmck, rogfer01

Differential Revision: https://reviews.llvm.org/D98062
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/add-vsetvli-vlmax.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/add-vsetvli-gpr.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/frameindex-addr.ll
Commit b8b7a9dcdcbcd7427119f92b9a276ac0122ca8c6 by thakis
[clang] unbreak Index/preamble-reparse-changed-module.m with LLVM_APPEND_VC_REV=NO after 46d4d1fea401

See discussion starting at https://reviews.llvm.org/D96816#2572431 .
The same thing is happening with 46d4d1fea401.
The file was modifiedclang/include/clang/Serialization/ASTBitCodes.h
Commit 736afe465f4216f55372a907d7288910f9de6bea by davelee.com
Revert "[build][modules] Fix ObjCARCUtil.h modularization"

This reverts commit f1b690598eeca0568e39134f28e0a59c1c1f3598.
The file was modifiedllvm/include/llvm/module.modulemap
Commit 77ac3166e59f14dee8301c7770882885fb2cbfa3 by craig.topper
[RISCV] Add support for fixed vector reductions.

I've included tests that require type legalization to split the
vector. The i64 version of these scalarizes on RV32 due to type
legalization visiting the result before the vector type. So we
have to abort our custom expansion to avoid creating target
specific nodes with an illegal type. Then type legalization ends
up scalarizing. We might be able to fix this by doing custom
splitting for large vectors in our handler to get down to a legal
type.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D98102
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
Commit f0513413c7e5ffe0f4ba1527898e502af6adec45 by stephen.tozer
[DebugInfo] Add replaceArg function to simplify DBG_VALUE_LIST expressions

The LiveDebugValues and LiveDebugVariables implementations for handling
DBG_VALUE_LIST instructions can be simplified significantly if they do not have
to deal with any duplicated operands, such as a DBG_VALUE_LIST that uses the
same register multiple times in its expression. This patch adds a function,
replaceArg, that can be used to simplify a DIExpression in the case of
duplicated operands.

Differential Revision: https://reviews.llvm.org/D83896
The file was modifiedllvm/unittests/IR/MetadataTest.cpp
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp
Commit 55ae279ba7a5905f39ce3ae79eac7834a4a134cc by nikita.ppv
[FastISel] Don't trivially kill extractvalues (PR49467)

All extractvalues of the same value at the same index will map to
the same register, so even if one specific extractvalue only has
one use, we should not mark it as a trivial kill, as there may be
more extractvalues later.

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

Differential Revision: https://reviews.llvm.org/D98145
The file was modifiedllvm/include/llvm/CodeGen/FastISel.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FastISel.cpp
The file was addedllvm/test/CodeGen/X86/pr49467.ll
Commit 24c0ad714393d6c74e94539f995a0f8d4349bb8e by cdevadas
[AMDGPU] Fix the dead frame indices during custom spill lowering.

AMDGPU target tries to handle the SGPR and VGPR spills in a
custom pass before the actual frame lowering pass. Once they
are handled and the respective frames are eliminated in the
custom pass, certain uses of them still remain. For instance,
the DBG_VALUE instructions inserted by the allocator alongside
the spill instruction will use the corresponding frame index.
They become dead later during PEI and causes a crash while trying to
replace the frame indices. We should possibly avoid this custom pass.
For now, replacing such dead references with null register value.

Reviewed By: arsenm, scott.linder

Differential Revision: https://reviews.llvm.org/D98038
The file was addedllvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
The file was modifiedllvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
The file was addedllvm/test/CodeGen/AMDGPU/vgpr-spill-dead-frame-in-dbg-value.mir
Commit 42e3f97a9dd3a439f63a733c4ee909cba6b77e49 by i
[MC] Change ELFOSABI_NONE to ELFOSABI_GNU for SHF_GNU_RETAIN

GNU ld does not give SHF_GNU_RETAIN GC root semantics for ELFOSABI_NONE.
(https://sourceware.org/pipermail/binutils/2021-March/115581.html)

This allows GNU ld to interpret SHF_GNU_RETAIN and avoids a gold quirk
https://sourceware.org/bugzilla/show_bug.cgi?id=27490

Because ELFObjectWriter is in an anonymous namespace, I have to place
`markGnuAbi` in the parent MCObjectWriter.

Differential Revision: https://reviews.llvm.org/D97976
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
The file was modifiedllvm/include/llvm/MC/MCObjectWriter.h
The file was modifiedllvm/test/MC/ELF/section-gnu.s
The file was modifiedllvm/lib/MC/MCELFStreamer.cpp
The file was modifiedlld/test/ELF/gc-sections-retain.s
Commit 3ce9e223cb4b31e654b16511dffe1e83df33551c by Amara Emerson
[AArch64][GlobalISel] Lower scalar G_{SMIN, SMAX, UMIN, UMAX}.
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/legalize-intrinsic-min-max.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
Commit 351844edf113cfac59992bd330ca3fbfddb01aaf by craig.topper
[RISCV] Add support for VECTOR_REVERSE for scalable vector types.

I've left mask registers to a future patch as we'll need
to convert them to full vectors, shuffle, and then truncate.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D97609
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
The file was modifiedllvm/utils/TableGen/CodeGenDAGPatterns.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was addedllvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
Commit 561fb7f60ab631e712c3fb6bbeb47061222c6818 by Xiangling.Liao
[NFC] Use llvm::SmallVector to workaround XL compiler problem on AIX

LLVM is recommending to use SmallVector (that is, omitting the N), in the
absence of a well-motivated choice for the number of inlined elements N.

However, this doesn't work well with XL compiler on AIX since some header(s)
aren't properly picked up with it. We need to take a further look into the real
issue underneath and fix it in a later patch.

But currently we'd like to use this patch to unblock the build compiler issue
first.

Differential Revision: https://reviews.llvm.org/D98265
The file was modifiedclang/lib/CodeGen/CGStmtOpenMP.cpp
Commit f111dc7cfcda28597b6f26728f7e0cc584e48460 by nikita.ppv
[cmake] Link socket/nsl on SunOS in llvm-jitlink

llvm-jitlink and llvm-jitlink-executor make use of APIs that are
part of the socket and nsl libraries on SunOS systems (Solaris and
Illumos). Make sure they get linked.

Ran into this in Rust CI when cross-compiling LLVM 12 to these
targets.

Differential Revision: https://reviews.llvm.org/D97633
The file was modifiedllvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
The file was modifiedllvm/tools/llvm-jitlink/CMakeLists.txt
Commit 080ded7445cc670cf2628e660690a06503d226d7 by Jonas Devlieghere
[lldb] Use lit.with_system_environment to propagate env variables

Use lit's with_system_environment function to propagate environment
variables to the tests. Include the usual suspects, as well as the
variables already explicitly forwarded.
The file was modifiedlldb/test/Shell/lit.cfg.py
The file was modifiedlldb/test/Unit/lit.cfg.py
Commit c2d2adbce9299e562abd00b8f3139933beb97e17 by Jonas Devlieghere
[lldb] Propagate XDG_CACHE_HOME environment variable to tests

This variable is used to reducing the likelihood of hitting module cache
issues in CI where different branches can potentially run on the same
machine.
The file was modifiedlldb/test/Unit/lit.cfg.py
The file was modifiedlldb/test/Shell/lit.cfg.py
The file was modifiedlldb/test/API/lit.cfg.py
Commit cc52ea30012d3d9495a41255be50dccc77464cad by Jonas Devlieghere
[lldb] Update crashlog script for JSON changes

Update the crashlog script for changes to the JSON schema.

rdar://75122914

Differential revision: https://reviews.llvm.org/D98219
The file was modifiedlldb/test/Shell/ScriptInterpreter/Python/Crashlog/json.test
The file was modifiedlldb/examples/python/crashlog.py
The file was modifiedlldb/test/Shell/ScriptInterpreter/Python/Crashlog/Inputs/a.out.ips
Commit c11ff4bbada3b5127a1f010e0a97a1e6e46fb61a by i
Define __GCC_HAVE_DWARF2_CFI_ASM if applicable

In -fno-exceptions -fno-asynchronous-unwind-tables -g0 mode,
GCC does not emit `.cfi_*` directives.

```
% diff <(gcc -fno-asynchronous-unwind-tables -dM -E a.c) <(gcc -dM -E a.c)
130a131
> #define __GCC_HAVE_DWARF2_CFI_ASM 1
```

This macro is useful because code can decide whether inline asm should include `.cfi_*` directives.
`.cfi_*` directives without `.cfi_startproc` can cause assembler errors
(integrated assembler: `this directive must appear between .cfi_startproc and .cfi_endproc directives`).

Differential Revision: https://reviews.llvm.org/D97743
The file was addedclang/test/Preprocessor/unwind-tables.c
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
Commit 1956288fbbafc5a7e879fe133f28c11490591f36 by markus.boeck02
[Support][test] Unconditionally use setenv macro when compiling on Windows

This test currently fails to compile when using a MinGW toolchain as setenv is not defined. This function is a POSIX function Windows does not implement.

This patch enables the setenv macro used in the unit test for all of Windows, making the test compile and run successfully.

Differential Revision: https://reviews.llvm.org/D98271
The file was modifiedllvm/unittests/Support/ThreadPool.cpp
Commit b4825a6d9c18bdb3e241d709f2f76573aba9f91b by rupprecht
[lldb][gui] Fix uninitialized variable in SourceFileWindowDelegate.

After 5419b671375c46299ff1da6c929859040e7beaf5 (which is `[SimplifyCFG] Update FoldTwoEntryPHINode to handle and/or of select and binop equally`), this uninitialized value is detected by msan.
The file was modifiedlldb/source/Core/IOHandlerCursesGUI.cpp
Commit e2196ddcdbf13aa1051e0150036e103d23a03f13 by stephen.tozer
[DebugInfo] Process DBG_VALUE_LIST in LiveDebugValues

This patch implements DBG_VALUE_LIST handling to the LiveDebugValues pass. This
is a substantial change, and makes a few fundamental changes to the existing
logic.

We still use the basic model of a VarLocMap that is indexed by a LocIndex, with
a VarLocSet (a CoalescingBitVector underneath) giving us efficient lookups of
existing variable locations for a given location type. The main change is that
the VarLocMap may contain a given VarLoc multiple times (once for each unique
location operand), so that a VarLoc can be looked up from any of the registers
that it uses. This means that each VarLoc has multiple corresponding LocIndexes;
to allow us to iterate through the set of VarLocs (previously we would iterate
through the VarLocSet), we now also maintain a single entry in the VarLocMap
that contains every VarLoc exactly once.

The VarLoc class itself is also changed; this change is much simpler,
refactoring out location-specific members into a MachineLocation class and
adding a vector of these locations.

Differential Revision: https://reviews.llvm.org/D83890
The file was addedllvm/test/DebugInfo/MIR/X86/dvl-livedebugvalues-join.mir
The file was modifiedllvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
The file was addedllvm/test/DebugInfo/MIR/X86/dvl-livedebugvalues-movements.mir
The file was addedllvm/test/DebugInfo/MIR/X86/dvl-livedebugvalues-clobber.mir
The file was addedllvm/test/DebugInfo/MIR/X86/dvl-livedebugvalues-spillrestore.mir
Commit 288ea820cf4a7a946ce55166bee6f46504576cc8 by jay.foad
[AMDGPU] Refactor AMDGPUTargetStreamer::EmitCodeEnd

Refactor and add comments to explain where the magic numbers come from
in terms of the instruction cache line size. NFC.

Differential Revision: https://reviews.llvm.org/D98266
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
Commit e60ab72137959243a77d386a1c52783281994f8f by Amara Emerson
[AArch64][GlobalISel] Add combine for extract_vector_elt(build_vector, cst)

Differential Revision: https://reviews.llvm.org/D97835
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-extract-vec-elt.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Commit e85d798b5b7709c352a7b270de55d2facad14793 by listmail
[cgp] group related code together [nfc]
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit 55e760769b72eafa08e9e3f1aeb5a1ea8235baff by Amara Emerson
[GlobalISel] Fold away G_BUILD_VECTOR with all elements extracted.

If every element is extracted from a G_BUILD_VECTOR, pass through the source
registers. This is different to the extract(build_vector) combine because this
one tolerates multiple users as long as they're exhaustive.

Differential Revision: https://reviews.llvm.org/D97890
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/combine-build-vector.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
Commit 45a9dca0150ec16e6365dfb9c270f11469337623 by Amara Emerson
[AArch64][GlobalISel] Form G_DUPLANE32 for <2 x s32> shufflevectors in lowering.

For <2 x s32>, we can use G_DUPLANE32, but with a <4 x s32> source. To make it
work, we can just widen the original source with a concat_vectors.

Doing this allows <2 x float> indexed fmul instruction selection patterns to
fire, which gives a nice 0.3% code size saving on Bullet with -Os.

Differential Revision: https://reviews.llvm.org/D98059
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-shuffle-duplane.mir
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-fmul-indexed.mir
Commit 1f55fa0b99e0755c96bfd5cd0cdbe9cbc26fe2db by peter
scudo: Add support for tracking stack traces of secondary allocations.

There is no centralized store of information related to secondary
allocations. Moreover the allocations themselves become inaccessible
when the allocation is freed in order to implement UAF detection,
so we can't store information there to be used in case of UAF
anyway.

Therefore our storage location for tracking stack traces of secondary
allocations is a ring buffer. The ring buffer is copied to the process
creating the crash dump when a fault occurs.

The ring buffer is also used to store stack traces for primary
deallocations. Stack traces for primary allocations continue to be
stored inline.

In order to support the scenario where an access to the ring buffer
is interrupted by a concurrently occurring crash, the ring buffer is
accessed in a lock-free manner.

Differential Revision: https://reviews.llvm.org/D94212
The file was modifiedcompiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/combined.h
The file was modifiedcompiler-rt/lib/scudo/standalone/fuzz/get_error_info_fuzzer.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/memtag.h
The file was modifiedcompiler-rt/lib/scudo/standalone/include/scudo/interface.h
Commit 8205c1a90a4e0c8d4578eb83fcdf7baa9f276ac6 by joker.eph
Rework LLVM Dialect LoopOptions attribute

Instead of storing an array of LoopOpt attributes, which were just
wrapping std::pair<enum, int> anyway, we can have an attribute storing
a sorted ArrayRef<std::pair<enum, int>> as a single unit. This improves
here the textual format and the general API. Note that we're limiting
the options to fit into an int64_t by design, but this isn't a new
constraint.

Building the LoopOptions attribute is likely worth a specific builder
for efficient reason, that'll be the subject of a future patch.

Differential Revision: https://reviews.llvm.org/D98105
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
The file was modifiedmlir/test/Target/LLVMIR/llvmir.mlir
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
The file was modifiedmlir/include/mlir/IR/BuiltinAttributes.td
The file was modifiedmlir/test/Dialect/LLVMIR/invalid.mlir
Commit 79f736c150c5a533f836727cb247a72f9ad96096 by joker.eph
Switch generatedTypeParser/generatedAttributeParser to return an OptionalParseResult

This allows the caller to distinguish between a parse error or an
unmatched keyword. It fixes the redundant error that was emitted by the
caller when the generated parser would fail.

Differential Revision: https://reviews.llvm.org/D98162
The file was modifiedmlir/test/lib/Dialect/Test/TestAttributes.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/lib/Dialect/Async/IR/Async.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestTypes.cpp
The file was modifiedmlir/test/Dialect/PDL/invalid-types.mlir
The file was modifiedmlir/test/mlir-tblgen/typedefs.td
The file was modifiedmlir/test/mlir-tblgen/attrdefs.td
The file was modifiedmlir/lib/Dialect/PDL/IR/PDLTypes.cpp
The file was modifiedmlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/invalid.mlir
The file was modifiedmlir/lib/Dialect/ArmSVE/IR/ArmSVEDialect.cpp
Commit 34637bbe27d3971025cba02dfd4e52a46024f3d7 by listmail
[tests] precommit test for an upcoming change
The file was modifiedllvm/test/CodeGen/X86/usub_inc_iv.ll
Commit d6394d86cadf20f09cba9c013bfccc277f565212 by listmail
[cgp] improve robustness of uadd/usub transforms

LSR prefers to schedule iv increments just before the latch.  The recent 80511565 broadened this to moving increments in the original IR.  This pointed out a robustness problem with the CGP transform.

When we have a use of an induction increment outside of the loop (we canonicalize away from this form, but it happens e.g. unanalyzeable loops) we'd avoid performing the uadd/usub transform.  Interestingly, all of these involve moving the increment closer to it's operands, so there's no concern about dominating all uses.  We can handle that case cheaply, resulting in a more robust transform.
The file was modifiedllvm/test/CodeGen/X86/usub_inc_iv.ll
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit 8bb8d65e167dceb659211468fd44df5da17e0785 by aaron
Move some attribute diagnostic helper functions; NFC.

These functions were local to SemaDeclAttr.cpp, but these functions are
useful in general (for instance, for statement or type attribute
processing). This refactoring is in advance of beginning to tablegen
diagnostic checks for statement attributes the way we already do for
declaration attributes.

There is one functional change in here as a drive-by. The
external_source_symbol attribute had one of its diagnostic checks
inside of an assert, which was corrected.
The file was modifiedclang/lib/Sema/ParsedAttr.cpp
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/include/clang/Sema/ParsedAttr.h
Commit 840ff84d33c797f0ab73e5f8cd402ce84c95538d by csigg
[mlir] Default for gpu-binary-annotation option.

Provide default for gpuBinaryAnnotation so that we don't need to specify it in tests.

The annotation likely only needs to be target specific if we want to lower to e.g. both CUDA and ROCDL.

Reviewed By: herhut, bondhugula

Differential Revision: https://reviews.llvm.org/D98168
The file was modifiedmlir/include/mlir/Conversion/GPUCommon/GPUCommonPass.h
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertKernelFuncToBlob.cpp
Commit df67d3526962ae51446b1390e7c40e045e580ec2 by i
[test] Fix debug-info-macro.c
The file was modifiedclang/test/CodeGen/debug-info-macro.c
Commit b4948c27d2e40586c0c4fa7cbf20b9c40a9f7584 by i
Revert D97743 "Define __GCC_HAVE_DWARF2_CFI_ASM if applicable"

This reverts commit c11ff4bbada3b5127a1f010e0a97a1e6e46fb61a & df67d3526962ae51446b1390e7c40e045e580ec2.

Trying to make the change to the driver to avoid round-trip issues.
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was removedclang/test/Preprocessor/unwind-tables.c
The file was modifiedclang/test/CodeGen/debug-info-macro.c
Commit 6a2bf59a62ad49144846abe4d5d3d259aa54f09b by gbalats
[dfsan] Update store.ll test

This removes hard-coded shadow width references and adds more RUN
lines to increase test coverage under different options (fast16 labels
mode).

Also, shortens the test by unifying common lines under both combine- and no-combine-ptr-label options.

Reviewed By: stephan.yichao.zhao

Differential Revision: https://reviews.llvm.org/D98227
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/store.ll
Commit 6a7a20835774115f6e10bf05713cd3a0f5786278 by douglas.yung
Add requirement for aarch64-registered-target to test change added in 42e3f97a9dd3a439f63a733c4ee909cba6b77e49.
The file was modifiedllvm/test/MC/ELF/section-gnu.s
Commit 5a3bb7dde32a0545cf6f2954ea09cf71af9c0e38 by flo
[DSE] Add test cases with memory intrinsics and varying size values.

This patch adds a few tests for memset/memcyp with non-constant size
values. Some of the tests will be optimized in further patches.
The file was addedllvm/test/Transforms/DeadStoreElimination/memory-intrinsics-sizes.ll
Commit 63200a058e6d5f275204154a16723e8f169a317a by psteinfeld
[flang] Sort symbols by creation order

We have a "<" operator defined on the type semantics::Symbol that's based on
the symbols' locations in the cooked character stream.  This is potentially
problematic when comparing symbols from .mod files when the cooked character
streams themselves might be allocated to varying memory locations.

This change fixes that by using the order in which symbols are created as the
basis for the "<" operator.  Thanks to Tim and Peter for consultation on the
necessity of doing this and the idea for what to use as the basis of the sort.

This change in the "<" operator changed the expected results for three of the
tests.  I manually inspected the new results, and they look OK to me.  The
differences in data05.f90 and typeinfo01.f90 are entirely the order, offsets,
and sizes of the derived type components.  The changes in resolve102.f90 are
due to the new, different "<" operator used for sorting.

Differential Revision: https://reviews.llvm.org/D98225
The file was modifiedflang/include/flang/Semantics/symbol.h
The file was modifiedflang/test/Semantics/resolve102.f90
The file was modifiedflang/test/Semantics/typeinfo01.f90
The file was modifiedflang/test/Semantics/data05.f90
Commit a25b537bf437864232cb5826539eb4cee7c47b74 by listmail
[SCEV] Infer known bits from known sign bits

This was suggested by lebedev.ri over on D96534.  You'll note lack of tests.  During review, we weren't actually able to find a case which exercises it, but both I and lebedev.ri feel it's a reasonable change, straight forward, and near free.

Differential Revision: https://reviews.llvm.org/D97064
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit 387228059ea966a045a63dabd07f1aa7cf8c8ea1 by listmail
[test] precommit tests from D98222
The file was addedllvm/test/Analysis/ScalarEvolution/shift-recurrences.ll
Commit 27ddcd51d3ca6158447af4ff954004efb2a2759c by i
[profile] Fix InstrProfGetRangeRepValue to use UINT64_C

This is a minor issue because the TargetValue parameter of `__llvm_profile_instrument_memop`
is usually small and cannot exceed 2**31 at all.

Differential Revision: https://reviews.llvm.org/D97640
The file was modifiedcompiler-rt/include/profile/InstrProfData.inc
Commit f49354838e526671e616d16199ebdee653b9f6fa by aqjune
Revert "[InstCombine] Add simplification of two logical and/ors"

This reverts commit 07c3b97e184d5bd828b8a680cdce46e73f3db9fc due to a reported failure in two-stage build.
The file was modifiedllvm/test/Transforms/InstCombine/select-safe-bool-transforms.ll
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit 9b6ac9e999e730ee3a9f0bf4850f7794274de3f0 by conanap
[P10] [Power PC] Exploiting new load rightmost vector element instructions.

This pull request implements patterns to exploit the load rightmost vector
element instructions for loading element 0 on little endian PowerPC subtargets
into v8i16 and v16i8 vector registers for i16 and i8 data types.

Differential Revision: https://reviews.llvm.org/D94816#inline-921403
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was addedllvm/test/CodeGen/PowerPC/load-rightmost-vector-elt.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
Commit fe81e8f3b52e86ccd93d44601a65c6084c9dd5d6 by joker.eph
Add default LoopOptionsAttrBuilder constructor and method to check if empty() (NFC)

Also move setters out-of-line to make sure the templated helper is
actually instantiated.
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
Commit 2de0a18a8949f0235fb3a08dcc55ff3aa7d969e7 by Alex Lorenz
[clang][ObjC] allow the use of NSAttributedString * return type with format_arg attribute

This is useful for APIs that want to produce an attributed NSString as a result of
some formatting API call.
The file was modifiedclang/test/SemaObjC/format-arg-attribute.m
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
Commit c92d2ea59e79fb366512e16eb1209f2de3ed6ff1 by n.james93
[clangd][NFC] Use std::string::replace in SourceCode:applyChange.

Just looks nicer and easier to read.

Reviewed By: kadircet

Differential Revision: https://reviews.llvm.org/D98274
The file was modifiedclang-tools-extra/clangd/SourceCode.cpp
Commit ce94a161651d0edd313d0fa65571eb53d3a34d13 by davelee.com
[cmake] Enable -Werror=return-type

Turn `-Wreturn-type` into an error.

This is currently used by libcxx, libcxxabi, and libunwind, and would be a good default
for all of llvm. I'm not aware of any cases where this shouldn't be an error. This
ensures different build configs, merges, and downstream branches catch issues sooner.

Differential Revision: https://reviews.llvm.org/D98224
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit 82400ae0169d561dcea8f6d8fcacec04af553bad by listmail
[tests] add tests to show effects of D98122
The file was addedllvm/test/Transforms/RewriteStatepointsForGC/base-inference.ll
Commit fa450e98c554b29c6d3e37028636c48513c9aaa1 by david.green
[ARM] Test for predicated scalar memops. NFC

This test shows a case where we can potentially scalarize the store in a
predicated loop, creating a lot of instructions that would be much
slower than scalar.
The file was addedllvm/test/Transforms/LoopVectorize/ARM/mve-predstorecost.ll
Commit cd9a69289c7825d54450cb6829fef2c8e0f1963a by joker.eph
Fix LLVM Dialect LoopOptionsAttr round-tripping: the keywords were missing in the output

This indicated some missing test coverage, which are now added to the
roundtrip test.
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/roundtrip.mlir
Commit 8506fe5b411e4b34d051f6f5461a726e6199e679 by jianzhouzh
[dfsan] Tracking origins at memory transfer

This is a part of https://reviews.llvm.org/D95835.

Reviewed By: morehouse

Differential Revision: https://reviews.llvm.org/D98192
The file was addedcompiler-rt/test/dfsan/origin_memmove.c
The file was addedcompiler-rt/test/dfsan/origin_unaligned_memtrans.c
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/origin_mem_intrinsic.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was addedcompiler-rt/test/dfsan/origin_memcpy.c
Commit 23fd647cc6b8d25076188492e6424eee60c31326 by spatel
[SLP] remove dead null check; NFC

We cast<> to Instruction (not dyn_cast<>), so we already
required/assumed that Cmp is not null.
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 8d5c3ae357b5f78a004427c39934f6881ae41544 by zequanwu
Revert "[llvm-cov] reset executation count to 0 after wrapped segment"

This reverts D85036

Differential Revision: https://reviews.llvm.org/D98084
The file was modifiedllvm/unittests/ProfileData/CoverageMappingTest.cpp
The file was modifiedllvm/test/tools/llvm-cov/branch-noShowBranch.test
The file was modifiedllvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h
The file was modifiedllvm/test/tools/llvm-cov/branch-c-general.test
The file was modifiedllvm/lib/ProfileData/Coverage/CoverageMapping.cpp
The file was modifiedllvm/test/tools/llvm-cov/branch-logical-mixed.cpp
The file was modifiedllvm/test/tools/llvm-cov/ignore-filename-regex.test
Commit 234f3211a3dd84bb2c074402054452af24b914a6 by Alex Lorenz
[clang][driver] Support Darwin SDK names with an optional prefix in their name

rdar://74017977
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was addedclang/test/Driver/darwin-sdk-with-prefix.c
Commit a892b0015ed6af5945d06e87ca5da1ad8be7ad29 by richard
PR49465: Disallow constant evaluation of a call to operator delete(nullptr).

The only time we would consider allowing this is inside a call to
std::allocator<T>::deallocate, whose contract does not permit deletion
of null pointers.
The file was modifiedclang/test/SemaCXX/cxx2a-constexpr-dynalloc.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticASTKinds.td
Commit 4a7aed4ee739de5ad13bd631d4af727df7fc5849 by riddleriver
[mlir][IR] Add a new SymbolUserMap class

This class provides efficient implementations of symbol queries related to uses, such as collecting the users of a symbol, replacing all uses, etc. This provides similar benefits to use related queries, as SymbolTableCollection did for lookup queries.

Differential Revision: https://reviews.llvm.org/D98071
The file was modifiedmlir/lib/IR/SymbolTable.cpp
The file was modifiedmlir/test/lib/IR/TestSymbolUses.cpp
The file was modifiedmlir/include/mlir/IR/SymbolTable.h
Commit a776ecb6c2b83454f4cd22a0e302aef558381dab by riddleriver
[mlir][IR] Add an Operation::eraseOperands that supports batch erasure

This method allows for removing multiple disjoint operands at once, reducing the need to erase operands individually (which results in shifting the operand list).

Differential Revision: https://reviews.llvm.org/D98290
The file was modifiedmlir/lib/IR/OperationSupport.cpp
The file was modifiedmlir/include/mlir/IR/OperationSupport.h
The file was modifiedmlir/include/mlir/IR/Operation.h
The file was modifiedmlir/unittests/IR/OperationSupportTest.cpp
Commit cf371573b0b841db96df729e5b61c6a6f36c17d2 by leonardchan
[llvm] Change DSOLocalEquivalent type if the underlying global value type changes

We encountered an issue where LTO running on IR that used the DSOLocalEquivalent
constant would result in bad codegen. The underlying issue was ValueMapper wasn't
properly handling DSOLocalEquivalent, so this just adds the machinery for handling
it. This code path is triggered by a fix to DSOLocalEquivalent::handleOperandChangeImpl
where DSOLocalEquivalent could potentially not have the same type as its underlying GV.

This updates DSOLocalEquivalent::handleOperandChangeImpl to change the type if
the GV type changes and handles this constant in ValueMapper.

Differential Revision: https://reviews.llvm.org/D97978
The file was addedllvm/test/Linker/DSOLocalEquivalent.ll
The file was addedllvm/test/ThinLTO/X86/DSOLocalEquivalent.ll
The file was modifiedllvm/lib/Transforms/Utils/ValueMapper.cpp
The file was modifiedllvm/lib/IR/Constants.cpp
The file was addedllvm/test/Linker/Inputs/DSOLocalEquivalent.ll
Commit 890afad954d60aa91a27fa5ef0689e1d53aad7b4 by joker.eph
Fix Flang build after MLIR API changes around `generatedTypeParser`
The file was modifiedflang/lib/Optimizer/Dialect/FIRType.cpp
The file was modifiedmlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
Commit 75f3f778052cdcd89e79f7a42a50915ee5ce2281 by joker.eph
Fix MLIR test post 890afad954d
The file was modifiedmlir/test/mlir-tblgen/attrdefs.td
The file was modifiedmlir/test/mlir-tblgen/typedefs.td
Commit 875891a10d50a791d3f076c9259e60af6c9af18c by gh
[MemoryDependence] Fix invariant group store

Fix bug in MemoryDependence [and thus GVN] for invariant group.

Previously MemDep didn't verify that the store was storing into a
pointer rather than a store simply using a pointer.

Differential Revision: https://reviews.llvm.org/D98267
The file was modifiedllvm/lib/Analysis/MemoryDependenceAnalysis.cpp
The file was addedllvm/test/Transforms/GVN/storeinvgroup.ll
Commit b627802e81ee5ab176f9e8b318e01f73c1e961b9 by dblaikie
Remove unused variable (rolling it into an assert)
The file was modifiedllvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
Commit ea659ea101a56a08c73be65ab62c3e180e37ca38 by Jason Molenda
Log in SetPrivateState when unwind logging enabled

It is easier to read the unwind logging when you can see
when the inferior resumes / stops and we're doing new unwinds.
The file was modifiedlldb/source/Target/Process.cpp
Commit 590ac0a26af4c9f63d5564be8c13b12d409a7fd9 by aschwaighofer
[coro async] Transfer the original function's attributes to the clone

rdar://75052917

Differential Revision: https://reviews.llvm.org/D98051
The file was modifiedllvm/test/Transforms/Coroutines/coro-async.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit a478b0a199f4928041390d1f35dd5e226936b42c by rprichard
[Android] Default to --rtlib=compiler-rt

By default, the driver uses the compiler-rt builtins and links with
-l:libunwind.a.

Restore the previous behavior by passing --rtlib=libgcc.

Reviewed By: danalbert

Differential Revision: https://reviews.llvm.org/D96404
The file was modifiedclang/lib/Driver/ToolChains/Linux.cpp
The file was modifiedclang/lib/Driver/ToolChains/Linux.h
The file was modifiedclang/test/Driver/linux-ld.c
Commit 06c4aadeb654f2430f4d8a7cf789330e0d583360 by gkm
[lld-macho] implement options -(un)exported_symbol(s_list)

Implement command-line options to alter a dylib's exported-symbols list:
* `-exported_symbol*` options override the default export list. The export list is compiled according to the command-line option(s) only.
* `-unexported_symbol*` options hide otherwise public symbols.
* `-*exported_symbol PATTERN` options specify a single literal or glob pattern.
* `-*exported_symbols_list FILE` options specify a file containing a series of lines containing symbol literals or glob patterns. Whitespace and `#`-prefix comments are stripped.

Note: This is a simple implementation of the primary use case. ld64 has much more complexity surrounding interactions with other options, many of which are obscure and undocumented. We will start simple and complexity as necessary.

Differential Revision: https://reviews.llvm.org/D98223
The file was modifiedlld/MachO/Options.td
The file was modifiedlld/MachO/Config.h
The file was modifiedlld/MachO/Driver.cpp
The file was addedlld/test/MachO/export-options.s
The file was modifiedlld/MachO/SyntheticSections.cpp
Commit b7fc3729878c08ba1d029885511f1ad7cf45f99f by listmail
[tests] add a few more tests for D98122
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/base-inference.ll
Commit ea548a4e413812d4726f158f9de5604739ed8a51 by nullptr.cpp
[MC][ELF] Fix "enumeral and non-enumeral type in conditional expression" warning (NFC)

GCC warning:
```
/llvm-project/llvm/lib/MC/ELFObjectWriter.cpp: In member function ‘void {anonymous}::ELFWriter::writeHeader(const llvm::MCAssembler&)’:
/llvm-project/llvm/lib/MC/ELFObjectWriter.cpp:421:20: warning: enumeral and non-enumeral type in conditional expression [-Wextra]
  420 |   W.OS << char(OSABI == ELF::ELFOSABI_NONE && OWriter.seenGnuAbi()
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  421 |                    ? ELF::ELFOSABI_GNU
      |                    ^~~~~~~~~~~~~~~~~~~
  422 |                    : OSABI);
      |                    ~~~~~~~
```
The file was modifiedllvm/lib/MC/ELFObjectWriter.cpp
Commit 3f7f7f161540ba4a0f8cd48a4f1d5ab323cedd92 by nullptr.cpp
[clang][APINotes] Fix gcc Wunused-function warning (NFC)

GCC warning:
```
/llvm-project/clang/lib/APINotes/APINotesYAMLCompiler.cpp:574:6: warning: ‘void {anonymous}::Module::dump()’ defined but not used [-Wunused-function]
  574 | void Module::dump() {
      |      ^~~~~~
```
The file was modifiedclang/lib/APINotes/APINotesYAMLCompiler.cpp
Commit cf1899e0a92f3ac2a082293d05a60df843aa90bc by listmail
[rs4gc] common bdv operand visitation [nfc]
The file was modifiedllvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
Commit f4fc66b7a06bcad060bab5325e046d0b01031ea6 by Lang Hames
[JITLink] Assert that segment mapping does not exceed allocation size.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
Commit 1237d94871ceb111c4eaef131095e12b6ae93647 by Lang Hames
[JITLink] Add support for STT_NOTYPE symbols to ELF/x86-64.
The file was modifiedllvm/test/ExecutionEngine/JITLink/X86/ELF_x86-64_relocations.s
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
Commit 98cbdba2c1894c59c1e58864e336551ce9a199e3 by dberris
[xray] Fix xray document spelling

fix a couple of words spelling

Reviewed By: dberris

Differential Revision: https://reviews.llvm.org/D96658
The file was modifiedllvm/docs/XRay.rst
The file was modifiedllvm/docs/XRayExample.rst
Commit ee35784a909b318c686f94d53226d2c679ac041c by wmi
[SampleFDO] Support enabling -funique-internal-linkage-name.

now -funique-internal-linkage-name flag is available, and we want to flip
it on by default since it is beneficial to have separate sample profiles
for different internal symbols with the same name. As a preparation, we
want to avoid regression caused by the flip.

When we flip -funique-internal-linkage-name on, the profile is collected
from binary built without -funique-internal-linkage-name so it has no uniq
suffix, but the IR in the optimized build contains the suffix. This kind of
mismatch may introduce transient regression.

To avoid such mismatch, we introduce a NameTable section flag indicating
whether there is any name in the profile containing uniq suffix. Compiler
will decide whether to keep uniq suffix during name canonicalization
depending on the NameTable section flag. The flag is only available for
extbinary format. For other formats, by default compiler will keep uniq
suffix so they will only experience transient regression when
-funique-internal-linkage-name is just flipped.

Another type of regression is caused by places where we miss to call
getCanonicalFnName. Those places are fixed.

Differential Revision: https://reviews.llvm.org/D96932
The file was modifiedllvm/lib/ProfileData/SampleProfReader.cpp
The file was addedllvm/test/Transforms/SampleProfile/Inputs/uniqname.suffix.afdo
The file was modifiedllvm/include/llvm/ProfileData/SampleProfReader.h
The file was modifiedllvm/unittests/ProfileData/SampleProfTest.cpp
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
The file was modifiedllvm/lib/ProfileData/SampleProf.cpp
The file was modifiedllvm/lib/Transforms/IPO/SampleContextTracker.cpp
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was addedllvm/test/Transforms/SampleProfile/Inputs/uniqname.suffix.prof
The file was addedllvm/test/Transforms/SampleProfile/Inputs/uniqname.nosuffix.afdo
The file was modifiedllvm/lib/ProfileData/SampleProfWriter.cpp
The file was addedllvm/test/Transforms/SampleProfile/uniqname.ll
Commit fdc0c21973c80b56381888c84125bdec7c1c1fbe by gkm
[lld-macho][NFC] when reasonable, replace auto keyword with type names

lld policy discourages `auto`. Replace it with a type name whenever reasonable. Retain `auto` to avoid ...
* redundancy, as for decls such as `auto *t = mumble_cast<TYPE *>` or similar that specifies the result type on the RHS
* verbosity, as for iterators
* gratuitous suffering, as for lambdas

Along the way, add `const` when appropriate.

Note: a future diff will ...
* add more `const` qualifiers
* remove `opt::` when we are already `using llvm::opt`

Differential Revision: https://reviews.llvm.org/D98313
The file was modifiedlld/MachO/DriverUtils.cpp
The file was modifiedlld/MachO/LTO.cpp
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/MachO/SymbolTable.cpp
The file was modifiedlld/MachO/UnwindInfoSection.cpp
The file was modifiedlld/MachO/SyntheticSections.cpp
Commit 714ec86c024370cbe8d6d4472e2226682e1c42e2 by gkm
[lld-macho][NFC] drop opt:: when already using llvm::opt

Top-level `using llvm::opt` has been present in `lld/MachO/Driver*.cpp` for some time, so remove lingering `opt::` prefixes.

Differential Revision: https://reviews.llvm.org/D98314
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/DriverUtils.cpp
Commit bcb53999a4ce9a8236295a6abf8b3a3e8916a0f5 by Lang Hames
[JITLink] Add a null-terminator to eh-frame sections on ELF/x86-64.

__register_ehframes on Linux requires a null terminator to identify the end of
this section.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/EHFrameSupportImpl.h
The file was modifiedllvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
Commit 9d117e7b2a399a9b2bcf53fb9b9c0946e82dc75c by i
Define __GCC_HAVE_DWARF2_CFI_ASM if applicable

In -fno-exceptions -fno-asynchronous-unwind-tables -g0 mode,
GCC does not emit `.cfi_*` directives.

```
% diff <(gcc -fno-asynchronous-unwind-tables -dM -E a.c) <(gcc -dM -E a.c)
130a131
> #define __GCC_HAVE_DWARF2_CFI_ASM 1
```

This macro is useful because code can decide whether inline asm should include `.cfi_*` directives.
`.cfi_*` directives without `.cfi_startproc` can cause assembler errors
(integrated assembler: `this directive must appear between .cfi_startproc and .cfi_endproc directives`).

Differential Revision: https://reviews.llvm.org/D97743
The file was addedclang/test/Preprocessor/unwind-tables.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit 46bf25a7c5d3d648093edf6aab99004c053abcd4 by i
[test] Update tests
The file was modifiedclang-tools-extra/test/pp-trace/pp-trace-include.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
The file was modifiedclang-tools-extra/test/pp-trace/pp-trace-macro.cpp
Commit 74bece8ddee73b28af42b0fa38786d974aeac972 by i
[WPD][ELF] Allow whole program devirtualization for version script localized symbols

A `local:` version node in a version script can change the effective symbol binding
to STB_LOCAL. The linker needs to communicate the fact to enable WPD
(otherwise LTO does not know that the `!vcall_visibility` metadata has
effectively changed from VCallVisibilityPublic to VCallVisibilityLinkageUnit).

Reviewed By: tejohnson

Differential Revision: https://reviews.llvm.org/D98220
The file was modifiedlld/ELF/LTO.cpp
The file was addedlld/test/ELF/lto/devirt_vcall_vis_localize.ll
Commit 8bd2722f65cfd7883ed9769f7bad3ff50e4c6905 by martin
[compiler-rt] Normalize i?86 to i386 and armv* to arm for COMPILER_RT_DEFAULT_TARGET_ARCH

This corresponds to getArchNameForCompilerRTLib in clang; any
32 bit x86 architecture triple (except on android, but those
exceptions are already handled in compiler-rt on a different level)
get the compiler rt library names with i386; arm targets get either
"arm" or "armhf". (Mapping to "armhf" is handled in the toplevel
CMakeLists.txt.)

Differential Revision: https://reviews.llvm.org/D98173
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTUtils.cmake
Commit cd6d1799adfc589626917bce968f33cca821a129 by i
[clangd] Treat __GCC_HAVE_DWARF2_CFI_ASM the same as isWrittenInBuiltinFile macros
The file was modifiedclang-tools-extra/clangd/index/SymbolCollector.cpp
Commit 4c973ae51b859dca9792e1ad87a6673c49815a8d by qiucofan
[PowerPC] Reduce symmetrical swaps for lane-insensitive vector ops

This patch simplifies pattern (xxswap (vec-op (xxswap a) (xxswap b)))
into (vec-op a b) if vec-op is lane-insensitive. The motivating case
is ScalarToVector-VecOp-ExtractElement sequence on LE, but the
peephole itself is not related to endianness, so BE may also benefit
from this.

Reviewed By: nemanjai

Differential Revision: https://reviews.llvm.org/D97658
The file was addedllvm/test/CodeGen/PowerPC/swap-reduction.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
Commit 59112eacb97910601504d4ce5115b2d535bcbeb6 by vsavchenko
[-Wcompletion-handler] Extend list of detected conventions

Update convention detection to accomodate changes from:
https://github.com/DougGregor/swift-evolution/blob/concurrency-objc/proposals/NNNN-concurrency-objc.md#asynchronous-completion-handler-methods

Differential Revision: https://reviews.llvm.org/D98251
The file was modifiedclang/lib/Analysis/CalledOnceCheck.cpp
The file was modifiedclang/test/SemaObjC/warn-called-once.m
Commit c7635040ce0a546020cbcd9f2030817725bd7494 by vsavchenko
[analyzer] Fix StdLibraryFunctionsChecker performance issue

`initFunctionSummaries` lazily initializes a data structure with
function summaries for standard library functions.  It is called for
every pre-, post-, and eval-call events, i.e. 3 times for each call on
the path.  If the initialization doesn't find any standard library
functions in the translation unit, it will get re-tried (with the same
effect) many times even for small translation units.

For projects not using standard libraries, the speed-up can reach 50%
after this patch.

Differential Revision: https://reviews.llvm.org/D98244
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
Commit 8080ea4c4b8c456c72c617587cc32f174b3105c1 by kbobyrev
[clangd] Enable reflection for clangd-index-server

This allows sending requests through CLI and more debugging
opportunities. Example:

```bash
$ grpc_cli ls localhost:50051
clang.clangd.remote.v1.SymbolIndex
grpc.reflection.v1alpha.ServerReflection
grpc.health.v1.Health
```
The file was modifiedclang-tools-extra/clangd/index/remote/server/CMakeLists.txt
The file was modifiedllvm/cmake/modules/FindGRPC.cmake
The file was modifiedclang-tools-extra/clangd/index/remote/server/Server.cpp
Commit ea8e5b87acba4b7dad749d697a3969901652b97a by sguelton
[NFC] Remove duplicate isNoBuiltinFunc method

It's available both in CodeGenOptions and in LangOptions, and LangOptions
implementation is slightly better as it uses a StringRef instead of a char
pointer, so use it.

Differential Revision: https://reviews.llvm.org/D98175
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
The file was modifiedclang/lib/Basic/CodeGenOptions.cpp
The file was modifiedclang/lib/CodeGen/CGCall.cpp
Commit dc8446c2a0882a0779a12df72e968afe9161a339 by vlad.vinogradov
[ADT][NFC] Use `size_t` type for index in `indexed_accessor_range`

It makes it consistent with `size()` method return type and with
STL-like containers API.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D97921
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
Commit 317097817325b31dbdbb26fb4ddf005da6ce7afc by aqjune
[InstSimplify] Add tests for pr49495 (NFC)
The file was addedllvm/test/Transforms/InstSimplify/pr49495.ll
Commit e82a54ae87cb65a91f583570636461e7b2046b6f by qiucofan
[NFC] [PowerPC] Remove unsafe-fp-math in some tests

As we're going to replace this ambiguous option with more precise
instruction-level fast-math description, some tests need to be updated
and the option doesn't play any role in some of them.
The file was modifiedllvm/test/CodeGen/PowerPC/unsafe-math.ll
The file was modifiedllvm/test/CodeGen/PowerPC/buildvec_canonicalize.ll
The file was modifiedllvm/test/CodeGen/PowerPC/fdiv-combine.ll
The file was modifiedllvm/test/CodeGen/PowerPC/fma-mutate-register-constraint.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vector-rounding-ops.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vsx-recip-est.ll
Commit 52932876309f06c74073950ade4c3ab9808d6b71 by flo
[DSE] Add tests with memset & memcpy combinations and non-const sizes.
The file was modifiedllvm/test/Transforms/DeadStoreElimination/memory-intrinsics-sizes.ll
Commit d5d4fb635ee0b3852f4fee1c98bac87c5811e051 by hanchung
[mlir][linalg] Add support for using scalar attributes in TC ops.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D97876
The file was modifiedmlir/test/mlir-linalg-ods-gen/test-linalg-ods-gen.tc
The file was modifiedmlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp
Commit f3bf5c053b06c756f75ff07517d1e54c48cc99c0 by vlad.vinogradov
[mlir] Model MemRef memory space as Attribute

Based on the following discussion:
https://llvm.discourse.group/t/rfc-memref-memory-shape-as-attribute/2229

The goal of the change is to make memory space property to have more
expressive representation, rather then "magic" integer values.

It will allow to have more clean ASM form:

```
gpu.func @test(%arg0: memref<100xf32, "workgroup">)

// instead of

gpu.func @test(%arg0: memref<100xf32, 3>)
```

Explanation for `Attribute` choice instead of plain `string`:

* `Attribute` classes allow to use more type safe API based on RTTI.
* `Attribute` classes provides faster comparison operator based on
  pointer comparison in contrast to generic string comparison.
* `Attribute` allows to store more complex things, like structs or dictionaries.
  It will allows to have more complex memory space hierarchy.

This commit preserve old integer-based API and implements it on top
of the new one.

Depends on D97476

Reviewed By: rriddle, mehdi_amini

Differential Revision: https://reviews.llvm.org/D96145
The file was modifiedmlir/test/CAPI/ir.c
The file was modifiedmlir/lib/CAPI/IR/BuiltinTypes.cpp
The file was modifiedmlir/include/mlir/IR/BuiltinTypes.h
The file was modifiedmlir/lib/Bindings/Python/IRModules.cpp
The file was modifiedmlir/test/Bindings/Python/ir_types.py
The file was modifiedmlir/lib/IR/BuiltinTypes.cpp
The file was modifiedmlir/lib/IR/AsmPrinter.cpp
The file was modifiedmlir/lib/IR/TypeDetail.h
The file was modifiedmlir/unittests/IR/ShapedTypeTest.cpp
The file was modifiedmlir/test/IR/parser.mlir
The file was modifiedmlir/include/mlir-c/BuiltinTypes.h
The file was modifiedmlir/docs/LangRef.md
The file was modifiedmlir/test/IR/invalid.mlir
The file was modifiedmlir/include/mlir/IR/BuiltinTypes.td
The file was modifiedmlir/lib/Parser/TypeParser.cpp
Commit 6f912a2cd49150813ee467c079201b5ce3dfbbca by sven.vanhaastregt
[OpenCL] Set calling convention for -fdeclare-opencl-builtins

IR produced using TableGen builtin function declarations
(`fdeclare-opencl-builtins.cl`) did not have the target's calling
convention applied to builtin calls.

Fix this, and update the codegen test to check that IR produced using
opencl-c.h and `-fdeclare-opencl-builtins` is identical with respect
to the builtin calls.

Differential Revision: https://reviews.llvm.org/D98039
The file was modifiedclang/test/CodeGenOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/SemaLookup.cpp
Commit 8d9b9c0edcebb2ce3723e581be40a9a26300f697 by flo
[DSE] Handle memcpy/memset with equal non-const sizes.

Currently DSE misses cases where the size is a non-const IR value, even
if they match. For example, this means that llvm.memcpy/llvm.memset
calls are not eliminated, even if they write the same number of bytes.

This patch extends isOverwite to try to get IR values for the number of
bytes written from the analyzed instructions. If the values match,
alias checks are performed and the result is returned.

At the moment this only covers llvm.memcpy/llvm.memset. In the future,
we may enable MemoryLocation to also track variable sizes, but this
simple approach should allow us to cover the important cases in DSE.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D98284
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
The file was modifiedllvm/test/Transforms/DeadStoreElimination/memory-intrinsics-sizes.ll
Commit 4d295cf5b54e03133e5282843a76c247b676e478 by csigg
[mlir] Add base class for GpuKernelToBlobPass

Instead of configuring kernel-to-cubin/rocdl lowering through callbacks, introduce a base class that target-specific passes can derive from.

Put the base class in GPU/Transforms, according to the discussion in D98203.

The mlir-cuda-runner will go away shortly, and the mlir-rocdl-runner as well at some point. I therefore kept the existing code path working and will remove it in a separate step.

Depends On D98168

Reviewed By: herhut

Differential Revision: https://reviews.llvm.org/D98279
The file was modifiedmlir/include/mlir/Conversion/GPUCommon/GPUCommonPass.h
The file was modifiedmlir/lib/Dialect/GPU/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/GPUCommon/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertKernelFuncToBlob.cpp
The file was modifiedmlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
The file was modifiedmlir/include/mlir/Dialect/GPU/Passes.h
The file was addedmlir/lib/Dialect/GPU/Transforms/SerializeToBlob.cpp
Commit 5853e1ca7fc80d998858cb139e753ce3718391c1 by Alexander.Richardson
[sanitizers] Fix typo in ca9815fc247c

I accidentally committed the wrong version of this patch which didn't
actually enable the hooks for FreeBSD. Fixing the typo allows the tests
to actually pass.
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
Commit 6840fc4e7fa1c9b88c17ff0b684f1137125a96af by Alexander.Richardson
[asan][tests] Handle FreeBSD in large_func_test and use-after-delete

This is the same fix as ab8a46024157b4d042ea6325710bbccd598adcfc for
Solaris and 23cd8d51ad519261137a40a5bbac6e537ee7ba25 (Windows+Darwin).
The file was modifiedcompiler-rt/test/asan/TestCases/use-after-delete.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/large_func_test.cpp
Commit cbcab14b19fce821a40a72a6f510207ced916a23 by Alexander.Richardson
[compiler-rt] Silence a deprecation warning on FreeBSD

On FreeBSD the sys/timeb.h header has a #warning that it's deprecated.
However, we need to include this header here, so silence this warning that
is printed multiple times otherwise.

Reviewed By: dim

Differential Revision: https://reviews.llvm.org/D94963
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp
Commit 81e2550f94ad30a000ab83d1183a86533832ee33 by Alexander.Richardson
[SLC] Baseline test for missed strcpy optimizations in non-zero AS

This will be fixed in D95142

Differential Revision: https://reviews.llvm.org/D95138
The file was addedllvm/test/Transforms/InstCombine/strcpy-nonzero-as.ll
Commit b26d6758f056a5a1187b7193e0c5071291c4d0e5 by Alexander.Richardson
[SLC] Simplify strcpy and friends with non-zero address spaces

The current logic in TargetLibraryInfoImpl::getLibFunc() was only treating
strcpy, etc. with i8* arguments in address space zero as a valid library
function. However, in the CHERI and Morello targets we expect all libc
functions to use address space 200 arguments.

This commit updates isValidProtoForLibFunc() to check that the argument
is a pointer type. This also drops the check for i8* since we should not
be checking the pointee type any more.

Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D95142
The file was modifiedllvm/test/Transforms/InstCombine/strcpy-nonzero-as.ll
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
The file was modifiedllvm/test/Transforms/InstCombine/strncpy_chk-2.ll
Commit 35bf23e965508a6ca00009ca45ba882d1ba7808c by Alexander.Richardson
Avoid shuffle self-assignment in EXPENSIVE_CHECKS builds

Some versions of libstdc++ perform self-assignment in std::shuffle. This
breaks the EXPENSIVE_CHECKS builds of TableGen due to an incorrect assertion
in libstdc++.

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85828.

Fixes https://llvm.org/PR37652

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D98167
The file was modifiedllvm/tools/bugpoint/ListReducer.h
The file was modifiedllvm/tools/bugpoint/FindBugs.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/SerialSnippetGenerator.cpp
The file was modifiedllvm/include/llvm/ADT/STLExtras.h
The file was modifiedllvm/tools/llvm-stress/llvm-stress.cpp
Commit 57e149d386286031e0fd118acf162056ce9d4795 by balazsbenics
[analyzer][docs][NFC] Fix typo in checkers.rst

Move `alpha.core.BoolAssignment` out of the `alpha.clone` enumeration.

Reviewed By: Szelethus

Differential Revision: https://reviews.llvm.org/D97936
The file was modifiedclang/docs/analyzer/checkers.rst
Commit 0dc0e2a9ab3cc6be3d4012ea861f54e69854472d by balazsbenics
[analyzer][NFC] Add more tests for ArrayBoundCheckerV2

According to a Bugzilla ticket (https://bugs.llvm.org/show_bug.cgi?id=45148),
ArrayBoundCheckerV2 produces a false-positive report.
This patch adds a test demonstrating the current //flawed// behavior.
Also adds several similar test cases just to be on the safe side.

Reviewed By: martong

Differential Revision: https://reviews.llvm.org/D86870
The file was addedclang/test/Analysis/out-of-bounds-false-positive.c
Commit 0e0ea9ffb8027b2e785b383d66b06bbd92dc7a46 by balazsbenics
[analyzer][CTU][NFC] Add an extra regression test

Before `bc713f6a004723d1325bc16e1efc32d0ac82f939` landed, the analyzer
crashed on this reduced example.
It seems important to have bot `ctu` and `-analyzer-opt-analyze-headers`
enabled in the example.

This test file ensures that no regression happens in the future in this regard.

Reviewed By: martong, NoQ

Differential Revision: https://reviews.llvm.org/D96586
The file was addedclang/test/Analysis/ctu-inherited-default-ctor.cpp
The file was addedclang/test/Analysis/Inputs/ctu-inherited-default-ctor-other.cpp
Commit bcc662484a95c95f7d193e6a791fc5d1c4a2c74f by balazsbenics
[analyzer] Crash fix for alpha.cplusplus.IteratorRange

If the non-iterator side of an iterator operation
`+`, `+=`, `-` or `-=` is `UndefinedVal` an assertions happens.
This small fix prevents this.

Patch by Adam Balogh.

Reviewed By: NoQ

Differential Revision: https://reviews.llvm.org/D85424
The file was modifiedclang/test/Analysis/iterator-range.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/IteratorRangeChecker.cpp
Commit 45da495f73d83b4c1400bf5896765d7883bd67e2 by andrzej.warzynski
[flang][driver] Merge test/Driver and test/Flang-Driver directories

Until now we've been maintaining 2 test directories for Flang's drivers:
  * test/Driver for `f18` (the current driver)
  * test/Flang-Driver for `flang-new` (the new driver)
As we have started sharing tests between the drivers, this separation is
no longer required. This patch merges the two test directories. As
suggested in the review, moving forward we'll avoid having tests
specifically for the old driver.

A few notable changes:
  * Driver/version-test.f90 and Driver/no-files.f90 are deleted. The
  versions for the new driver are more robust, but tricky to share.
  * Driver/write-module.f90 is deleted in favour of
    Flang-Driver/write-module.f90 (see https://reviews.llvm.org/D97197
    for more context)

Differential Revision: https://reviews.llvm.org/D98257
The file was addedflang/test/Driver/macro-def-undef.f90
The file was addedflang/test/Driver/Inputs/fixed-line-length-test.f
The file was removedflang/test/Flang-Driver/debug-provenance.f90
The file was removedflang/test/Flang-Driver/use-module-error.f90
The file was addedflang/test/Driver/use-module.f90
The file was addedflang/test/Driver/fixed-free-flag.f90
The file was addedflang/test/Driver/parse-error.f95
The file was removedflang/test/Flang-Driver/syntax-only.f90
The file was addedflang/test/Driver/use-module-error.f90
The file was removedflang/test/Flang-Driver/driver-error-cc1.cpp
The file was addedflang/test/Driver/fixed-line-length.f90
The file was removedflang/test/Flang-Driver/Inputs/basic-header-one.h
The file was addedflang/test/Driver/predefined-macros-compiler-version.f90
The file was addedflang/test/Driver/Inputs/basictestmoduleone.mod
The file was addedflang/test/Driver/debug-provenance.f90
The file was addedflang/test/Driver/driver-error-cc1.c
The file was removedflang/test/Flang-Driver/fixed-free-detection.f90
The file was removedflang/test/Flang-Driver/scanning-error.f95
The file was removedflang/test/Flang-Driver/Inputs/module-dir/basictestmoduletwo.mod
The file was removedflang/test/Flang-Driver/missing-input.f90
The file was addedflang/test/Driver/missing-input.f90
The file was addedflang/test/Driver/driver-help.f90
The file was addedflang/test/Driver/scanning-error.f95
The file was removedflang/test/Driver/help.f90
The file was removedflang/test/Flang-Driver/Inputs/fixed-line-length-test.f
The file was removedflang/test/Flang-Driver/Inputs/fixed-form-test.f
The file was addedflang/test/Driver/code-gen.f90
The file was removedflang/test/Flang-Driver/debug-measure-parse-tree.f90
The file was addedflang/test/Driver/escaped-backslash.f90
The file was addedflang/test/Driver/syntax-only.f90
The file was removedflang/test/Flang-Driver/include-header.f90
The file was removedflang/test/Flang-Driver/code-gen.f90
The file was removedflang/test/Flang-Driver/Inputs/header-dir/basic-header-one.h
The file was removedflang/test/Flang-Driver/parse-error.f95
The file was addedflang/test/Driver/driver-help-hidden.f90
The file was removedflang/test/Flang-Driver/macro-def-undef.f90
The file was removedflang/test/Driver/no-files.f90
The file was addedflang/test/Driver/frontend-forwarding.f90
The file was addedflang/test/Driver/input-from-stdin.f90
The file was addedflang/test/Driver/Inputs/module-dir/basictestmoduleone.mod
The file was addedflang/test/Driver/macro-multiline.f90
The file was addedflang/test/Driver/Inputs/header-dir/basic-header-one.h
The file was removedflang/test/Flang-Driver/driver-help.f90
The file was removedflang/test/Flang-Driver/fixed-free-flag.f90
The file was removedflang/test/Flang-Driver/flarge_sizes.f90
The file was addedflang/test/Driver/fixed-free-detection.f90
The file was addedflang/test/Driver/driver-version.f90
The file was removedflang/test/Flang-Driver/macro-multiline.f90
The file was addedflang/test/Driver/phases.f90
The file was removedflang/test/Flang-Driver/use-module.f90
The file was removedflang/test/Flang-Driver/Inputs/module-dir/basictestmoduleone.mod
The file was removedflang/test/Flang-Driver/fdefault.f90
The file was addedflang/test/Driver/Inputs/free-form-test.f90
The file was addedflang/test/Driver/fdefault.f90
The file was addedflang/test/Driver/Inputs/basic-header-one.h
The file was addedflang/test/Driver/driver-error-cc1.cpp
The file was removedflang/test/Flang-Driver/write-module.f90
The file was addedflang/test/Driver/debug-measure-parse-tree.f90
The file was addedflang/test/Driver/implicit-none.f90
The file was addedflang/test/Driver/Inputs/header-dir/basic-header-two.h
The file was removedflang/test/Flang-Driver/input-from-stdin.f90
The file was removedflang/test/Flang-Driver/Inputs/basictestmoduleone.mod
The file was removedflang/test/Flang-Driver/Inputs/basic-header-two.h
The file was removedflang/test/Flang-Driver/predefined-macros-compiler-version.f90
The file was removedflang/test/Flang-Driver/Inputs/free-form-test.f90
The file was removedflang/test/Flang-Driver/driver-help-hidden.f90
The file was addedflang/test/Driver/flarge_sizes.f90
The file was addedflang/test/Driver/Inputs/fixed-form-test.f
The file was addedflang/test/Driver/Inputs/basic-header-two.h
The file was addedflang/test/Driver/Inputs/module-dir/basictestmoduletwo.mod
The file was addedflang/test/Driver/help-f18.f90
The file was removedflang/test/Flang-Driver/driver-version.f90
The file was addedflang/test/Driver/include-header.f90
The file was modifiedflang/test/Driver/write-module.f90
The file was removedflang/test/Flang-Driver/Inputs/header-dir/basic-header-two.h
The file was removedflang/test/Driver/version-test.f90
The file was removedflang/test/Flang-Driver/implicit-none.f90
The file was removedflang/test/Flang-Driver/frontend-forwarding.f90
The file was removedflang/test/Flang-Driver/driver-error-cc1.c
The file was removedflang/test/Flang-Driver/fixed-line-length.f90
The file was removedflang/test/Flang-Driver/phases.f90
The file was removedflang/test/Flang-Driver/escaped-backslash.f90
Commit a94ac467c2974d9afe68f3fe6cff27bd19bcfad0 by balazsbenics
[analyzer][CTU][NFC] Fix "Add an extra regression test"

As thakis reported, I will replace `rm -r` by `rm -rf`.
I hope it fixes the build bot.
The file was modifiedclang/test/Analysis/ctu-inherited-default-ctor.cpp
Commit 2ce4caf4143bc7f6fe084da03d2ce268a7a06a6d by hanchung
Moved getStaticLoopRanges and getStaticShape methods to LinalgInterfaces.td to add static shape verification

It is to use the methods in LinalgInterfaces.cpp for additional static shape verification to match the shaped operands and loop on linalgOps. If I used the existing methods, I would face circular dependency linking issue. Now we can use them as methods of LinalgOp.

Reviewed By: hanchung

Differential Revision: https://reviews.llvm.org/D98163
The file was modifiedmlir/lib/Dialect/Linalg/Utils/Utils.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Utils/Utils.h
Commit 0af53de3699997d04bc0e23f6b366c26a4a9268b by zinenko
[mlir] simplify type constraints in AVX512 dialect

VectorOfLengthAndType accepts a cartesian product of given lengths and types
rather than types produced by co-indexed values in the corresponding lists.
Update the definitions accordingly. The type validity is already enforced by
op traits.

Reviewed By: nicolasvasilache, springerm

Differential Revision: https://reviews.llvm.org/D98327
The file was modifiedmlir/include/mlir/Dialect/AVX512/AVX512.td
Commit a776942ba1aa0e381dd41a01de4b54fc5dc431cd by zinenko
[mlir] squash LLVM_AVX512 dialect into AVX512

The dialect separation was introduced to demarkate ops operating in different
type systems. This is no longer the case after the LLVM dialect has migrated to
using built-in vector types, so the original reason for separation is no longer
valid. Squash the two dialects into one.

The code size decrease isn't quite large: the ops originally in LLVM_AVX512 are
preserved because they match LLVM IR intrinsics specialized for vector element
bitwidth. However, it is still conceptually beneficial to have only one
dialect. I originally considered to use Tablegen multiclasses to define both
the type-polymorphic op and its two intrinsic-related instantiations, but
decided against it given both the complexity of the required Tablegen input and
its dissimilarity with the rest of ODS-defined ops, both potentially resulting
in very poor maintainability.

Depends On D98327

Reviewed By: nicolasvasilache, springerm

Differential Revision: https://reviews.llvm.org/D98328
The file was addedmlir/include/mlir/Dialect/AVX512/Transforms.h
The file was addedmlir/lib/Dialect/AVX512/Transforms/LegalizeForLLVMExport.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/AVX512/CMakeLists.txt
The file was addedmlir/include/mlir/Target/LLVMIR/Dialect/AVX512/AVX512ToLLVMIRTranslation.h
The file was modifiedmlir/lib/Target/LLVMIR/Dialect/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
The file was removedmlir/include/mlir/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.h
The file was removedmlir/lib/Conversion/AVX512ToLLVM/CMakeLists.txt
The file was removedmlir/lib/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.cpp
The file was modifiedmlir/test/mlir-opt/commandline.mlir
The file was modifiedmlir/include/mlir/Dialect/AVX512/AVX512.td
The file was modifiedmlir/include/mlir/InitAllDialects.h
The file was removedmlir/lib/Target/LLVMIR/Dialect/LLVMAVX512/LLVMAVX512ToLLVMIRTranslation.cpp
The file was removedmlir/include/mlir/Dialect/LLVMIR/LLVMAVX512Dialect.h
The file was removedmlir/include/mlir/Target/LLVMIR/Dialect/LLVMAVX512/LLVMAVX512ToLLVMIRTranslation.h
The file was addedmlir/lib/Dialect/AVX512/IR/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was addedmlir/lib/Target/LLVMIR/Dialect/AVX512/AVX512ToLLVMIRTranslation.cpp
The file was removedmlir/lib/Target/LLVMIR/Dialect/LLVMAVX512/CMakeLists.txt
The file was addedmlir/lib/Target/LLVMIR/Dialect/AVX512/CMakeLists.txt
The file was removedmlir/include/mlir/Dialect/LLVMIR/LLVMAVX512.td
The file was removedmlir/test/Conversion/AVX512ToLLVM/convert-to-llvm.mlir
The file was modifiedmlir/test/Target/LLVMIR/avx512.mlir
The file was modifiedmlir/include/mlir/Target/LLVMIR/Dialect/All.h
The file was addedmlir/lib/Dialect/AVX512/Transforms/CMakeLists.txt
The file was modifiedmlir/lib/Target/LLVMIR/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/AVX512/IR/AVX512Dialect.cpp
The file was modifiedmlir/include/mlir/Dialect/AVX512/CMakeLists.txt
The file was addedmlir/test/Dialect/AVX512/legalize-for-llvm.mlir
The file was removedmlir/lib/Dialect/LLVMIR/IR/LLVMAVX512Dialect.cpp
Commit 523d7bc6f427f9ae32e54dbf1764826cfb269d21 by andrzej.warzynski
[flang][driver] Add `-fdebug-dump-parsing-log`

This patch adds `-fdebug-dump-parsing-log` in the new driver. This option is
semantically identical to `-fdebug-instrumented-parse` in `f18` (the
former is added as an alias in `f18`).

As dumping the parsing log makes only sense for instrumented parses, we
set Fortran::parser::Options::instrumentedParse to `True` when
`-fdebug-dump-parsing-log` is used. This is consistent with `f18`.

To facilitate tweaking the configuration of the frontend based on the
action being requested, `setUpFrontendBasedOnAction` is introduced in
CompilerInvocation.cpp.

Differential Revision: https://reviews.llvm.org/D97457
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedflang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
The file was modifiedflang/include/flang/Frontend/FrontendOptions.h
The file was modifiedflang/include/flang/Frontend/FrontendActions.h
The file was modifiedflang/lib/Frontend/FrontendActions.cpp
The file was modifiedflang/tools/f18/f18.cpp
The file was modifiedflang/test/Driver/driver-help.f90
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedflang/test/Driver/debug-parsing-log.f90
Commit 78f3fb4f4624fb57a32478e7504458514c37b41c by zinenko
[mlir] Update comments in ArmNeon dialect. NFC

These were not updated when squashing LLVMArmNeon and ArmNeon dialects.
The file was modifiedmlir/include/mlir/Target/LLVMIR/Dialect/ArmNeon/ArmNeonToLLVMIRTranslation.h
The file was modifiedmlir/lib/Target/LLVMIR/Dialect/ArmNeon/ArmNeonToLLVMIRTranslation.cpp
Commit 7d0cafba962c56d79b2f1c2caab695551d3be6df by stephen.tozer
[DebugInfo] Process DBG_VALUE_LIST in LiveDebugVariables

This patch adds support for DBG_VALUE_LIST in the LiveDebugVariables pass. The
changes are mostly in computeIntervals, extendDef, and addDefsFromCopies; when
extending the def of a DBG_VALUE_LIST the live ranges of every used register
must be considered, and when such a def is killed by more than one of its used
registers being killed at the same time it is necessary to find valid copies of
all of those registers to create a new def with.

The DebugVariableValue class has also been changed to reference multiple
location numbers instead of just one. This has been accomplished by using a
C-style array with a unique_ptr and an array length packed into 6 bits, to
minimize the size of the class (which must be kept low to be used with
IntervalMap). This may not be the most efficient solution possible, and should
be looked at if performance issues arise.

Differential Revision: https://reviews.llvm.org/D83895
The file was addedllvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-stackptr.mir
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
The file was modifiedllvm/test/DebugInfo/MIR/X86/live-debug-vars-unused-arg-debugonly.mir
The file was addedllvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-movements.mir
Commit 2fccd1b00a7667228a0b5f167b2936b69b717372 by serguei.katkov
[Statepoint Lowering] Fix the crash with gc.relocate in a separate block

If it was decided to relocate derived pointer using the spill its value is
not exported in general case.
When gc.relocate is located in an another block than a statepoint we cannot
get SD for derived value but for spill case it is not required at all.
However implementation of gc.relocate lowering unconditionally request SD value
causing the assert triggering.

The CL fixes this by handling spill case earlier than SD is really required.

Reviewers: reames, dantrushin
Reviewed By: dantrushin
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D98324
The file was modifiedllvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
The file was addedllvm/test/CodeGen/X86/statepoint-spill-lowering.ll
Commit 481079e2841f1d7aafbbd627e7028bcc632a4ef7 by alexfh
[NFC] Unify FIME with FIXME in comments

There are 5 occurrences FIME and 15333 FIXME. All of them should be FIXME.

Reviewed By: alexfh

Differential Revision: https://reviews.llvm.org/D98321
The file was modifiedclang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
Commit 99b01cf28db9db1a3ec0e25367bd325b7aca6d43 by kadircet
Revert "[clangd] Enable reflection for clangd-index-server"

This reverts commit 8080ea4c4b8c456c72c617587cc32f174b3105c1.

As discussed offline we should only do that for debug builds.
The file was modifiedclang-tools-extra/clangd/index/remote/server/Server.cpp
The file was modifiedllvm/cmake/modules/FindGRPC.cmake
The file was modifiedclang-tools-extra/clangd/index/remote/server/CMakeLists.txt
Commit 4c6ab48fb1149c4f1f1d2953f5d232211b3a6bce by Christudasan.Devadasan
GlobalISel: Try to combine G_[SU]DIV and G_[SU]REM

It is good to have a combined `divrem` instruction when the
`div` and `rem` are computed from identical input operands.
Some targets can lower them through a single expansion that
computes both division and remainder. It effectively reduces
the number of instructions than individually expanding them.

Reviewed By: arsenm, paquette

Differential Revision: https://reviews.llvm.org/D96013
The file was modifiedllvm/include/llvm/Support/TargetOpcodes.def
The file was modifiedllvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-divrem.mir
The file was modifiedllvm/include/llvm/Target/GlobalISel/Combine.td
The file was modifiedllvm/docs/GlobalISel/GenericOpcode.rst
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
The file was modifiedllvm/include/llvm/Target/GenericOpcodes.td
The file was modifiedllvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-divrem.mir
Commit 25951c5ab8e9d8e4040de163f06c444c73314551 by jingu.kang
[AArch64] Add missing intrinsics for scalar FP rounding

Differential Revision: https://reviews.llvm.org/D98269
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was addedllvm/test/CodeGen/AArch64/v8.5a-scalar-frint3264-intrinsic.ll
The file was modifiedclang/include/clang/Basic/BuiltinsAArch64.def
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
The file was modifiedclang/lib/Headers/arm_acle.h
The file was addedclang/test/CodeGen/aarch64-v8.5a-scalar-frint3264-intrinsic.c
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
Commit 7044f1d875e37a5badd4e59ee84b56faf7432f68 by n.james93
[clangd] Use Dirty Filesystem for cross file rename.

Refactor cross file rename to use a Filesystem instead of a function for getting buffer contents of open files.

Depends on D94554

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D95043
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/TUScheduler.cpp
The file was modifiedclang-tools-extra/clangd/TUScheduler.h
The file was modifiedclang-tools-extra/clangd/refactor/Rename.h
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
Commit e02dd790b1ed32723725d5402f9bf2c3593d2ad9 by zinenko
[mlir] fix typo in OpDefinitions.md
The file was modifiedmlir/docs/OpDefinitions.md
Commit 0da27ba56c9f5e3f534a65401962301189eac342 by stephen.tozer
[DebugInfo] Add DWARF emission for DBG_VALUE_LIST

This patch allows DBG_VALUE_LIST instructions to be emitted to DWARF with valid
DW_AT_locations. This change mainly affects DbgEntityHistoryCalculator, which
now tracks multiple registers per value, and DwarfDebug+DwarfExpression, which
can now emit multiple machine locations as part of a DWARF expression.

Differential Revision: https://reviews.llvm.org/D83495
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was addedllvm/test/DebugInfo/X86/dbg_value_list_clobbers.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was addedllvm/test/DebugInfo/X86/dbg_value_list_emission.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
Commit b599f464d4aab388e95f7a646c2657b40bd8a9f9 by zinenko
[mlir][CMAKE] Fix build with BUILD_SHARED_LIBS=ON

Link `MLIRStandardToLLVM` to `MLIRAVX512Transforms`, since
the latter uses `LLVMTypeConverter` defined in the first one.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D98336
The file was modifiedmlir/lib/Dialect/AVX512/Transforms/CMakeLists.txt
Commit 1aafaaca6717d2cf3084e4ba38bde63f619dca90 by thakis
[lld/mac] Implement support for -mark_dead_strippable_dylib

lld doesn't read MH_DEAD_STRIPPABLE_DYLIB to strip dead dylibs yet,
but now it can produce dylibs with it set.

While here, also switch an existing test that looks only at the main Mach-O
header from --all-headers to --private-header.

Differential Revision: https://reviews.llvm.org/D98262
The file was addedlld/test/MachO/mark-dead-strippable-dylib.s
The file was modifiedlld/MachO/Config.h
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/Options.td
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/test/MachO/header.s
Commit 6e92f468c82bac06051675fa94f72ca2789d2bc0 by thakis
[lld/mac] warn on -install_name without -dylib

The flag doesn't (and shouldn't) have an effect in that case.
ld64 doesn't warn on this, but it seems like a good thing to do.
If it causes problems in practice for some reason, we can revert it.

Also add a dedicated test for install_name.

Differential Revision: https://reviews.llvm.org/D98259
The file was addedlld/test/MachO/install-name.s
The file was modifiedlld/MachO/Driver.cpp
Commit 429c6ecbb302e2beedd8694378ae5be456206209 by stephen.tozer
Revert "[DebugInfo] Add DWARF emission for DBG_VALUE_LIST"

This reverts commit 0da27ba56c9f5e3f534a65401962301189eac342.

This revision was causing an error on the sanitizer-x86_64-linux-autoconf build.
The file was removedllvm/test/DebugInfo/X86/dbg_value_list_clobbers.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was removedllvm/test/DebugInfo/X86/dbg_value_list_emission.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
Commit 023b5c1ed8d1577bf0cf298b64a0a047b13fc418 by kai
[SystemZ][NFC] Renaming of ELF specific variables.

Rename ELF specific variables, making it easier to add the XPLink
variables in future patches.

Reviewed By: abhina.sreeskantharajan, Kai

Differential Revision: https://reviews.llvm.org/D98199
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZCallingConv.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZCallingConv.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZFrameLowering.h
The file was modifiedllvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
Commit 201550852be4d4213d733316c38c0a7335b0d14c by daniel.kiss
[AArch64][compiler-rt] Add Pointer Authentication support for VFORK.

The LR is stored to off-stack spill area where it is vulnerable.
"paciasp" add an auth code to the LR while the "autiasp" verifies that so
LR can't be modiifed on the spill area.

Test: build with -DCMAKE_C_FLAGS="-mbranch-protection=standard",
run on Armv8.3 capable hardware with PAuth.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D98009
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S
Commit 987ee6e3cc1fb672b3ed201e72a5281c2ec88c99 by eschweitz
[flang][fir] Upstream the pre-FIR tree changes.

The PFT has been updated to support Fortran 77.
clang-tidy cleanup.

Authors: Val Donaldson, Jean Perier, Eric Schweitz, et.al.

Differential Revision: https://reviews.llvm.org/D98283
The file was modifiedflang/lib/Lower/PFTBuilder.cpp
The file was addedflang/lib/Lower/IntervalSet.h
The file was modifiedflang/include/flang/Lower/PFTBuilder.h
The file was addedflang/include/flang/Lower/PFTDefs.h
The file was modifiedflang/include/flang/Lower/IO.h
The file was addedflang/include/flang/Lower/Support/Utils.h
The file was modifiedflang/test/Lower/pre-fir-tree01.f90
The file was modifiedflang/test/Lower/pre-fir-tree02.f90
The file was modifiedflang/test/Lower/pre-fir-tree04.f90
The file was modifiedflang/test/Lower/pre-fir-tree05.f90
Commit e64f3ccca3c2d4cb122a8db3d22e0d885286ea16 by stephen.tozer
Reapply "[DebugInfo] Add DWARF emission for DBG_VALUE_LIST"

This reverts commit 429c6ecbb302e2beedd8694378ae5be456206209.
The file was addedllvm/test/DebugInfo/X86/dbg_value_list_emission.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
The file was addedllvm/test/DebugInfo/X86/dbg_value_list_clobbers.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
Commit 70f013fd3b48087e793be7dc8fd79820556876e5 by jay.foad
[AMDGPU] Fix isReallyTriviallyReMaterializable for V_MOV_*

D57708 changed SIInstrInfo::isReallyTriviallyReMaterializable to reject
V_MOVs with extra implicit operands, but it accidentally rejected all
V_MOVs because of their implicit use of exec. Fix it but avoid adding a
moderately expensive call to MI.getDesc().getNumImplicitUses().

In real graphics shaders this changes quite a few vgpr copies into move-
immediates, which is good for avoiding stalls on GFX10.

Differential Revision: https://reviews.llvm.org/D98347
The file was addedllvm/test/CodeGen/AMDGPU/vgpr-remat.mir
The file was modifiedllvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Commit 077dc5c87bd3a427560f60acd97056b5e95c70f8 by flo
[DSE] Add tests that require phi translation to be removed.
The file was addedllvm/test/Transforms/DeadStoreElimination/phi-translation.ll
Commit c68b560be381e831fd72c6b8b8909427e4e2ff36 by Dávid Bolvanský
[DSE] Handle memmove with equal non-const sizes

Follow up for fhahn's D98284. Also fixes a case from PR47644.

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D98346
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
The file was modifiedllvm/test/Transforms/DeadStoreElimination/memory-intrinsics-sizes.ll
Commit 547624af1963f082f0c4676b0c019528372f6f13 by andrzej.warzynski
[flang][driver] Revert RUN-line change

In https://reviews.llvm.org/D98283, the RUN line in pre-fir-tree04.f90
was updated to use `%flang_fc1` instead of `%f18` (so that the test is
shared between the old and the new driver). Unfortunately, the new
driver does not know yet how to find standard intrinsics modules. As a
result, the test fails when `FLANG_BUILD_NEW_DRIVER` is set to On.

I'm restoring the original RUN line. This is rather straightforward, so
sending without a review. This should make Flang builders happy.
The file was modifiedflang/test/Lower/pre-fir-tree04.f90
Commit 6a9a686ce79c7a78f2a7df6ce5043cfd6fab93e8 by jianzhouzh
[dfsan] Tracking origins at phi nodes

This is a part of https://reviews.llvm.org/D95835.

Reviewed-by: morehouse

Differential Revision: https://reviews.llvm.org/D98268
The file was addedllvm/test/Instrumentation/DataFlowSanitizer/origin_cached_shadows.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
The file was addedllvm/test/Instrumentation/DataFlowSanitizer/origin_phi.ll
The file was addedcompiler-rt/test/dfsan/origin_branch.c
Commit 1db137b1859692ae33228c530d4df9f2431b2151 by stephen.tozer
[DebugInfo] Handle DBG_VALUES with multiple variable location operands in MIR

This patch adds handling for DBG_VALUE_LIST in the MIR-passes (after
finalize-isel), excluding the debug liveness passes and DWARF emission. This
most significantly affects MachineSink, which now needs to consider all used
registers of a debug value when sinking, but for most passes this change is
simply replacing getDebugOperand(0) with an iteration over all debug operands.

Differential Revision: https://reviews.llvm.org/D92578
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp
The file was modifiedllvm/lib/CodeGen/RegisterCoalescer.cpp
The file was modifiedllvm/lib/CodeGen/MachineSink.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineInstr.h
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
The file was modifiedllvm/lib/CodeGen/PrologEpilogInserter.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineInstrBuilder.h
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
Commit 7ff2768be14f55a60100e47ba3849e1495f0f002 by tu.da.wei
Revert "[LoopInterchange] Replace tightly-nesting-ness check with the one from `LoopNest`"

This reverts commit df9158c9a45a6902c2b0394f9bd6512e3e441f31.
The file was modifiedllvm/include/llvm/Analysis/LoopNestAnalysis.h
The file was modifiedllvm/lib/Analysis/LoopNestAnalysis.cpp
The file was removedllvm/test/Transforms/LoopInterchange/pr48113.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopInterchange.cpp
Commit 1e39118638cd77c416f2456828bc2b90b8f194ad by craig.topper
[RISCV] Manually split vector operands to VECREDUCE when handling vXi64 vectors on RV32.

The type legalizer will visit the result before the operands. To
avoid creating an illegal target specific node or falling back to
scalarization, we need to manually split vector operands.

This still doesn't handle the case of non-power of 2 operands
which need to be widened. I'm not sure the type legalizer is
ready for it. I think we would need to insert an
INSERT_SUBVECTOR with the power of 2 type we want, with an undef
first operand, and the non-power of 2 orignal operand as the vector
to insert. Then fill in the neutral elements into the elements the
padded elements. Alternatively we INSERT_SUBVECTOR into a neutral vector.
From there we carry on splitting if needed to get to a legal type
then do the target specific code.

The problem with this is the type legalizer doesn't know how to
widen an insert_subvector yet. We would need to add that including
the handling for a non-undef first vector.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D98292
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
Commit 7c49f3c75be95401b089cab75bb71a71020b350d by spatel
[InstCombine][SimplifyLibCalls] An extra sqrtf was produced because of transformations in optimizePow function

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

There was an extra sqrt call because shrinking emitted a new powf and at the same time optimizePow replaces the previous pow with sqrt and as the result we have two instructions that will be in worklist of InstCombie despite the fact that %powf is not used by anyone (it is alive because of errno).

As the result we have two instructions:

  %powf = call fast float @powf(float %x, float 5.000000e-01)
  %sqrt = call fast double @sqrt(double %dx)

%powf will be converted to %sqrtf on a later iteration.

As a quick fix for that I moved shrinking to the end of optimizePow so that pow is replaced with sqrt at first that allows not to emit a new shrunk powf.

Differential Revision: https://reviews.llvm.org/D98235
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/pow-4.ll
Commit 771c4c9cf6be9f0b1e6e1d9f3e5063d0c3e6086b by mgorny
[lldb] [Process/FreeBSD] Introduce aarch64 hw break/watchpoint support

Split out the common base of Linux hardware breakpoint/watchpoint
support for AArch64 into a Utility class, and use it to implement
the matching support on FreeBSD.

Differential Revision: https://reviews.llvm.org/D96548
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
The file was modifiedlldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm64.h
The file was addedlldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_arm64.cpp
The file was addedlldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_arm64.h
The file was modifiedlldb/source/Plugins/Process/Utility/CMakeLists.txt
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm64.cpp
The file was modifiedlldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
The file was modifiedlldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.h
Commit f47a84bc335775273688b76df8ddc7daae7f132e by mgorny
[lldb] [test] Update XFAILs for FreeBSD/aarch64
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentTwoBreakpointsOneWatchpoint.py
The file was modifiedlldb/test/API/iohandler/completion/TestIOHandlerCompletion.py
The file was modifiedlldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py
The file was modifiedlldb/test/API/functionalities/return-value/TestReturnValue.py
The file was modifiedlldb/test/API/commands/expression/static-initializers/TestStaticInitializers.py
The file was modifiedlldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentTwoBreakpointsOneDelaySignal.py
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentTwoBreakpointThreads.py
The file was modifiedlldb/test/API/tools/lldb-vscode/module/TestVSCode_module.py
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteLoad.py
The file was modifiedlldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
The file was modifiedlldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyBreakpoints.py
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentSignalNWatchNBreak.py
The file was modifiedlldb/test/API/commands/expression/multiline-completion/TestMultilineCompletion.py
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentNWatchNBreak.py
The file was modifiedlldb/test/API/commands/expression/fixits/TestFixIts.py
The file was modifiedlldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
The file was modifiedlldb/test/API/functionalities/thread/concurrent_events/TestConcurrentTwoBreakpointsOneSignal.py
Commit 40e261803bd40099ee2f322670157b0b57d7bf3e by psteinfeld
[flang] Fix call to CHECK() on overriding an erroneous type-bound procedure

You can define a base type with a type-bound procedure which is erroneously
missing a NOPASS attribute and then define another type that extends the base
type and overrides the erroneous procedure.  In this case, when we perform
semantic checking on the overriding procedure, we verify the "pass index" of
the overriding procedure.  The attempt to get the procedure's pass index fails
a call to CHECK().

I fixed this by calling SetError() on the symbol of the overridden procedure in
the base type.  Then, I check HasError() before executing the code that invokes
the failing call to CHECK().  I also added a test that will cause the compiler
to fail the call to CHECK() without this change.

Differential Revision: https://reviews.llvm.org/D98355
The file was modifiedflang/lib/Semantics/check-declarations.cpp
The file was modifiedflang/test/Semantics/bindings01.f90
Commit a159f91c8d068cae660a200868b7fc28fcbcd3ff by Dan Liew
[compiler-rt] Fix stale incremental builds when using `LLVM_BUILD_EXTERNAL_COMPILER_RT=ON`.

When building with `LLVM_BUILD_EXTERNAL_COMPILER_RT=ON` (e.g. Swift does
this) we do an "external" build of compiler-rt where we build
compiler-rt with the just built clang.

Unfortunately building in this mode had a bug where compiler-rt would
not get rebuilt if compiler-rt sources changed. This is problematic
for incremental builds because it meant that the compiler-rt binaries
were stale.

The fix is to use the `BUILD_ALWAYS` ExternalProject_Add option which
means the build command for compiler-rt is always run.

In principle if all of the following are true:

* compiler-rt has already been built.
* there are no compiler-rt source changes.
* the compiler hasn't changed.
* ninja is being used as the generator for the compiler-rt build.

then the overhead for always running the build command for incremental
builds is negligible.

However, in practice clang gets rebuilt everytime the HEAD commit
changes (due to commit hash being embedded in the output of `--version`)
which means all of compiler-rt will be rebuilt everytime this happens.
While this is annoying it's better to do the slow but correct thing
rather than the fast but incorrect thing.

rdar://75150660

Differential Revision: https://reviews.llvm.org/D98291
The file was modifiedclang/runtime/CMakeLists.txt
Commit 0c73a506e809be24e043856259fc07cef64f02b0 by craig.topper
[RISCV] Starting fixing issues that prevent us from testing vXi64 intrinsics on RV32.

Currently we crash in type legalization any time an intrinsic
uses a scalar i64 on RV32.

This patch adds support for type legalizing this to prevent
crashing. I don't promise that it uses the best possible codegen
just that it is functional.

This first version handles 3 cases. vmv.v.x intrinsic, vmv.s.x
intrinsic and intrinsics that take a scalar input, splat it and
then do some operation.

For vmv.v.x we'll either rely on hardware sign extension for
constants or we'll convert it to multiple splats and bit
manipulation.

For vmv.s.x we use a really unoptimal sequence inspired by what
we do for an INSERT_VECTOR_ELT.

For the third case we'll either try to use the .vi form for
constants or convert to a complicated splat and bitmanip and use
the .vv form of the operation.

I've renamed the ExtendOperand field to SplatOperand now use it
specifically for the third case. The first two cases are handled
by custom lowering specifically for those intrinsics.

I haven't updated all tests yet, but I tried to cover a subset
that includes single-width, widening, and narrowing.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D97895
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vasubu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vasub-rv32.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsRISCV.td
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vaadd-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vaaddu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vadc-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssra-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vadd-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwaddu.w-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsubu.w-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vssrl-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vnsra-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwaddu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vnsrl-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsub-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vand-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwsubu-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vwadd-rv32.ll
Commit 9106d04554026c94070528d164965e62ff54ceed by craig.topper
[RISCV][SelectionDAG] Introduce an ISD::SPLAT_VECTOR_PARTS node that can represent a splat of 2 i32 values into a nxvXi64 vector for riscv32.

On riscv32, i64 isn't a legal scalar type but we would like to
support scalable vectors of i64.

This patch introduces a new node that can represent a splat made
of multiple scalar values. I've used this new node to solve the current
crashes we experience when getConstant is used after type legalization.

For RISCV, we are now default expanding SPLAT_VECTOR to SPLAT_VECTOR_PARTS
when needed and then handling the SPLAT_VECTOR_PARTS later during
LegalizeOps. I've remove the special case I previously put in for
ABS for D97991 as the default expansion is now able to succesfully
use getConstant.

Reviewed By: frasercrmck

Differential Revision: https://reviews.llvm.org/D98004
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
The file was modifiedllvm/include/llvm/CodeGen/ISDOpcodes.h
Commit 81b8357e70eb278e043116e33dc7575f8dd84eb0 by stephen.tozer
[DebugInfo][NFC] Refactor BinOp+GEP salvaging in salvageDebugInfoImpl

This patch refactors out the salvaging of GEP and BinOp instructions into
separate functions, in preparation for further changes to the salvaging of these
instructions coming in another patch; there should be no functional change as a
result of this refactor.

Differential Revision: https://reviews.llvm.org/D92851
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
Commit c8227f06b3356cdc9cc757d8888dfb59a6d8ad89 by aeubanks
[clang] Don't assert in EmitAggregateCopy on trivial_abi types

Fixes PR42961.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D97872
The file was modifiedclang/test/CodeGenCXX/trivial_abi.cpp
The file was modifiedclang/lib/CodeGen/CGExprAgg.cpp
Commit 8b540c542ce3a73aba1848c6e931b46bc647bc8d by amy.kwan1
[PowerPC] Implement patterns for PC-Rel zextload/extload byte loads

This patch adds patterns to select the PC-Relative extloadi1 and zextloadi1 byte loads.

Differential Revision: https://reviews.llvm.org/D98042
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrPrefix.td
The file was addedllvm/test/CodeGen/PowerPC/pcrel-byte-loads.ll
Commit 95db7b4aeaad590f37720898e339a6d54313422f by diego.caballero
[mlir][Vector][Affine] Improve affine vectorizer algorithm

This patch replaces the root-terminal vectorization approach implemented in the
Affine vectorizer with a topological order approach that vectorizes all the
operations within the target loop nest. These are the most important changes
introduced by the new algorithm:
  * Removed tracking of root and terminal ops. Existing vectorization
    functionality is preserved and extended so that loop nests without
    root-terminal chains can be vectorized.
  * Vectorizing a loop nest now only requires a single topological traversal.
  * A new vector loop nest is incrementally built along the vectorization
    process. The original scalar loop is kept intact. No cloning guard is needed
    to recover the scalar loop if vectorization fails. This approach also
    simplifies the challenging task of replacing a loop operation amid the
    vectorization process without invalidating the analysis information that
    depends on the original loop.
  * Vectorization of specific operations has been implemented as independent,
    preparing them to be moved to a potential vectorization interface.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D97442
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorUtils.h
The file was modifiedmlir/lib/Dialect/Vector/VectorUtils.cpp
Commit 77a9d1549fcc57946b66fd5bacef3b48a613e872 by diego.caballero
[mlir][Affine][Vector] Add initial support for 'iter_args' to Affine vectorizer.

This patch adds support for vectorizing loops with 'iter_args' when those loops
are not a vector dimension. This allows vectorizing outer loops with an inner
'iter_args' loop (e.g., reductions). Vectorizing scenarios where 'iter_args'
loops are vector dimensions would require more work (e.g., analysis,
generating horizontal reduction, etc.) not included in this patch.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D97892
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir
Commit 66dab2fa8470eb8ff4c3e975ddd8bc05c0766a22 by qcolombet
[NFC] Fix compiler warnings

Fix warnings caused by -Wrange-loop-analysis.

Patch by Xiaoqing Wu <xiaoqing_wu@apple.com>

Differential Revision: https://reviews.llvm.org/D98298
The file was modifiedllvm/include/llvm/CodeGen/WasmEHFuncInfo.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
Commit 354d10530d267838a08bf0a27b1bdf69fd99086e by davelee.com
[lldb] Fix PushPlan to set subplan to private

Call `SetPrivate(true)` for subplans pushed via `PushPlan()`, as described in its
docstring.

Differential Revision: https://reviews.llvm.org/D96916
The file was modifiedlldb/include/lldb/Target/ThreadPlan.h
Commit e4b40616d4cd6de44bb6d49d792c103ba3eabeff by rafaelauler
[RuntimeDyld] Support more relocations

This patch introduces functionality used by BOLT when
re-linking the final binary. It adds new relocation types that
are currently unsupported by RuntimeDyldELF.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D97899
The file was modifiedllvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
Commit ed715536f14c32cb93f6d61a1220da515c3197de by zinenko
Revert "[mlir][Affine][Vector] Add initial support for 'iter_args' to Affine vectorizer."

This reverts commit 77a9d1549fcc57946b66fd5bacef3b48a613e872.

Parent commit is broken.
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
Commit 79da91c59aeea3b126ec9a0d6f403a8c0f59e4dc by zinenko
Revert "[mlir][Vector][Affine] Improve affine vectorizer algorithm"

This reverts commit 95db7b4aeaad590f37720898e339a6d54313422f.

This breaks vectorize_2d.mlir and vectorize_3d.mlir test under ASAN (use
after free).
The file was modifiedmlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
The file was modifiedmlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir
The file was modifiedmlir/lib/Dialect/Vector/VectorUtils.cpp
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorUtils.h
Commit e19160c81ee16cea09e65a18c3222c3ffac18ae6 by nikita.ppv
[InstCombine] Regenerate test checks (NFC)
The file was modifiedllvm/test/Transforms/InstCombine/lifetime-no-null-opt.ll
The file was modifiedllvm/test/Transforms/InstCombine/lifetime.ll
The file was modifiedllvm/test/Transforms/InstCombine/addrspacecast.ll
The file was modifiedllvm/test/Transforms/InstCombine/gepphigep.ll
The file was modifiedllvm/test/Transforms/InstCombine/unpack-fca.ll
The file was modifiedllvm/test/Transforms/InstCombine/strcpy_chk-64.ll
Commit 0ba1ebcbb7751ad53d7be4704f815503837a75f8 by tmsriram
Remove original implementation of UniqueInternalLinkageNames pass.

D96109 was recently submitted which contains the refactored implementation of
-funique-internal-linakge-names by adding the unique suffixes in clang rather
than as an LLVM pass. Deleting the former implementation in this change.

Differential Revision: https://reviews.llvm.org/D98234
The file was removedllvm/test/Transforms/UniqueInternalLinkageNames/unique-internal-linkage-names.ll
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was modifiedllvm/include/llvm/Transforms/Utils.h
The file was modifiedllvm/tools/opt/NewPMDriver.cpp
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/include/llvm/Passes/PassBuilder.h
The file was modifiedllvm/lib/Transforms/Utils/CMakeLists.txt
The file was removedllvm/test/Transforms/UniqueInternalLinkageNames/unique_symbol_names.ll
The file was modifiedllvm/lib/Transforms/Utils/Utils.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was removedllvm/lib/Transforms/Utils/UniqueInternalLinkageNames.cpp
The file was removedllvm/include/llvm/Transforms/Utils/UniqueInternalLinkageNames.h
Commit 98fe9e41f7a612193ee74689961050bd4dc7c61e by gkm
[lld-macho][NFC] add const to pointer/reference induction variables of range-based for loops

Pointer and reference induction variables of range-based for loops are often const, and code authors often lax about qualifying them.

Differential Revision: https://reviews.llvm.org/D98317
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/MachO/ExportTrie.cpp
The file was modifiedlld/MachO/Writer.cpp
The file was modifiedlld/MachO/Dwarf.cpp
The file was modifiedlld/MachO/UnwindInfoSection.cpp
Commit 989051d5f899c22fd2b3b4bb039b2913be0a2a4a by nikita.ppv
[DSE] Extending isOverwrite to support offsetted fully overlapping stores

The isOverwrite function is making sure to identify if two stores
are fully overlapping and ideally we would like to identify all the
instances of OW_Complete as they'll yield possibly killable stores.
The current implementation is incapable of spotting instances where
the earlier store is offsetted compared to the later store, but
still fully overlapped. The limitation seems to lie on the
computation of the base pointers with the
GetPointerBaseWithConstantOffset API that often yields different
base pointers even if the stores are guaranteed to partially overlap
(e.g. the alias analysis is returning AliasResult::PartialAlias).

The patch relies on the offsets computed and cached by BatchAAResults
(available after D93529) to determine if the offsetted overlapping
is OW_Complete.

Differential Revision: https://reviews.llvm.org/D97676
The file was addedllvm/test/Transforms/DeadStoreElimination/offsetted-overlapping-stores.ll
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Commit 05c2c8aaa84d3d95d818627a351d717c928d3725 by gbalats
[dfsan] Update fast16labels.ll test

Remove hard-coded shadow width references. Separate CHECK lines that only apply to fast16 mode.

Reviewed By: stephan.yichao.zhao

Differential Revision: https://reviews.llvm.org/D98308
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/fast16labels.ll
Commit a2abe2259c2d5b8c494f3513b840adf1572b21bc by georgakoudis1
Run non-filechecked commands in update_cc_test_checks.py

Some tests in clang require running non-filechecked commands to generate the actual filecheck input. For example, tests for openmp offloading require generating the host bc without any checking, before running the clang command to actually generate the filechecked IR of the target device. This patch enables `update_cc_test_checks.py` to run non-filechecked run lines in-place.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D97068
The file was addedclang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c
The file was addedclang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected
The file was modifiedllvm/utils/update_cc_test_checks.py
The file was addedclang/test/utils/update_cc_test_checks/exec-all-runlines.test
Commit 574a9dabc63ba1e7a04c08d4bde2eacd61b44ce1 by Stanislav.Mekhanoshin
[AMDGPU] Always expand system scope fp atomics on gfx90a

FP atomics in system scope cannot be used and shall always
be expanded in a CAS loop.

Differential Revision: https://reviews.llvm.org/D98085
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/global-atomics-fp.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
Commit 9931b1f7a4785b6a17fb87b81a3546d61d0cbca1 by Stanislav.Mekhanoshin
[AMDGPU] Disable SCC bit on fp atomics

Differential Revision: https://reviews.llvm.org/D98221
The file was modifiedllvm/lib/Target/AMDGPU/FLATInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPU.td
The file was modifiedllvm/test/MC/AMDGPU/gfx90a_asm_features.s
The file was modifiedllvm/test/MC/AMDGPU/gfx90a_err.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx90a_dasm_features.txt
Commit 619c1505f9445501551ffedd85cf361a4c5917f0 by antiagainst
[mlir][spirv] Define spv.Image Operation

co-authered-by: Alan Liu <alanliu.yf@gmail.com>

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D98270
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
The file was addedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
The file was modifiedmlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
The file was addedmlir/test/Target/SPIRV/image-ops.mlir
The file was addedmlir/test/Dialect/SPIRV/IR/image-ops.mlir
Commit 4f16e177e104eb80589311dc3cc1b5355a7e41bb by a.v.lapshin
[llvm-objcopy][NFC] replace class Buffer/MemBuffer/FileBuffer with streams.

During D88827 it was requested to remove the local implementation
of Memory/File Buffers:

// TODO: refactor the buffer classes in LLVM to enable us to use them here
// directly.

This patch uses raw_ostream instead of Buffers. Generally, using streams
could allow us to reduce memory usages. No need to load all data into the
memory - the data could be streamed through a smaller buffer.
Thus, this patch uses raw_ostream as an interface for output data:

Error executeObjcopyOnBinary(CopyConfig &Config,
                             object::Binary &In,
                             raw_ostream &Out);

Note 1. This patch does not change the implementation of Writers
so that data would be directly stored into raw_ostream.
This is assumed to be done later.

Note 2. It would be better if Writers would be implemented in a such way
that data could be streamed without seeking/updating. If that would be
inconvenient then raw_ostream could be replaced with raw_pwrite_stream
to have a possibility to seek back and update file headers.
This is assumed to be done later if necessary.

Note 3. Current FileOutputBuffer allows using a memory-mapped file.
The raw_fd_ostream (which could be used if data should be stored in the file)
does not allow us to use a memory-mapped file. Memory map functionality
could be implemented for raw_fd_ostream:

It is possible to add resize() method into raw_ostream.

class raw_ostream {
  void resize(uint64_t size);
}

That method, implemented for raw_fd_ostream, could create a memory-mapped file.
The streamed data would be written into that memory file then.
Thus we would be able to use memory-mapped files with raw_fd_ostream.
This is assumed to be done later if necessary.

Differential Revision: https://reviews.llvm.org/D91028
The file was modifiedllvm/tools/llvm-objcopy/COFF/Writer.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/wasm/Writer.cpp
The file was modifiedllvm/tools/llvm-objcopy/COFF/COFFObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/COFF/COFFObjcopy.h
The file was modifiedllvm/tools/llvm-objcopy/COFF/Writer.h
The file was modifiedllvm/tools/llvm-objcopy/ELF/ELFObjcopy.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.h
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/wasm/WasmObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/ELF/Object.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.h
The file was modifiedllvm/tools/llvm-objcopy/CMakeLists.txt
The file was modifiedllvm/include/llvm/Object/MachOUniversalWriter.h
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.h
The file was modifiedllvm/tools/llvm-objcopy/COFF/Reader.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/tools/llvm-objcopy/wasm/Writer.h
The file was removedllvm/tools/llvm-objcopy/Buffer.cpp
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOWriter.h
The file was modifiedllvm/lib/Object/MachOUniversalWriter.cpp
The file was removedllvm/tools/llvm-objcopy/Buffer.h
The file was modifiedllvm/tools/llvm-objcopy/wasm/WasmObjcopy.h
Commit 6a291ed0f069a1886705bd4a814dad2e8eb8307c by csigg
[mlir] Remove unnecessary copying of pass options

I missed a comment in D98279 that you don't need to copy pass options.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D98366
The file was modifiedmlir/lib/Dialect/GPU/Transforms/SerializeToBlob.cpp
Commit bf58d6a1f92244c797a280d318a56d7d3fc4a704 by georgakoudis1
Replace func name with regex in update_cc_test_checks

The patch adds an argument to update_cc_test_checks for replacing a function name matching a regex. This functionality is needed to match generated function signatures that include file hashes. Example:

The function signature for the following function:

`__omp_offloading_50_b84c41e__Z9ftemplateIiET_i_l30_worker`

with `--replace-function-regex "__omp_offloading_[0-9]+_[a-z0-9]+_(.*)"` will become:

`CHECK-LABEL: @{{__omp_offloading_[0-9]+_[a-z0-9]+__Z9ftemplateIiET_i_l30_worker}}(`

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D97107
The file was addedclang/test/utils/update_cc_test_checks/generated-funcs-regex.test
The file was modifiedllvm/utils/UpdateTestChecks/common.py
The file was addedclang/test/utils/update_cc_test_checks/Inputs/generated-funcs-regex.c
The file was addedclang/test/utils/update_cc_test_checks/Inputs/generated-funcs-regex.c.expected
Commit 0de8aeae7249d314f25b5188c91b04b9a24003ad by flo
[VPlan] Support to widen select intructions in VPlan native path

Add support to widen select instructions in VPlan native path by using a correct recipe when such instructions are encountered. This is already used by inner loop vectorizer.

Previously select instructions get handled by the wrong recipe and resulted in unreachable instruction errors like this one: https://bugs.llvm.org/show_bug.cgi?id=48139.

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D97136
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
The file was addedllvm/test/Transforms/LoopVectorize/vplan-widen-select-instruction.ll
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanTestBase.h
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.h
Commit a02f5068767a3aa40987ef41f285649effa9c401 by david.green
[AArch64] Extend vecreduce -> udot handling to v8i8

https://reviews.llvm.org/D88577 added v16i8 vecreduce to udot/sdot
lowering. This extends that to v8i8 too, generalizing the pattern to
handle the extra types.

Differential Revision: https://reviews.llvm.org/D97279
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/neon-dotreduce.ll
Commit 49942c6d4a0aee740381f754a6a0e6f7e1bfed43 by qcolombet
[NFC] Fix a compiler warning

Fix a warning caused by -Wrange-loop-analysis

Patch by Xiaoqing Wu <xiaoqing_wu@apple.com>

Differential Revision: https://reviews.llvm.org/D98297
The file was modifiedllvm/include/llvm/ADT/SetOperations.h
Commit 361e9bf97ed793b66a65788932f25f7b6a02f862 by arnamoy10
[flang][driver] Formatting OpenMP sema check as per clang-format
The file was modifiedflang/lib/Semantics/check-omp-structure.cpp
Commit ac29c35207a506eedaaea8a4196b83facbf978da by Vedant Kumar
[lldb/Platform] Skip very slow xcrun queries for simulator platforms, NFC

GetXcodeSDK() consistently takes over 1 second to complete if the
queried SDK is missing, because `xcrun` doesn't cache negative lookups.

Because there are multiple simulator platforms, this can add 4+ seconds
to `lldb -b some_object_file.o`.

To work around this, skip the call to GetXcodeSDK() when setting up
simulator platforms if the specified arch doesn't have what looks like a
simulator triple.

Some other ways to fix this:
- Fix caching in xcrun (rdar://74882205)
- Test for arch compat before calling SomePlatform::CreateInstance() (much
  larger change)

Differential Revision: https://reviews.llvm.org/D98272
The file was modifiedlldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp
Commit daf36998694fd9a0beaf7e1659ae41a6d1079107 by davelee.com
[lldb] Ignore linkage diagnostic for LLDBSwigPythonBreakpointCallbackFunction (NFC)

Ignore `-Wreturn-type-c-linkage` diagnostics for `LLDBSwigPythonBreakpointCallbackFunction`.

The function is defined in `python-wrapper.swig` which uses `extern "C" { ... }` blocks.
The declaration of this function in `ScriptInterpreterPython.cpp` already uses these
same pragmas to silence the warning there.

This prevents `-Werror` builds from failing.

Differential Revision: https://reviews.llvm.org/D98368
The file was modifiedlldb/bindings/python/python-wrapper.swig
Commit d75c9e61a5a3a50203f68f7e329c9c670d267a98 by kuterdinel
[Attributor] Attributor call site specific AAValueConstantRange

This patch makes uses of the context bridges introduced in D83299 to make
AAValueConstantRange call site specific.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D83744
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was addedllvm/test/Transforms/Attributor/cb_range_enabled.ll
The file was addedllvm/test/Transforms/Attributor/cb_range_disabled.ll
The file was modifiedllvm/lib/Transforms/IPO/AttributorAttributes.cpp
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/unittests/Transforms/IPO/AttributorTest.cpp
Commit 1a808286eff01fde07794b2c94138a96e7099561 by david.green
[AArch64] Extend vecreduce -> udot handling to mla reductions

We previously have lowering for:
  vecreduce.add(zext(X)) to vecreduce.add(UDOT(zero, X, one))
This extends that to also handle:
  vecreduce.add(mul(zext(X), zext(Y)) to vecreduce.add(UDOT(zero, X, Y))
It extends the existing code to optionally handle a mul with equal
extends.

Differential Revision: https://reviews.llvm.org/D97280
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/neon-dotreduce.ll
Commit be646e31487b22f7f546fe91a978283581cc6dbb by daltenty
llvm-lto: default Relocation Model should be selected by the TargetMachine.

Right now, the createTargetMachine function in LTOBackend.cpp (used by llvm-lto, and other components) selects the default Relocation Model when none is specified in the module.
Other components (such as opt and llc) that construct a TargetMachine delegate the decision on the default value to the polymorphic TargetMachine's constructor.

This commit aligns llvm-lto with other components.

Reviewed By: daltenty, fhahn

Differential Revision: https://reviews.llvm.org/D97507
The file was addedtest/tools/llvm-lto/aix.ll
The file was modifiedllvm/lib/LTO/LTOBackend.cpp
Commit 6976255faffb03da3f6689f3be5fbe4361c30dfb by 1894981+hiraditya
Add noreturn attribute to non-returning functions

Differential Revision: https://reviews.llvm.org/D97308
The file was modifiedlibcxx/include/__split_buffer
Commit 08d33aa6807d998ef777a4e6d56b629878d0e73b by jan.kratochvil
[nfc] [lldb] Remove variable ranges_base in DWARFUnit::AddUnitDIE
The file was modifiedlldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
Commit d627a27d264b47eda3f15f086ff419dfe053ebf7 by steveire
[AST] Add generator for source location introspection

Generate a json file containing descriptions of AST classes and their
public accessors which return SourceLocation or SourceRange.

Use the JSON file to generate a C++ API and implementation for accessing
the source locations and method names for accessing them for a given AST
node.

This new API can be used to implement 'srcloc' output in clang-query:

  http://ce.steveire.com/z/m_kTIo

In this first version of this feature, only the accessors for Stmt
classes are generated, not Decls, TypeLocs etc.  Those can be added
after this change is reviewed, as this change is mostly about
infrastructure of these code generators.

Differential Revision: https://reviews.llvm.org/D93164
The file was addedclang/lib/Tooling/DumpTool/ASTSrcLocProcessor.h
The file was addedclang/lib/Tooling/DumpTool/CMakeLists.txt
The file was addedclang/unittests/Introspection/IntrospectionTest.cpp
The file was modifiedclang/lib/Tooling/CMakeLists.txt
The file was addedclang/lib/Tooling/DumpTool/ASTSrcLocProcessor.cpp
The file was addedclang/lib/Tooling/DumpTool/ClangSrcLocDump.cpp
The file was addedclang/unittests/Introspection/CMakeLists.txt
The file was addedclang/include/clang/Tooling/NodeIntrospection.h
The file was addedclang/lib/Tooling/DumpTool/APIData.h
The file was addedclang/lib/Tooling/NodeIntrospection.cpp
The file was modifiedclang/unittests/CMakeLists.txt
The file was addedclang/lib/Tooling/DumpTool/generate_cxx_src_locs.py
Commit 683e89722aa0fd9afd41fb0799e46e1b28db1de6 by davelee.com
Revert "[cmake] Enable -Werror=return-type"

This reverts commit ce94a161651d0edd313d0fa65571eb53d3a34d13.
The file was modifiedllvm/cmake/modules/HandleLLVMOptions.cmake
Commit c0891706bc9faf428dfde7feddd8203efc43e118 by ezhulenev
[mlir] Add polynomial approximation for math::Log2

```
name                     old cpu/op  new cpu/op  delta
BM_mlir_Log2_f32/10       134ns ±15%    45ns ± 4%  -66.39%  (p=0.000 n=20+17)
BM_mlir_Log2_f32/100     1.03µs ±16%  0.12µs ±10%  -88.78%  (p=0.000 n=20+18)
BM_mlir_Log2_f32/1k      10.3µs ±16%   0.7µs ± 5%  -93.24%  (p=0.000 n=20+17)
BM_mlir_Log2_f32/10k      104µs ±15%     7µs ±14%  -93.25%  (p=0.000 n=20+20)
BM_eigen_s_Log2_f32/10   95.3ns ±17%  90.9ns ± 6%     ~     (p=0.228 n=20+18)
BM_eigen_s_Log2_f32/100   907ns ± 3%   911ns ± 6%     ~     (p=0.539 n=16+20)
BM_eigen_s_Log2_f32/1k   9.88µs ± 4%  9.85µs ± 3%     ~     (p=0.790 n=16+17)
BM_eigen_s_Log2_f32/10k   105µs ±10%   110µs ±16%     ~     (p=0.459 n=16+20)
BM_eigen_v_Log2_f32/10   32.5ns ±31%  33.9ns ±14%   +4.31%  (p=0.028 n=17+20)
BM_eigen_v_Log2_f32/100   176ns ± 8%   180ns ± 7%   +2.19%  (p=0.045 n=16+17)
BM_eigen_v_Log2_f32/1k   1.44µs ± 4%  1.50µs ± 9%   +3.91%  (p=0.001 n=16+17)
BM_eigen_v_Log2_f32/10k  14.5µs ±10%  15.0µs ± 8%   +3.92%  (p=0.002 n=16+19)
```

Reviewed By: ezhulenev

Differential Revision: https://reviews.llvm.org/D98282
The file was modifiedmlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
The file was modifiedmlir/test/Dialect/Math/polynomial-approximation.mlir
The file was modifiedmlir/test/mlir-cpu-runner/math_polynomial_approx.mlir
Commit a89ac0dd185d72607d4ee1356467fffc48711c9a by zoecarver
Update __is_unsigned builtin to match the Standard.

Updates __is_unsigned to have the same behavior as the standard
specifies. This is in line with 511dbd8, which applied the same change
to __is_signed.

Refs D67897.

Differential Revision: https://reviews.llvm.org/D98104
The file was modifiedclang/test/SemaCXX/type-traits.cpp
The file was modifiedclang/docs/LanguageExtensions.rst
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
Commit ecf68972fd020cee80c5503bbe0f2028a184c8f3 by georgakoudis1
Revert "Replace func name with regex in update_cc_test_checks"

This reverts commit bf58d6a1f92244c797a280d318a56d7d3fc4a704.

Breaks tests, fix
The file was removedclang/test/utils/update_cc_test_checks/generated-funcs-regex.test
The file was modifiedllvm/utils/UpdateTestChecks/common.py
The file was removedclang/test/utils/update_cc_test_checks/Inputs/generated-funcs-regex.c
The file was removedclang/test/utils/update_cc_test_checks/Inputs/generated-funcs-regex.c.expected
Commit 5c22e2bec008760cc7078d8d14382ef4762c5d54 by steveire
Workaround a -Wmisleading-indentation warning

Because the generated code is not formatted, it can cause warnings.
The file was modifiedclang/lib/Tooling/DumpTool/generate_cxx_src_locs.py
Commit b69db4a7ab2deea209d90e7c8bb86baa06be650c by rnk
Re-land "[PDB] Defer relocating .debug$S until commit time and parallelize it"

This reverts commit bacf9cf2c5cdec3567580e5030c4c82f42b3d745 and
reinstates commit 1a9bd5b81328adf0dd5a8b4f3ad5949463e66da3.

Reverting this commit did not appear to make the problem go away, so we
can go ahead and reland it.
The file was modifiedlld/COFF/Chunks.cpp
The file was modifiedlld/COFF/Chunks.h
The file was modifiedllvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp
The file was modifiedlld/COFF/PDB.cpp
The file was modifiedllvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h
The file was modifiedllvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp
Commit 774b707564e1eed8fec5b5874d0aa82628de0651 by steveire
Revert "Workaround a -Wmisleading-indentation warning"

This reverts commit 5c22e2bec008760cc7078d8d14382ef4762c5d54.
The file was modifiedclang/lib/Tooling/DumpTool/generate_cxx_src_locs.py
Commit 14050ddc4080beb7a9143340be37ec05890cd537 by steveire
Revert "[AST] Add generator for source location introspection"

This reverts commit d627a27d264b47eda3f15f086ff419dfe053ebf7.

This fails to link on Windows somehow.
The file was removedclang/lib/Tooling/DumpTool/APIData.h
The file was removedclang/lib/Tooling/DumpTool/ASTSrcLocProcessor.h
The file was removedclang/lib/Tooling/DumpTool/CMakeLists.txt
The file was removedclang/lib/Tooling/DumpTool/ASTSrcLocProcessor.cpp
The file was removedclang/lib/Tooling/NodeIntrospection.cpp
The file was modifiedclang/unittests/CMakeLists.txt
The file was removedclang/unittests/Introspection/IntrospectionTest.cpp
The file was removedclang/include/clang/Tooling/NodeIntrospection.h
The file was removedclang/lib/Tooling/DumpTool/ClangSrcLocDump.cpp
The file was removedclang/lib/Tooling/DumpTool/generate_cxx_src_locs.py
The file was removedclang/unittests/Introspection/CMakeLists.txt
The file was modifiedclang/lib/Tooling/CMakeLists.txt
Commit af4ae18319abbcae39ca6d5a8c2baaecef01dcfa by llvmgnsyncbot
[gn build] Port 4f16e177e104
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
Commit 70af0bf6fe462cc16a2e56657d20eeed126d41d0 by leonardchan
[clang][Driver] Expose -fexperimental-relative-c++-abi-vtables flag

Initially, this flag was meant to only be used through cc1 and not directly
through the clang driver. However, we accidentally ended up using this flag
as a driver flag already for selecting multilibs within the fuchsia toolchain.
We're currently in an awkward state where it's only accepted as a driver flag
when targeting Fuchsia, and all other instances it can only be added via
-Xclang. Since we're ready to use this in Fuchsia, we can just expose this to
the driver for simplicity.

Differential Revision: https://reviews.llvm.org/D98375
The file was addedclang/test/Driver/relative-vtables-flag.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
Commit 4e02eb8014c4dd8dd21071947525926bbe8046ef by riddleriver
[mlir] Optimize the implementation of RegionDCE

The current implementation has some inefficiencies that become noticeable when running on large modules. This revision optimizes the code, and updates some out-dated idioms with newer utilities. The main components of this optimization include:

* Add an overload of Block::eraseArguments that allows for O(N) erasure of disjoint arguments.
* Don't process entry block arguments given that we don't erase them at this point.
* Don't track individual operation results, given that we don't erase them. We can just track the parent operation.

Differential Revision: https://reviews.llvm.org/D98309
The file was modifiedmlir/lib/Transforms/Utils/RegionUtils.cpp
The file was modifiedmlir/include/mlir/IR/Block.h
The file was modifiedmlir/lib/IR/Block.cpp
Commit 134a179dee8716d6b79620b26af5a4bafed9b8ed by daniel_l_sanders
[mir] Change 'undef' for MMO base addresses to 'unknown-address'

Differential Revision: https://reviews.llvm.org/D98100
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-global.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-fpext.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.buffer.load.ll
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/legalize-memop-scalar-32.mir
The file was modifiedllvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
The file was modifiedllvm/lib/CodeGen/MIRParser/MILexer.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir
The file was modifiedllvm/lib/CodeGen/MIRParser/MIParser.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-vector-vararg-fixed-caller.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-cc-abi.ll
The file was modifiedllvm/lib/CodeGen/MachineOperand.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
The file was modifiedllvm/test/CodeGen/PowerPC/aix-vec-arg-spills-mir.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extract-vector-elt.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-fptrunc.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-load.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-zextload-constant-32bit.mir
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/legalize-undef.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-constant-32bit.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.buffer.load.ll
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant-32bit.mir
The file was modifiedllvm/test/CodeGen/MIR/AArch64/base-memoperands.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-zextload-global.mir
The file was modifiedllvm/lib/CodeGen/MIRParser/MILexer.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-insert-vector-elt.mir
The file was modifiedllvm/test/CodeGen/ARM/GlobalISel/arm-legalize-load-store.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-split-scalar-load-metadata.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store.mir
Commit 8b7d3bed0f7362ac7a6b2d29e865ffe2825b73f4 by ruiling.song
[ValueMapper] Add debug output for metadata remapping

This is useful for debugging which pointers are updated during remapping
process.

Differential Revision: https://reviews.llvm.org/D95775
The file was modifiedllvm/lib/Transforms/Utils/ValueMapper.cpp
Commit 9e82027db8b7ce3a941e8f9b20732753a40318e2 by gbalats
[dfsan] Update atomics.ll test

Remove hard-coded shadow width references and remove irrelevant instructions.

Reviewed By: stephan.yichao.zhao

Differential Revision: https://reviews.llvm.org/D98376
The file was modifiedllvm/test/Instrumentation/DataFlowSanitizer/atomics.ll
Commit 66340846b3ed2e263a8505a860d4f42268549389 by ruiling.song
[AMDGPU] Always create Stack Object for reserved VGPR

As we may overwrite inactive lanes of a caller-save-vgpr, we should
always save/restore the reserved vgpr for sgpr spill.

Reviewed by: arsenm

Differential Revision: https://reviews.llvm.org/D98319
The file was modifiedllvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/stack-realign.ll
Commit 8652c3e1a3731052c74c82fe831773fc40b7b17e by aqjune
[InstSimplify] Pass SimplifyQuery to computePointerICmp (NFC)
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
Commit 64d2c326b7f01942f0179fb797070e5cefbba303 by vyng
[llvm] Fix thinko in getVendorSignature(), where expected values of  ECX and EDX were flipped for the AMD case.

Follow up to D97504

Differential Revision: https://reviews.llvm.org/D98322
The file was modifiedllvm/lib/Support/Host.cpp
Commit d6a0560bf258f95f8960f35657a454f26dda5ba3 by zakk.chen
[Clang][RISCV] Add custom TableGen backend for riscv-vector intrinsics.

Demonstrate how to generate vadd/vfadd intrinsic functions

1. add -gen-riscv-vector-builtins for clang builtins.
2. add -gen-riscv-vector-builtin-codegen for clang codegen.
3. add -gen-riscv-vector-header for riscv_vector.h. It also generates
ifdef directives with extension checking, base on D94403.
4. add -gen-riscv-vector-generic-header for riscv_vector_generic.h.
Generate overloading version Header for generic api.
https://github.com/riscv/rvv-intrinsic-doc/blob/master/rvv-intrinsic-rfc.md#c11-generic-interface
5. update tblgen doc for riscv related options.

riscv_vector.td also defines some unused type transformers for vadd,
because I