SuccessChanges

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

Summary

  1. [AArch64][SVE] Add SVE2 intrinsics for bit permutation & table lookup (details)
  2. tsan: fix pthread_detach with called_from_lib suppressions (details)
  3. Revert "[compiler-rt] Add a critical section when flushing gcov counters" (details)
  4. [gn build] (manually) merge e058667a2e01 (details)
  5. [clangd] Bump index version number. (details)
  6. [clang][Tooling] Add a way to tokenize a FileRange (details)
  7. [OpenMP] Fix the test by generating output file in temporary directory (details)
  8. [gn build] (manually) port 2f6cc21f44e (details)
  9. [Assembler] Allow assembling empty index with non-zero flags (details)
  10. [gn build] re-"gn format" all gn files (details)
  11. [OpenCL] Add atomic type builtins (details)
  12. [mlir][Linalg] NFC - Refactor LinalgStructuredOps towards "named" Linalg ops (details)
  13. AMDGPU/SIInsertSkips: Fix the determination of whether early-exit-after-kill is possible (details)
  14. AMDGPU: Fix some more incorrect check lines (details)
  15. [libTooling] Add function to determine associated text of a declaration. (details)
  16. Quick fix for bot failure on "AMDGPU/SIInsertSkips: Fix the determination of whether early-exit-after-kill is possible" (details)
  17. Put microsoft template parameter shadow warning behind separate flag (PR44794) (details)
  18. [AIX] Remove whitelist checking for ExternalSymbolSDNodes (details)
  19. [ARM,MVE] Add predicated intrinsics for many unary functions. (details)
  20. Full fix for "AMDGPU/SIInsertSkips: Fix the determination of whether early-exit-after-kill is possible" (hopefully) (details)
  21. [clangd] use printQualifiedName to skip the inlinenamespace qualifiers. (details)
  22. [clang-format] Special handling of spaces for C# code (details)
  23. Recommit "[DWARFDebugLine] Avoid dumping prologue members we did not parse" (details)
  24. [DAG] visitRotate - modulo non-uniform constant rotation amounts (details)
  25. Add unit tests for RangeDataVector::FindEntryIndexesThatContain (details)
  26. [AArch64] add tests for fake fneg; NFC (details)
  27. Add _LIBCPP_BUILTIN_CONSTANT_P support. (details)
  28. Introduce DWARFDataExtractor::getInitialLength (details)
  29. [gn build] Port 3c36d8dad57 (details)
  30. [DAGCombiner] avoid narrowing fake fneg vector op (details)
  31. [clangd] Clean-up XRefs.cpp from Lexer usages and unnecessary SourceLoc transformations (details)
  32. [ELF] --orphan-handling=: don't warn/error for unused synthesized sections (details)
  33. [llvm-objcopy][test] Improve empty section tests (details)
  34. Avoid SmallString.h include in MD5.h, NFC (details)
  35. [libc] Fix build when -DBUILD_SHARED_LIBS=On (details)
  36. Use virtual functions in ParsedAttrInfo instead of function pointers (details)
  37. [PowerPC][NFC] Convert grep usage to FileCheck in lit test. (details)
  38. [compiler-rt] Build all alias in builtin as private external on Darwin (details)
  39. [mlir][spirv] NFC: move folders and canonicalizers in a separate file (details)
  40. Devirtualize a call on alloca without waiting for post inline cleanup and next (details)
  41. [libcxx] Fix _LIBCPP_HAS_THREAD_API_EXTERNAL build (details)
  42. [TTI] Let getOperationCost assume that Freeze is free (details)
  43. [SDAG] Add SDNode::values() = make_range(values_begin(), values_end()) (details)
  44. [lldb/test] Skip running a test under ASan, it intentionally double-frees (details)
  45. Fix buildbots after recent GSYM commit. (details)
  46. [ELF] --orphan-handling=: don't warn/error for input SHT_REL[A] retained by --emit-relocs (details)
  47. Remove unneeded Compiler.h and DataTypes.h includes, NFC (details)
  48. Inline basic_string::erase for fastpath where __n == npos (details)
  49. [Hexagon] Improve casting of boolean HVX vectors to scalars (details)
  50. Fix LLP64 detection in SwapByteOrder.h (details)
  51. [InstCombine] Remove trivially empty ranges from end (details)
  52. [AVR] Don't adjust addresses by 2 for absolute values (details)
  53. [AVR] Fix private label prefix (details)
  54. [CVP] Add test for cmp of local phi; NFC (details)
  55. [InstCombine] Simplify DCE code; NFC (details)
  56. [TSan] Add CMake check for minimal SDK requirements on Darwin (details)
  57. [CVP] Simplify cmp of local phi node (details)
  58. [SimpleLoopUnswitch] Remove unnecessary include; NFC (details)
  59. [clang] fix error detection in consteval calls (details)
  60. [mlir][spirv] Add some folders for spv.LogicalAnd/spv.LogicalOr (details)
  61. [VectorCombine] add a debug flag to skip all transforms (details)
  62. [ms] Rename ParsingInlineAsm functions/variables to reflect MS-specificity. (details)
  63. [dsymutil] Avoid copying swiftinterfaces from the SDK into the dsym bundle (details)
  64. Fix for the test failues introduced in https://reviews.llvm.org/D74704. (details)
  65. [libc] Fix typo of namespace in round implementation. (details)
  66. [scudo][standalone] Various improvements wrt RSS (details)
  67. [mlir][spirv] Refactoring to avoid calling the same function twice (details)
  68. [llvm-objcopy] Enable --discard-all for MachO (details)
  69. [MC] Pull out a relaxFragment helper [NFC] (details)
  70. Update the ARC docs for non-trivial ownership in structs. (details)
  71. [DebugInfo][NFC] Remove handler with ErrorPolicy from DWARFContext. (details)
  72. [ASTMatchers] HasNameMatcher handles `extern "C"` (details)
  73. [AArch64][GlobalISel] Fixup <32b heterogeneous regbanks of G_PHIs just before selection. (details)
  74. [ObjectFileMachO] Fix a build error on embedded. (details)
  75. [X86] Add proper MachinePointerInfo to the loads/stores created for moving data between SSE and X87 in X86DAGToDAGISel::PreprocessISelDAG (details)
  76. [X86] Use correct MachineMemOperand for stack load in LowerFLT_ROUNDS_ (details)
  77. [X86] Use proper alignment for stack temporary and correct MachinePointerInfo for stack accesses in LowerUINT_TO_FP. (details)
  78. [X86] Query constant pool object alignment instead of hardcoding. (details)
  79. Visit previously unreachable nodes in the debug info metadata verifier. (details)
  80. Disable memory leak checking in a test to work around a bot failure (details)
  81. PR44978: Accept as an extension some cases where destructor name lookup (details)
  82. [libc++] Temporarily disable availability markup for the C++20 Synchronization library (details)
  83. Revert "[libc++] Do not set the `availability=XXX` feature when not testing against a system libc++" (details)
  84. [X86] Explicitly pass Pointer, MachinePointerInfo and Alignment to BuildFILD. (details)
  85. [X86] Explicitly pass Destination VT and debug location to BuildFILD. NFC (details)
  86. [libc++] Workaround unused variable warning in test (details)
  87. [X86] Add proper MachinePointerInfo to stack store created in LowerWin64_i128OP. (details)
  88. Cost Annotation Writer for InlineCost (details)
  89. [ELF][test] Rename SHF_LINK_ORDER related "metadata" to "linkorder" (details)
  90. [X86] Add test cases showing incorrect setting of nofpexcept flag due to CSE occuring during SelectionDAG creation. (details)
  91. [docs][LoopTerminology] Add Loop Simplify Form description. (details)
  92. GlobalISel: Cleanup code with MachineIRBuilder features (details)
  93. AMDGPU/GlobalISel: Add missing G_[US]ADDE/G_[US]SUBE tests (details)
  94. GlobalISel: Fix lowering for G_UADDE/G_USUBE (details)
  95. AMDGPU/GlobalISel: Add missing test for G_UMULH (details)
  96. [LoopVectorize] Fix cost for calls to functions that have vector versions (details)
  97. Fix buildbot break after c46b85aaf4d4 (details)
  98. Some fixes for open breaks on MacOS and UBSan (details)
  99. [libc] Add an optional `NAME` argument to `add_entrypoint_object` rule. (details)
  100. [MLIR] Add `take_back()` to STLExtras.h for completeness. (details)
  101. [clangd] Get rid of getBeginningOfIdentifier helper (details)
  102. [libc] Add CMake script to check host cpu features (details)
  103. [clangd] Get rid of lexer usage in AST.cpp (details)
  104. [AArch64] Peephole optimization: merge AND and TST instructions (details)
  105. [NFC][ARM] Add test case (details)
  106. [clang,ARM,MVE] Remove redundant #includes in test file. (details)
  107. [lldb] Skip TestWasm.py on sanitized builds until D75200 has landed (details)
  108. [ARM] Add CPSR as an implicit use of t2IT (details)
  109. [lldb][NFC] Fix several -Wdocumentation warnings (details)
  110. [DebugInfo][NFC] Move out lambdas from collectCallSiteParameters() (details)
  111. [DebugInfo] Describe call site values for chains of expression producing instrs (details)
  112. [DebugInfo][ARM] Fix noreg case when checkig if it is an addImm (details)
  113. Revert "[Hexagon] Improve casting of boolean HVX vectors to scalars" (details)
  114. [lldb] Show the actual error when 'watchpoint set expression' failed (details)
  115. [InstCombine] Fix confusing variable name. (details)
  116. [MC][ARM] Resolve some pcrel fixups at assembly time (PR44929) (details)
  117. [clang-format] Handle commas in [] in C# (details)
  118. [ARM] Fixup FP16 bitcasts (details)
  119. Require asserts for debuginline-cost-delta.ll test (details)
  120. [AVX] Cleanup check prefixes (details)
  121. [driver][darwin] Don't use -platform_version flag by default (PR44813) (details)
  122. [AArch64][SVE] Add intrinsics for first-faulting gather loads (details)
  123. [CallSiteInfo] Handle bundles when updating call site info (details)
  124. Revert "make -fmodules-codegen and -fmodules-debuginfo work also with PCHs" (details)
  125. [clang-format] Recognize C# named argument colons as a token type (details)
  126. [X86] createVariablePermute - handle case where recursive createVariablePermute call fails (details)
  127. [clangd][NFC] Don't query the index if the rename symbol is function (details)
  128. [mlir] fix wrong symbol order in AffineApplyNormalizer (details)
  129. Fix uninitialized variable warning. NFC. (details)
  130. [X86] LowerMSCATTER/MGATHER - reduce scope of MaskVT. NFCI. (details)
  131. Fix shadow variable warnings. NFC. (details)
  132. Fix shadow variable warning. NFC. (details)
  133. Add GPU lowerings for the different log ops. (details)
  134. Adding some documentation for __builtin_dump_struct. (details)
  135. [X86] Use Subtarget.useSoftFloat() in X86TargetLowering constructor (details)
  136. Fix cppcheck definition/declaration arg mismatch warnings. NFCI. (details)
  137. [AMDGPU][ConstantFolding] Fold llvm.amdgcn.fract intrinsic (details)
  138. Revert "Devirtualize a call on alloca without waiting for post inline cleanup and next" (details)
  139. [mlir] NFC - Move runner utils from mlir-cpu-runner to ExecutionEngine (details)
  140. [Hexagon] Do not use init_arrays by default (details)
  141. [SYCL] Driver option to select SYCL version (details)
  142. [DA] Delinearization of fixed-size multi-dimensional arrays (details)
  143. [Debuginfo][NFC] Unify error reporting routines inside DebugInfoDWARF. (details)
  144. Revert "[ARM] Add CPSR as an implicit use of t2IT" (details)
  145. [CostModel][X86] Improve extract/insert element costs (PR43605) (details)
  146. [InstCombine] Add PR14365 test cases + vector equivalents. (details)
  147. [WebAssembly] Add an `isWasm` target triple predicate. (details)
  148. [WebAssembly] Teach lld how to demangle "__main_argc_argv". (details)
  149. [WebAssembly] Mangle the argc/argv `main` as `__wasm_argc_argv`. (details)
  150. [Transforms][Debugify] Ignore PHI nodes when checking for DebugLocs (details)
  151. Revert "[SYCL] Driver option to select SYCL version" (details)
  152. Remove BinaryOperator::CreateFNeg (details)
  153. Add an attribute registry so plugins can add attributes (details)
  154. [InstCombine] DCE instructions earlier (details)
  155. [mlir] Hotfix - Rename MLIRRuntimeUtils to mlir_runtime_utils (details)
  156. [AMDGPU] improve fragile test for divergent branches (details)
  157. Forward declare special case lists (details)
  158. Forward declare FileEntry and DirectoryEntry in Module.h (details)
  159. [libc++] Mark more try_lock tests as possibly flaky. (details)
  160. [XCOFF] Don't emit non-external labels in the symbol table and handle MCSA_LGlobal (details)
  161. [clang-tidy] Store all ranges in clang::tooling::Diagnostic (details)
  162. [MLIR] add show-dialects option for mlir-opt (details)
  163. [MLIR][Loops] Expose transformations on loop.parallel in header (NFC). (details)
  164. [mlir] NFC - Split out RunnerUtils that don't require a C++ runtime (details)
  165. [LLDB] Fix AddressSanitizer failure in MemoryCache (details)
  166. [AArch64] regenerate complete test checks; NFC (details)
  167. [AArch64] add splat shuffle combine test; NFC (details)
  168. [x86] use instruction-level fast-math-flags to drive MachineCombiner (details)
Commit 9c859fc54d92ce6890c9b17addb411a4b577e165 by kerry.mclaughlin
[AArch64][SVE] Add SVE2 intrinsics for bit permutation & table lookup

Summary:
Implements the following intrinsics:
- @llvm.aarch64.sve.bdep.x
- @llvm.aarch64.sve.bext.x
- @llvm.aarch64.sve.bgrp.x
- @llvm.aarch64.sve.tbl2
- @llvm.aarch64.sve.tbx

The SelectTableSVE2 function in this patch is used to select the TBL2
intrinsic & ensures that the vector registers allocated are consecutive.

Reviewers: sdesmalen, andwar, dancgr, cameron.mcinally, efriedma, rengolin

Reviewed By: efriedma

Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, cfe-commits, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D74912
The file was addedllvm/test/CodeGen/AArch64/sve2-intrinsics-perm-tb.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was addedllvm/test/CodeGen/AArch64/sve2-intrinsics-bit-permutation.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
Commit 2dcbdba85406e498b885570c05e9573ddc3e4a81 by dvyukov
tsan: fix pthread_detach with called_from_lib suppressions

Generally we ignore interceptors coming from called_from_lib-suppressed libraries.
However, we must not ignore critical interceptors like e.g. pthread_create,
otherwise runtime will lost track of threads.
pthread_detach is one of these interceptors we should not ignore as it affects
thread states and behavior of pthread_join which we don't ignore as well.
Currently we can produce very obscure false positives. For more context see:
https://groups.google.com/forum/#!topic/thread-sanitizer/ecH2P0QUqPs
The added test captures this pattern.

While we are here rename ThreadTid to ThreadConsumeTid to make it clear that
it's not just a "getter", it resets user_id to 0. This lead to confusion recently.

Reviewed in https://reviews.llvm.org/D74828
The file was addedcompiler-rt/test/tsan/ignore_lib6.cpp.supp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl.h
The file was addedcompiler-rt/test/tsan/ignore_lib6.cpp
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl_thread.cpp
Commit 546918cbb4b2231c65cf91fceb738a59d03af7bf by hans
Revert "[compiler-rt] Add a critical section when flushing gcov counters"

See discussion on PR44792.

This reverts commit 02ce9d8ef5a84bc884de4105eae5f8736ef67634.

It also reverts the follow-up commits
8f46269f0 "[profile] Don't dump counters when forking and don't reset when calling exec** functions"
62c7d8402 "[profile] gcov_mutex must be static"
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedcompiler-rt/lib/profile/GCDAProfiling.c
The file was modifiedllvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
Commit 1b30b49436568c1b554d4d1c9b4b72fa3c2baf94 by thakis
[gn build] (manually) merge e058667a2e01
The file was modifiedllvm/utils/gn/secondary/clang/test/BUILD.gn
Commit 5560a78820ee7cecd1ad14f5a96889459dd36766 by hokein.wu
[clangd] Bump index version number.

Summary:
Though we don't have new changes to the index format, we have changes to
symbol collector, e.g. collect marcos, spelled references. Bump the
version to force background-index to rebuild.

Reviewers: kadircet

Reviewed By: kadircet

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D74127
The file was modifiedclang-tools-extra/clangd/index/Serialization.cpp
Commit 8c2cf499e6119be8f3f1a0d42c4bb7e45b0d615d by kadircet
[clang][Tooling] Add a way to tokenize a FileRange

Reviewers: sammccall

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D74962
The file was modifiedclang/include/clang/Tooling/Syntax/Tokens.h
The file was modifiedclang/unittests/Tooling/Syntax/TokensTest.cpp
The file was modifiedclang/lib/Tooling/Syntax/Tokens.cpp
Commit 6e34a9a838c150b968b05b76d545969d1ddeee90 by kbobyrev
[OpenMP] Fix the test by generating output file in temporary directory

Related Revison: D74925
Commit: 396b7253944e927878dff2f6321efabb3aaa0f45
The file was modifiedclang/test/OpenMP/PR44893.c
Commit ce75c3d2b62ca6272aa0dee39c8ed06a19336005 by thakis
[gn build] (manually) port 2f6cc21f44e
The file was modifiedllvm/utils/gn/secondary/llvm/lib/DebugInfo/GSYM/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
The file was addedllvm/utils/gn/secondary/llvm/tools/llvm-gsym/BUILD.gn
Commit 8f8756d465e4743c7cffebc26de682e864c94d57 by evgeny
[Assembler] Allow assembling empty index with non-zero flags

Differential revision: https://reviews.llvm.org/D74778
The file was modifiedllvm/tools/llvm-as/llvm-as.cpp
The file was addedllvm/test/Assembler/summary-flags2.ll
Commit cfbe889af58c758853e84f8fa7a7822e22f2a9e3 by thakis
[gn build] re-"gn format" all gn files
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/BinaryFormat/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/compiler-rt/lib/scudo/standalone/tests/BUILD.gn
Commit 319ea2dd9e32cd10415e1f5060e84febf7c606c6 by sven.vanhaastregt
[OpenCL] Add atomic type builtins

Add atomic types and builtins operating on those atomic types to
`-fdeclare-opencl-builtins`.  The _explicit variants are left out of
this commit, as these take enum arguments that are not yet supported
by the `-fdeclare-opencl-builtins` machinery.
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
Commit fcfd4fb686b83a5c8c7ba2c3bd4992ff24e83870 by ntv
[mlir][Linalg] NFC - Refactor LinalgStructuredOps towards "named" Linalg ops

This revision performs some basic refactoring towards more easily defining Linalg "named" ops. Such named ops form the backbone of operations that are ubiquitous in the ML application domain.
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgTraits.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt
The file was addedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
The file was modifiedmlir/lib/Dialect/Linalg/IR/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
Commit 0f1df4892538ccd9ecc23d68c65c7bd2b00f3f01 by nicolai.haehnle
AMDGPU/SIInsertSkips: Fix the determination of whether early-exit-after-kill is possible

Summary:
The old code made some incorrect assumptions about the order in which
basic blocks are laid out in a function. This could lead to incorrect
early-exits, especially when kills occurred inside of loops.

The new approach is to check whether the point where the conditional
kill occurs dominates all reachable code. If that is the case, there
cannot be any other threads in the wave that are waiting to rejoin
at a later point in the CFG, i.e. if exec=0 at that point, then all
threads really are dead and we can exit the wave.

Make some other minor cleanups to the pass while we're at it.

v2: preserve the dominator tree

Reviewers: arsenm, cdevadas, foad, critson

Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits

Tags: #llvm

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

Change-Id: Ia0d2b113ac944ad642d1c622b6da1b20aa1aabcc
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertSkips.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/skip-if-dead.ll
Commit 09a6b26753d739c577a92ef715c0bcedd3dc3c0d by jay.foad
AMDGPU: Fix some more incorrect check lines
The file was modifiedllvm/test/CodeGen/AMDGPU/global-saddr.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/lds-bounds.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/gfx10-vop-literal.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/flat-load-clustering.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/bitcast-v4f16-v4i16.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/constant-fold-imm-immreg.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/waitcnt-preexisting.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/wave32.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/v_cndmask.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/kernel-args.ll
Commit 38b4516de8a4a791d17085d37f95e3cc15c359f9 by yitzhakm
[libTooling] Add function to determine associated text of a declaration.

Summary:
Second attempt -- the first was reverted in commit 0e480b39c66143ad142f9a30d8d40e49d7d7b0ce, because of test breakages. This revision fixes the cause of the test breakages.

Original description follows:
This patch adds `getAssociatedRange` which, for a given decl, computes preceding
and trailing text that would conceptually be associated with the decl by the
reader. This includes comments, whitespace, and separators like ';'.

Reviewers: gribozavr

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D72153
The file was modifiedclang/lib/Tooling/Transformer/SourceCode.cpp
The file was modifiedclang/unittests/Tooling/SourceCodeTest.cpp
The file was modifiedclang/include/clang/Tooling/Transformer/SourceCode.h
Commit 0aec4b418ebc9490d6fefbe4d18dee0aeeced2ed by nicolai.haehnle
Quick fix for bot failure on "AMDGPU/SIInsertSkips: Fix the determination of whether early-exit-after-kill is possible"

Apparently the dominator tree update is incorrect, will investigate.

Change-Id: Ie76f8d11b22a552af1f098c893773f3d85e02d4f
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertSkips.cpp
Commit 41a6612ea8afc5254e4de3aca55628d37f0be433 by hans
Put microsoft template parameter shadow warning behind separate flag (PR44794)

Differential revision: https://reviews.llvm.org/D75121
The file was addedclang/test/SemaCXX/microsoft-template-shadow.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
Commit e7375e993248ff39e664caeea9b8a0c8b0e489b5 by Xiangling.Liao
[AIX] Remove whitelist checking for ExternalSymbolSDNodes

Allow all ExternalSymbolSDNode on AIX, and rely on the linker error to find
symbols which we don't have definitions from any library/compiler-rt.

Differential Revision: https://reviews.llvm.org/D75075
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-external-sym-sdnode-lowering.ll
Commit 9eb3cc10b2c6f78ccf033cb264113fc904651cd0 by simon.tatham
[ARM,MVE] Add predicated intrinsics for many unary functions.

Summary:
This commit adds the predicated MVE intrinsics for the same set of
unary operations that I added in their unpredicated forms in

* D74333 (vrint)
* D74334 (vrev)
* D74335 (vclz, vcls)
* D74336 (vmovl)
* D74337 (vmovn)

but since the predicated versions are a lot more similar to each
other, I've kept them all together in a single big patch. Everything
here is done in the standard way we've been doing other predicated
operations: an IR intrinsic called `@llvm.arm.mve.foo.predicated` and
some isel rules that match that alongside whatever they accept for the
unpredicated version of the same instruction.

In order to write the isel rules conveniently, I've refactored the
existing isel rules for the affected instructions into multiclasses
parametrised by a vector-type class, in the usual way. All those
refactorings are intended to leave the existing isel rules unchanged:
the only difference should be that new ones for the predicated
intrinsics are introduced.

The only tiny infrastructure change I needed in this commit was to
change the implementation of `IntrinsicMX` in `arm_mve_defs.td` so
that the records it defines are anonymous rather than named (and use
`NameOverride` to set the output intrinsic name), which allows me to
call it twice in two multiclasses with the same `NAME` without a
tablegen-time error.

Reviewers: dmgreen, MarkMurrayARM, miyuki, ostannard

Reviewed By: MarkMurrayARM

Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D75165
The file was addedllvm/test/CodeGen/Thumb2/mve-intrinsics/absneg-predicated.ll
The file was modifiedclang/include/clang/Basic/arm_mve_defs.td
The file was addedllvm/test/CodeGen/Thumb2/mve-intrinsics/vcvt-fp-int.ll
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/vmovn.c
The file was modifiedllvm/test/CodeGen/Thumb2/mve-intrinsics/vmovl.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-intrinsics/vrev.ll
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/vrev.c
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/vrnd.c
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/vcvt.c
The file was addedllvm/test/CodeGen/Thumb2/mve-intrinsics/vclzcls-predicated.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-intrinsics/vmovn.ll
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/absneg.c
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/vclz.c
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/vmovl.c
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was addedllvm/test/CodeGen/Thumb2/mve-intrinsics/vrint-predicated.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsARM.td
The file was modifiedclang/include/clang/Basic/arm_mve.td
Commit d6b05fccb709eb38b5b4b21901cb63825faee83e by nicolai.haehnle
Full fix for "AMDGPU/SIInsertSkips: Fix the determination of whether early-exit-after-kill is possible" (hopefully)

Properly preserve the MachineDominatorTree in all cases.

Change-Id: I54cf0c0a20934168a356920ba8ed5097a93c4131
The file was modifiedllvm/lib/Target/AMDGPU/SIInsertSkips.cpp
Commit 02323a3d5f9ea676865f78d603e68fa4b4b62608 by hokein.wu
[clangd] use printQualifiedName to skip the inlinenamespace qualifiers.

Summary:
symbols in libcpp are inside the inline namespace, printQualifierAsString will
print the inline namespace, which is unexpected.

Reviewers: kadircet

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75174
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit e8c5fea243ce30640ec9707fabdb635a49b3153c by jbcoe
[clang-format] Special handling of spaces for C# code

Summary:
Ensure that there are spaces around braces '{', '}'.

Ensure that there is a space before and after '=>'.

Ensure that 'async' and 'when' are considered as keywords when inserting spaces.

Reviewers: krasimir, MyDeveloperDay

Reviewed By: krasimir

Tags: #clang-format

Differential Revision: https://reviews.llvm.org/D75129
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/lib/Format/FormatToken.h
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
Commit ced45978a2a5b258421590214f46848e726144b8 by pavel
Recommit "[DWARFDebugLine] Avoid dumping prologue members we did not parse"

The patch was reverted in 69da40033 because of test failures on windows.
The problem was the unpredictable order of some of the error messages,
which I've tried to strenghten in that patch.

It turns out this is not possible to do in verbose mode because there
the data is being writted as it is being parsed. No amount of flushing
(as I've done in the non-verbose mode) will help that. Indeed, even
without any buffering the warning messages can end in the middle of a
line in non-verbose mode.

In this patch, I have reverted the changes which tested the relative
position of the warning message, except for the messages about
unsupported initial length, which are the ones I really wanted to test,
and which do come out reasonably.

The original commit message was:

This patch if motivated by D74560, specifically the subthread about what
to print upon encountering reserved initial length values.

If the debug_line prologue has an unsupported version, we skip parsing
the rest of the data. If we encounter an reserved initial length field,
we don't even parse the version. However, we still print out all members
(with value 0) in the dump function.

This patch introduces early exits in the Prologue::dump function so that
we print only the fields that were parsed successfully. In case of an
unsupported version, we skip printing all subsequent prologue fields --
because we don't even know if this version has those fields. In case of a
reserved unit length, we don't print anything -- if the very first field
of the prologue is invalid, it's hard to say if we even have a prologue
to begin with.

Note that the user will still be able to see the invalid/reserved
initial length value in the error message. I've modified (reordered)
debug_line_invalid.test to show that the error message comes straight
after the debug_line offset. I've also added some flush() calls to the
dumping code to ensure this is the case in all situations (without that,
the warnings could get out of sync if the output was not a terminal -- I
guess this is why std::iostreams have the tie() function).

Reviewers: jhenderson, ikudrin, dblaikie

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D75043
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
The file was modifiedllvm/test/tools/llvm-dwarfdump/X86/debug_line_invalid.test
Commit bbb0933e3d8c45916928ab2b8a13f69a30bfd34a by llvm-dev
[DAG] visitRotate - modulo non-uniform constant rotation amounts
The file was modifiedllvm/test/CodeGen/X86/vector-fshl-rot-256.ll
The file was modifiedllvm/test/CodeGen/X86/vector-rotate-256.ll
The file was modifiedllvm/test/CodeGen/X86/vector-fshr-rot-256.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 594130db0a56c3c3d889f750c5c971fac6f33594 by pavel
Add unit tests for RangeDataVector::FindEntryIndexesThatContain

Summary: This adds unit tests for FindEntryIndexesThatContain, this is done in preparation for changing the logic of the function.

Reviewers: labath, teemperor

Reviewed By: labath

Subscribers: arphaman, JDevlieghere, lldb-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D75180
The file was modifiedlldb/unittests/Utility/RangeMapTest.cpp
Commit 894ce940db5909cf43a428ee9cb4e99b74d9b58e by spatel
[AArch64] add tests for fake fneg; NFC

See comments in D73978 for background.
The file was modifiedllvm/test/CodeGen/AArch64/arm64-fp.ll
Commit 07eb82fc06cc41a64d136d046e6b30565c3e5579 by mvels
Add _LIBCPP_BUILTIN_CONSTANT_P support.

Summary:
This change adds the macros _LIBCPP_COMPILER_HAS_BUILTIN_CONSTANT and _LIBCPP_BUILTIN_CONSTANT_P to detect compile time constants, and optimze the code accordingly.

A planned usage example:
The implementation of basic_string::assign() can short-cut a compile time known short string assignent into a fast and compact inlined assignment:

```
basic_string::assign(const value_type* __s) {
  if (_LIBCPP_BUILTIN_CONSTANT_P(__s[0]) && length(__s) < __min_cap) {
    copy(pointer(), _s, length(__s) + 1);
    set_size(length(__s));
  } else {
    // delegate / tail call out of line implementation
  }
}
```

Subscribers: christof, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D73732
The file was modifiedlibcxx/include/__config
Commit 3c36d8dad57712f6616a197632e754541e71edf4 by pavel
Introduce DWARFDataExtractor::getInitialLength

Summary:
This patch introduces a function to house the code needed to do the
DWARF64 detection dance. The function decodes the initial length field
and returns it as a pair containing the actual length, and the DWARF
encoding.

This patch does _not_ attempt to handle the problem of detecting lengths
which extend past the size of the section, or cases when reads of a
single contribution accidentally escape beyond its specified length, but
I think it's useful in its own right.

Reviewers: dblaikie, jhenderson, ikudrin

Subscribers: hiraditya, probinson, aprantl, JDevlieghere, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D74560
The file was modifiedllvm/unittests/DebugInfo/DWARF/CMakeLists.txt
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFDataExtractor.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDataExtractor.cpp
The file was addedllvm/unittests/DebugInfo/DWARF/DWARFDataExtractorTest.cpp
Commit 299c3e13fbd256d96f66a4625944ac7ccbb9cc86 by llvmgnsyncbot
[gn build] Port 3c36d8dad57
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/DebugInfo/DWARF/BUILD.gn
Commit b3d0c798367d1dbf07d0357260b432571bff5c7d by spatel
[DAGCombiner] avoid narrowing fake fneg vector op

This may inhibit vector narrowing in general, but there's
already an inconsistency in the way that we deal with this
pattern as shown by the test diff.

We may want to add a dedicated function for narrowing fneg.
It's often folded into some other op, so moving it away from
other math ops may cause regressions that we would not see
for normal binops.

See D73978 for more details.
The file was modifiedllvm/test/CodeGen/AArch64/arm64-fp.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Commit 2011d14296eeaae911e898d11154ee5d1a5db1d6 by kadircet
[clangd] Clean-up XRefs.cpp from Lexer usages and unnecessary SourceLoc transformations

Summary:
Get rid of calls to lexer and unnecessary source location
transformations.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75166
The file was modifiedclang-tools-extra/clangd/unittests/XRefsTests.cpp
The file was modifiedclang-tools-extra/clangd/XRefs.cpp
Commit 423194098b88dfea86cca6f8e203e9d88f70abc9 by maskray
[ELF] --orphan-handling=: don't warn/error for unused synthesized sections

This makes --orphan-handling= less noisy.
This change also improves our compatibility with GNU ld.

GNU ld special cases .symtab, .strtab and .shstrtab . We need output section
descriptions for .symtab, .strtab and .shstrtab to suppress:

  <internal>:(.symtab) is being placed in '.symtab'
  <internal>:(.shstrtab) is being placed in '.shstrtab'
  <internal>:(.strtab) is being placed in '.strtab'

With --strip-all, .symtab and .strtab can be omitted (note, --strip-all is not compatible with --emit-relocs).

Reviewed By: nickdesaulniers

Differential Revision: https://reviews.llvm.org/D75149
The file was modifiedlld/ELF/LinkerScript.cpp
The file was modifiedlld/test/ELF/linkerscript/orphan-report.s
The file was modifiedlld/ELF/Writer.cpp
The file was modifiedlld/ELF/LinkerScript.h
Commit 6503aadcc6c96aecfd3489da5dc3887216948a47 by maskray
[llvm-objcopy][test] Improve empty section tests

empty-sections.test: add two tests adapted from @jhenderson's https://reviews.llvm.org/D74755#1882221
strip-non-alloc.test: improve. D74755 will change the attribution of an empty section.

They mostly test the behavior of Object.cpp:sectionWithinSegment : how we attribute sections to segments.
`ParentSegment` can affect some subtle layout decisions.

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D74879
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/strip-non-alloc.test
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/empty-section.test
Commit 465dca79b311115d173fd001afd403557d78c2bb by rnk
Avoid SmallString.h include in MD5.h, NFC

Saves 200 includes, which is mostly immaterial.
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.cpp
The file was modifiedllvm/tools/llvm-diff/DifferenceEngine.cpp
The file was modifiedllvm/lib/Support/MD5.cpp
The file was modifiedllvm/include/llvm/Support/MD5.h
Commit 805f5836d1bbd03dcc9de78881bd81dc8cb09cc4 by alexbrachetmialot
[libc] Fix build when -DBUILD_SHARED_LIBS=On

Reviewers: gchatelet, sivachandra

Reviewed By: gchatelet, sivachandra

Subscribers: libc-commits, mgorny, MaskRay, tschuett

Differential Revision: https://reviews.llvm.org/D75136
The file was modifiedlibc/utils/testutils/CMakeLists.txt
The file was modifiedlibc/utils/UnitTest/CMakeLists.txt
Commit 590dc8d02cd781b110a87b82476c3557cb5957c3 by john.brawn
Use virtual functions in ParsedAttrInfo instead of function pointers

This doesn't do anything on its own, but it's the first step towards
allowing plugins to define attributes. It does simplify the
ParsedAttrInfo generation in ClangAttrEmitter a little though.

Differential Revision: https://reviews.llvm.org/D31337
The file was modifiedclang/utils/TableGen/ClangAttrEmitter.cpp
The file was modifiedclang/lib/Sema/ParsedAttr.cpp
Commit 73c3b52676a1ec2418429665bd3724df4e695340 by sd.fertile
[PowerPC][NFC] Convert grep usage to FileCheck in lit test.
The file was modifiedllvm/test/CodeGen/PowerPC/vec_vrsave.ll
Commit 387c3f74fd8efdc0be464b0e1a8033cc1eeb739c by Steven Wu
[compiler-rt] Build all alias in builtin as private external on Darwin

Summary:
For builtin compiler-rt, it is built with visibility hidden by default
to avoid the client exporting symbols from libclang static library. The
compiler option -fvisibility=hidden doesn't work on the aliases in c files
because they are created with inline assembly. On Darwin platform,
thoses aliases are exported by default if they are reference by the client.

Fix the issue by adding ".private_extern" to all the aliases if the
library is built with visibility hidden.

rdar://problem/58960296

Reviewers: dexonsmith, arphaman, delcypher, kledzik

Reviewed By: delcypher

Subscribers: dberris, jkorous, ributzka, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D73577
The file was modifiedcompiler-rt/lib/builtins/int_lib.h
Commit 1e9321e97aba43e41ccd7ab2f1bef41d5bcf65af by antiagainst
[mlir][spirv] NFC: move folders and canonicalizers in a separate file

This gives us better file organization and faster compilation time
by avoid having a gigantic SPIRVOps.cpp file.
The file was modifiedmlir/lib/Dialect/SPIRV/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
The file was addedmlir/lib/Dialect/SPIRV/SPIRVCanonicalization.cpp
Commit 59fb9cde7a4a96fe8485a80d9010e4420ffdca82 by yamauchi
Devirtualize a call on alloca without waiting for post inline cleanup and next
DevirtSCCRepeatedPass iteration.  Needs ReviewPublic

This aims to fix a missed inlining case.

If there's a virtual call in the callee on an alloca (stack allocated object) in
the caller, and the callee is inlined into the caller, the post-inline cleanup
would devirtualize the virtual call, but if the next iteration of
DevirtSCCRepeatedPass doesn't happen (under the new pass manager), which is
based on a heuristic to determine whether to reiterate, we may miss inlining the
devirtualized call.

This enables inlining in clang/test/CodeGenCXX/member-function-pointer-calls.cpp.
The file was addedllvm/test/Transforms/Inline/devirtualize-4.ll
The file was modifiedclang/test/CodeGenCXX/member-function-pointer-calls.cpp
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
Commit 14aef5367d0dfc2ec10ffdbbc3fb8abbc530f4d1 by mikhail.maltsev
[libcxx] Fix _LIBCPP_HAS_THREAD_API_EXTERNAL build

Summary:
The definition of `__libcpp_timed_backoff_policy` and the declaration of
`__libcpp_thread_poll_with_backoff` must not be guarded by
  #if !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL)
because the definitions of `__libcpp_timed_backoff_policy::operator()`
and `__libcpp_thread_poll_with_backoff` aren't guarded by this macro
(and this is correct because these two functions are implemented in
terms of other libc++ functions and don't interact with the host
threading library).

Reviewers: ldionne, __simt__, EricWF, mclow.lists

Reviewed By: ldionne

Subscribers: dexonsmith, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D75191
The file was modifiedlibcxx/include/__threading_support
Commit 4f71252cf8430e60837e0e030c3d40db4c79eb99 by aqjune
[TTI] Let getOperationCost assume that Freeze is free
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
Commit fd7c2e24c1c2ae7d0e251a86cb026710c576eaac by kparzysz
[SDAG] Add SDNode::values() = make_range(values_begin(), values_end())

Also use it in a few places to simplify code a little bit.  NFC
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAGNodes.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/lib/Target/Mips/MipsSEISelLowering.cpp
Commit 7822c8c03e9fe8c857da21c4ccbe28396b43130d by Vedant Kumar
[lldb/test] Skip running a test under ASan, it intentionally double-frees
The file was modifiedlldb/test/API/functionalities/process_crash_info/TestProcessCrashInfo.py
Commit e4af56db27e5007ae6f6095a0ba0421211de9ba3 by gclayton
Fix buildbots after recent GSYM commit.

Added llvm-gsymutil to LLVM_TEST_DEPENDS.
The file was modifiedllvm/test/CMakeLists.txt
Commit 37c7f0d9456b3ff4a87829ad842823da6aa2401f by maskray
[ELF] --orphan-handling=: don't warn/error for input SHT_REL[A] retained by --emit-relocs

They are purposefully skipped by input section descriptions (rL295324).
Similarly, --orphan-handling= should not warn/error for them.
This behavior matches GNU ld.

Reviewed By: grimar

Differential Revision: https://reviews.llvm.org/D75151
The file was modifiedlld/test/ELF/linkerscript/emit-reloc.s
The file was modifiedlld/ELF/LinkerScript.cpp
Commit 34312ed24e17a0e8269611b954e489fa7759f115 by rnk
Remove unneeded Compiler.h and DataTypes.h includes, NFC
The file was modifiedlldb/source/Utility/Timer.cpp
The file was modifiedllvm/include/llvm/Support/SwapByteOrder.h
The file was modifiedllvm/include/llvm/Support/MathExtras.h
Commit d260ea7199bce566fb4229eac5cc4c5d4843c5f0 by mvels
Inline basic_string::erase for fastpath where __n == npos

Summary:
This change checks for the case where people want to erase a string to the end, i.e., __n == npos, and inlines the call if so.

This also demonstrates keeping the ABI intact for V1, but inlining the erase() method for unstable.

Reviewers: EricWF, mclow.lists, ldionne

Reviewed By: EricWF, ldionne

Subscribers: smeenai, dexonsmith, christof, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D73743
The file was modifiedlibcxx/include/__string
The file was modifiedlibcxx/include/string
Commit 7691790dfd1011d08f5468f63952d7690755aad4 by kparzysz
[Hexagon] Improve casting of boolean HVX vectors to scalars

- Mark memory access for bool vectors as disallowed in target lowering.
  This will prevent combining bitcasts of bool vectors with stores.
- Replace the actual bitcasting code with a faster version.
- Handle casting of v16i1 to i16.
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
The file was addedllvm/test/CodeGen/Hexagon/autohvx/isel-store-bitcast-v128i1.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/isel-hvx-pred-bitcast.ll
The file was modifiedllvm/test/CodeGen/Hexagon/hvx-bitcast-v64i1.ll
The file was modifiedllvm/test/CodeGen/Hexagon/store-vector-pred.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
Commit 30dae38349cbe293bee0705b313dc747e53afd49 by rnk
Fix LLP64 detection in SwapByteOrder.h

MSVC does not define __LONG_MAX__, so we were just getting lucky in this
conditional:
  #if __LONG_MAX__ == __INT_MAX__

Undefined identifiers evaluate to zero in preprocessor conditionals, so
this became true, which happens to work for MSVC platforms.

Instead, use this pattern and let the compiler constant fold:
  return sizeof(long) == sizeof(int) ? SwapByteOrder_32((uint32_t)C)
                                     : SwapByteOrder_64((uint64_t)C);
The file was modifiedllvm/include/llvm/Support/SwapByteOrder.h
Commit 56f7de5baae3ae9a746ac8f5a8e32cfcaf7b4a6b by nikita.ppv
[InstCombine] Remove trivially empty ranges from end

InstCombine removes pairs of start+end intrinsics that don't
have anything in between them. Currently this is done by starting
at the start intrinsic and scanning forwards. This patch changes
it to start at the end intrinsic and scan backwards.

The motivation here is as follows: When we process the start
intrinsic, we have not yet looked at the following instructions,
which may still get folded/removed. If they do, we will only be
able to remove the start/end pair on the next iteration. When we
process the end intrinsic, all the instructions before it have
already been visited, and we don't run into this problem.

Differential Revision: https://reviews.llvm.org/D75011
The file was modifiedllvm/test/Transforms/InstCombine/lifetime.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/vararg.ll
Commit 165f707f9d0fb227e30b9a57d8ceb27f55032f90 by aykevanlaethem
[AVR] Don't adjust addresses by 2 for absolute values

Adjusting by 2 breaks DWARF output. With this fix, programs start to
compile and produce valid DWARF output.

Differential Revision: https://reviews.llvm.org/D74213
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRAsmBackend.cpp
The file was addedllvm/test/MC/AVR/relocations-abs.s
Commit 6afc3de42f8f65dfa2e51b0e81e95ef6427be9ac by aykevanlaethem
[AVR] Fix private label prefix

This is a small pet peeve from me. This change makes sure the AVR backend uses
the correct private label prefix (.L) so that private labels are hidden in
avr-objdump.

Example code:

    define i8 @foo(i1 %cond) {
      br i1 %cond, label %then, label %else
    then:
      ret i8 3
    else:
      ret i8 5
    }

When compiling this:
  llc -march=avr -filetype=obj -o test.o test.ll
and then dumping it:
  avr-objdump -d test.o
You would previously get an ugly temporary label:

    00000000 <foo>:
       0:        81 70       andi       r24, 0x01    ; 1
       2:        80 30       cpi        r24, 0x00    ; 0
       4:        f9 f3       breq       .-2          ; 0x4 <foo+0x4>
       6:        83 e0       ldi        r24, 0x03    ; 3
       8:        08 95       ret

    0000000a <LBB0_2>:
       a:        85 e0       ldi        r24, 0x05    ; 5
       c:        08 95       ret

This patch fixes that, the output is now:

    00000000 <foo>:
       0:        81 70       andi       r24, 0x01    ; 1
       2:        80 30       cpi        r24, 0x00    ; 0
       4:        01 f0       breq       .+0          ; 0x6 <foo+0x6>
       6:        83 e0       ldi        r24, 0x03    ; 3
       8:        08 95       ret
       a:        85 e0       ldi        r24, 0x05    ; 5
       c:        08 95       ret

Note that as you can see the breq operand is different. However it is
still the same after linking:

       4:        11 f0       breq       .+4

Differential Revision: https://reviews.llvm.org/D75124
The file was modifiedllvm/test/CodeGen/AVR/cttz.ll
The file was modifiedllvm/test/CodeGen/AVR/integration/blink.ll
The file was modifiedllvm/test/CodeGen/AVR/rot.ll
The file was modifiedllvm/test/CodeGen/AVR/umul-with-overflow.ll
The file was modifiedllvm/test/CodeGen/AVR/smul-with-overflow.ll
The file was modifiedllvm/test/CodeGen/AVR/branch-relaxation-long.ll
The file was modifiedllvm/test/CodeGen/AVR/ctlz.ll
The file was modifiedllvm/test/CodeGen/AVR/branch-relaxation.ll
The file was modifiedllvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.cpp
Commit 3e440545dc4404f5fdc3edceba96d901aeaef923 by nikita.ppv
[CVP] Add test for cmp of local phi; NFC
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/icmp.ll
Commit 7da3b5e45c254c2366bd330fd4411f80011724ef by nikita.ppv
[InstCombine] Simplify DCE code; NFC

As pointed out on D75008, MadeIRChange is already set by
eraseInstFromFunction(), which also already does a debug print.
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit 3bf3996cd4ef2d4898b32d4cef52d6549bbe6820 by julian.lettner
[TSan] Add CMake check for minimal SDK requirements on Darwin

Fails with the following message in the error case:
```
CMake Error at /path/to/llvm-project/compiler-rt/lib/tsan/CMakeLists.txt:119 (message):
  Building the TSan runtime requires at least macOS SDK 10.12
```

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

Reviewed By: dmajor, delcypher

Differential Revision: https://reviews.llvm.org/D74501
The file was modifiedcompiler-rt/lib/tsan/CMakeLists.txt
Commit 9d9633fb700d2c18b67b253a59145a543c6a37c4 by nikita.ppv
[CVP] Simplify cmp of local phi node

CVP currently does not simplify cmps with instructions in the same
block, because LVI getPredicateAt() currently does not provide
much useful information for that case (D69686 would change that,
but is stuck.) However, if the instruction is a Phi node, then
LVI can compute the result of the predicate by threading it into
the predecessor blocks, which allows it simplify some conditions
that nothing else can handle. Relevant code:
https://github.com/llvm/llvm-project/blob/6d6a4590c5d4c7fc7445d72fe685f966b0a8cafb/llvm/lib/Analysis/LazyValueInfo.cpp#L1904-L1927

Differential Revision: https://reviews.llvm.org/D72169
The file was modifiedllvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/icmp.ll
Commit 00f54050f7e8d8ac0bab2a34affc98f6e4221dd4 by nikita.ppv
[SimpleLoopUnswitch] Remove unnecessary include; NFC
The file was modifiedllvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
Commit ca50f09db9f86eb5ac7aa0cb53c52637f2b7effa by tyker
[clang] fix error detection in consteval calls

Summary:
code like:
```
consteval int f() {
  int *A = new int(0);
  return *A;
}

int i1 = f();
```
currently doesn't generate any error.

Reviewers: rsmith

Reviewed By: rsmith

Differential Revision: https://reviews.llvm.org/D74418
The file was modifiedclang/test/SemaCXX/cxx2a-consteval.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
Commit 5bc6ff6455ec663a5da2681d057d0f848817b388 by antiagainst
[mlir][spirv] Add some folders for spv.LogicalAnd/spv.LogicalOr

This commit handles folding spv.LogicalAnd/spv.LogicalOr when
one of the operands is constant true/false.

Differential Revision: https://reviews.llvm.org/D75195
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVLogicalOps.td
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVCanonicalization.cpp
The file was modifiedmlir/test/Dialect/SPIRV/canonicalize.mlir
Commit 25c6544f32eec4fd563f5531cec1d42b5c9c3e13 by spatel
[VectorCombine] add a debug flag to skip all transforms

As suggested in D75145 -

I'm not sure why, but several passes have this kind of disable/enable flag
implemented at the pass manager level. But that means we have to duplicate
the flag for both pass managers and add code to check the flag every time
the pass appears in the pipeline.

We want a debug option to see if this pass is misbehaving regardless of the
pass managers, so just add a disablement check at the single point before
any transforms run.

Differential Revision: https://reviews.llvm.org/D75204
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
Commit 85b641c27aecee637d3f7ab25915f47438f55848 by epastor
[ms] Rename ParsingInlineAsm functions/variables to reflect MS-specificity.

Summary: ParsingInlineAsm was a misleading name. These values are only set for MS-style inline assembly.

Reviewed By: rnk

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D75198
The file was modifiedllvm/lib/MC/MCParser/AsmParser.cpp
The file was modifiedllvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
The file was modifiedllvm/include/llvm/MC/MCParser/MCAsmParser.h
The file was modifiedllvm/include/llvm/MC/MCParser/MCTargetAsmParser.h
The file was modifiedclang/lib/Parse/ParseStmtAsm.cpp
The file was modifiedllvm/lib/MC/MCParser/MasmParser.cpp
Commit 22cb36c86b80fb9148fb08b1d384cd84bb9548d5 by Adrian Prantl
[dsymutil] Avoid copying swiftinterfaces from the SDK into the dsym bundle

This patch fixes a bug that would cause dsymutil to collect
.swiftinterface files for the Swift stdlib and other SDK
modules. There is no advantage in copying these since they should be
loaded from the ones bundled with LLDB's embedded Swift compiler
instead and copying them will cause LLDB to recompile them from source
instead of loading their prebuilt cached counterparts in the SDK.

rdar://problem/57463247

Differential Revisions: https://reviews.llvm.org/D75196
The file was modifiedllvm/lib/DWARFLinker/DWARFLinkerCompileUnit.cpp
The file was modifiedllvm/test/tools/dsymutil/X86/swift-interface.test
The file was modifiedllvm/include/llvm/DWARFLinker/DWARFLinkerCompileUnit.h
The file was removedllvm/test/tools/dsymutil/Inputs/swift-interface.ll
The file was addedllvm/test/tools/dsymutil/Inputs/swift-interface.s
The file was modifiedllvm/lib/DWARFLinker/DWARFLinker.cpp
Commit d2cbaf1755ffa90300365c0d71400a5ee4ada3bd by leonardchan
Fix for the test failues introduced in https://reviews.llvm.org/D74704.
The file was modifiedclang/test/Driver/riscv32-toolchain-extra.c
The file was modifiedclang/test/Driver/riscv64-toolchain-extra.c
Commit 52073310e443a206653f8f4c841f42ed88ab549b by paulatoth
[libc] Fix typo of namespace in round implementation.

Summary: Fixed typos in namespace declarations and comments in the files under `src/math/round`.

Reviewers: sivachandra, abrachet

Reviewed By: sivachandra, abrachet

Subscribers: MaskRay, tschuett, libc-commits

Tags: #libc-project

Differential Revision: https://reviews.llvm.org/D75205
The file was modifiedlibc/src/math/round/round.h
The file was modifiedlibc/src/math/round/round.cpp
The file was modifiedlibc/src/math/round/round_redirector.cpp
Commit c753a306fd1ad4a7e5c61367225abce86ac29cd7 by kostyak
[scudo][standalone] Various improvements wrt RSS

Summary:
This patch includes several changes to reduce the overall footprint
of the allocator:
- for realloc'd chunks: only keep the same chunk when lowering the size
  if the delta is within a page worth of bytes;
- when draining a cache: drain the beginning, not the end; we add pointers
  at the end, so that meant we were draining the most recently added
  pointers;
- change the release code to account for an freed up last page: when
  scanning the pages, we were looking for pages fully covered by blocks;
  in the event of the last page, if it's only partially covered, we
  wouldn't mark it as releasable - even what follows the last chunk is
  all 0s. So now mark the rest of the page as releasable, and adapt the
  test;
- add a missing `setReleaseToOsIntervalMs` to the cacheless secondary;
- adjust the Android classes based on more captures thanks to pcc@'s
  tool.

Reviewers: pcc, cferris, hctim, eugenis

Subscribers: #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D75142
The file was modifiedcompiler-rt/lib/scudo/standalone/local_cache.h
The file was modifiedcompiler-rt/lib/scudo/standalone/primary32.h
The file was modifiedcompiler-rt/lib/scudo/standalone/secondary.h
The file was modifiedcompiler-rt/lib/scudo/standalone/size_class_map.h
The file was modifiedcompiler-rt/lib/scudo/standalone/combined.h
The file was modifiedcompiler-rt/lib/scudo/standalone/primary64.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/size_class_map_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/release_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/release.h
Commit 63779fb462d828d16b87f427a6490dded842ca15 by antiagainst
[mlir][spirv] Refactoring to avoid calling the same function twice
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVCanonicalization.cpp
Commit f79b81fbe2870ff631ad72a75f7e077b15b52a22 by alexshap
[llvm-objcopy] Enable --discard-all for MachO

In this diff we enable the option --discard-all for MachO.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D75104
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/discard-all.test
Commit eca4bfea3d380f56652a19bfe4746663601050cb by listmail
[MC] Pull out a relaxFragment helper [NFC]

Having this as it's own function helps to reduce indentation and allows use of return instead of wiring a value over the switch.  A lambda would have also worked, but with slightly deeper nesting.
The file was modifiedllvm/include/llvm/MC/MCAssembler.h
The file was modifiedllvm/lib/MC/MCAssembler.cpp
Commit 7848a3c8ab54570f5875e63606ff75b5736750b4 by rjmccall
Update the ARC docs for non-trivial ownership in structs.
The file was modifiedclang/docs/AutomaticReferenceCounting.rst
Commit 949134e2fefd34a38ed71de90dffe2300e2e1139 by a.v.lapshin
[DebugInfo][NFC] Remove handler with ErrorPolicy from DWARFContext.

Summary:
Current LLVM code base does not use error handler with ErrorPolicy.
This patch removes ErrorPolicy from DWARFContext.

This patch is extracted from the D74308.

Reviewers: jhenderson, dblaikie, grimar, aprantl, JDevlieghere

Reviewed By: grimar

Subscribers: hiraditya, llvm-commits

Tags: #llvm, #debug-info

Differential Revision: https://reviews.llvm.org/D75118
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
Commit 16cabf278fc8c14d415e677ce0bc40d46a6de30d by n.james93
[ASTMatchers] HasNameMatcher handles `extern "C"`

Summary: Fixes [[ https://bugs.llvm.org/show_bug.cgi?id=42193 | hasName AST matcher is confused by extern "C" in namespace. ]]

Reviewers: klimek, aaron.ballman, gribozavr2

Reviewed By: aaron.ballman

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75202
The file was modifiedclang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
The file was modifiedclang/lib/ASTMatchers/ASTMatchersInternal.cpp
Commit 65f99b5383ff3293881f59dd64cfb596c3d03aa4 by Amara Emerson
[AArch64][GlobalISel] Fixup <32b heterogeneous regbanks of G_PHIs just before selection.

Since all types <32b on gpr end up being assigned gpr32 regclasses, we can end
up with PHIs here which try to select between a gpr32 and an fpr16. Ideally RBS
shouldn't be selecting heterogenous regbanks for operands if possible, but we
still need to be able to deal with it here.

To fix this, if we have a gpr-bank operand < 32b in size and at least one other
operand is on the fpr bank, then we add cross-bank copies to homogenize the
operand banks. For simplicity the bank that we choose to settle on is whatever
bank the def operand has. For example:

%endbb:
  %dst:gpr(s16) = G_PHI %in1:gpr(s16), %bb1, %in2:fpr(s16), %bb2
=>
%bb2:
  ...
  %in2_copy:gpr(s16) = COPY %in2:fpr(s16)
  ...
%endbb:
  %dst:gpr(s16) = G_PHI %in1:gpr(s16), %bb1, %in2_copy:gpr(s16), %bb2

Differential Revision: https://reviews.llvm.org/D75086
The file was modifiedllvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
Commit 34ee941f6d04454838456f0dc692f4abab5cdd19 by ditaliano
[ObjectFileMachO] Fix a build error on embedded.
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Commit 14306ce80c660fda31e2b5279b66174066326531 by craig.topper
[X86] Add proper MachinePointerInfo to the loads/stores created for moving data between SSE and X87 in X86DAGToDAGISel::PreprocessISelDAG
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
Commit a8186935aea67e7a3041b83a50a83073a866e936 by craig.topper
[X86] Use correct MachineMemOperand for stack load in LowerFLT_ROUNDS_
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 9c1a707ba3f6dbb684d0b50b8e301468e04c9d61 by craig.topper
[X86] Use proper alignment for stack temporary and correct MachinePointerInfo for stack accesses in LowerUINT_TO_FP.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 77d9b7b2cdbc401ded68970bc83efc6d1e179318 by craig.topper
[X86] Query constant pool object alignment instead of hardcoding.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit a5a07b80419e68afd14916e95e2c613a9cee26d9 by Adrian Prantl
Visit previously unreachable nodes in the debug info metadata verifier.

This allows for diagnosing malformed LLVM IR debug info metadata such
as the one in the testcase.

<rdar://problem/59756060>

Differential Revision: https://reviews.llvm.org/D75212
The file was addedllvm/test/Verifier/llvm.loop.cu.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit 30f4362040fe28069e96c217856817e9014ab26d by erik.pilkington
Disable memory leak checking in a test to work around a bot failure

This leak is expected, see the discussion on commit 85fb997
The file was modifiedllvm/test/ExecutionEngine/OrcLazy/objc-minimal.ll
Commit 98ed0c5475df57ca5cd4df0997d8bba323c843aa by richard
PR44978: Accept as an extension some cases where destructor name lookup
is ambiguous, but only one of the possible lookup results could possibly
be right.

Clang recently started diagnosing ambiguity in more cases, and this
broke the build of Firefox. GCC, ICC, MSVC, and previous versions of
Clang all accept some forms of ambiguity here (albeit different ones in
each case); this patch mostly accepts anything any of those compilers
accept.
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
The file was modifiedclang/test/SemaCXX/destructor.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
Commit a0ec111c92964fd3bc48a032d383eaa1109f20ce by Louis Dionne
[libc++] Temporarily disable availability markup for the C++20 Synchronization library

The markup wasn't quite right, and that broke compilation with availability
markup enabled. I'm disabling it until I have time to fix it properly to
get the CI mostly green again.
The file was modifiedlibcxx/include/__config
Commit 12339efd70966edd2016206ddae2fbfdf748d400 by Louis Dionne
Revert "[libc++] Do not set the `availability=XXX` feature when not testing against a system libc++"

This reverts commit 7dd6a862e, which broke more tests than it fixed.
The file was modifiedlibcxx/utils/libcxx/test/config.py
Commit 15e2831fcd7e58db12d110f1624085d1e683e4a6 by craig.topper
[X86] Explicitly pass Pointer, MachinePointerInfo and Alignment to BuildFILD.

Previously this code was called into two ways, either a FrameIndexSDNode
was passed in StackSlot. Or a load node was passed in the argument
called StackSlot. This was determined by a dyn_cast to FrameIndexSDNode.

In the case of a load, we had to go find the real pointer from
operand 0 and cast the node to MemSDNode to find the pointer info.

For the stack slot case, the code assumed that the stack slot
was perfectly aligned despite not being the creator of the slot.

This commit modifies the interface to make the caller responsible
for passing all of the required information to avoid all the
guess work and reverse engineering.

I'm not aware of any issues with the original code after an
earlier commit to fix the alignment of one of the stack objects.
This is just clean up to make the code less surprising.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
Commit 870363a22d398fa2aee5b3d3ddf14b99b26923c5 by craig.topper
[X86] Explicitly pass Destination VT and debug location to BuildFILD. NFC

We'd already passed most everything else. Might was well pass
these two things and stop passing Op.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
Commit 682e7037552f12e1c0be508f7c1b9ee81f66c6a5 by Louis Dionne
[libc++] Workaround unused variable warning in test

This only showed up in C++11/C++14 where the static_assert below was
ifdef'd out, and the variable was indeed unused.
The file was modifiedlibcxx/test/std/atomics/types.pass.cpp
Commit 82a21c16554330b257b7af9492466888c2351b6f by craig.topper
[X86] Add proper MachinePointerInfo to stack store created in LowerWin64_i128OP.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit c965fd942f1d2de6179cd1a2f78c78fa4bd74626 by apilipenko
Cost Annotation Writer for InlineCost

Add extra diagnostics for the inline cost analysis under
-print-instruction-deltas cl option. When enabled along with
-debug-only=inline-cost it prints the IR of inline candidate
annotated with cost and threshold change per every instruction.

Reviewed By: apilipenko, davidxl, mtrofin

Differential Revision: https://reviews.llvm.org/D71501
The file was modifiedllvm/lib/Analysis/InlineCost.cpp
The file was addedllvm/test/Transforms/Inline/debuginline-cost-delta.ll
Commit b305b8a256eade076bb13f52668a6015631ac0e5 by maskray
[ELF][test] Rename SHF_LINK_ORDER related "metadata" to "linkorder"

Test cleanups.
The file was addedlld/test/ELF/linkerscript/discard-linkorder.s
The file was removedlld/test/ELF/section-metadata-err3.s
The file was removedlld/test/ELF/linkerscript/section-metadata.s
The file was removedlld/test/ELF/gc-sections-metadata2.s
The file was addedlld/test/ELF/linkorder-err.s
The file was removedlld/test/ELF/linkerscript/section-metadata2.s
The file was removedlld/test/ELF/section-metadata-err2.s
The file was addedlld/test/ELF/linkorder-err3.s
The file was addedlld/test/ELF/linkerscript/linkorder2.s
The file was removedlld/test/ELF/linkerscript/discard-section-metadata.s
The file was addedlld/test/ELF/linkorder-err2.s
The file was addedlld/test/ELF/gc-sections-linkorder-err.s
The file was removedlld/test/ELF/gc-sections-metadata-err.s
The file was addedlld/test/ELF/gc-sections-linkorder.s
The file was removedlld/test/ELF/gc-sections-metadata.s
The file was addedlld/test/ELF/linkerscript/linkorder.s
The file was removedlld/test/ELF/section-metadata-err.s
The file was addedlld/test/ELF/gc-sections-linkorder2.s
Commit 21056a4ea025a5db85c076d0b35f981864999541 by craig.topper
[X86] Add test cases showing incorrect setting of nofpexcept flag due to CSE occuring during SelectionDAG creation.

These tests generate two nodes that are identical except for the
metadata that indicates their exception behavior. The nodes get
CSEd by SelectionDAG, but the nofpexcept flag is being set based
only on the fpexcept.ignore node being created last.

We need to detect this case and intersect the flags similar to
what is already done with fast math flags.
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics-flags.ll
Commit 2a49d650a5d208f92b0afbfa1e59a58496abe03d by llvm-project
[docs][LoopTerminology] Add Loop Simplify Form description.

Information taken from https://youtu.be/3pRhvQi7Z10?t=481 and
comments in LoopSimplify.h.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D74989
The file was modifiedllvm/docs/LoopTerminology.rst
The file was modifiedllvm/docs/Passes.rst
Commit c7e8d8b13e5c713f6a39ba18dbf0498dd8fafb3d by Matthew.Arsenault
GlobalISel: Cleanup code with MachineIRBuilder features
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 6dcf43102c3d0af81137e871607579ab59126923 by Matthew.Arsenault
AMDGPU/GlobalISel: Add missing G_[US]ADDE/G_[US]SUBE tests

The s64 case currently crashes, so leave that for later.
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sadde.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uadde.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usube.mir
The file was addedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ssube.mir
Commit 6fc0d00823182eca3e7f6deb4bac0335ad4fc95c by Matthew.Arsenault
GlobalISel: Fix lowering for G_UADDE/G_USUBE

The type parameter passed into lower is invalid and should be removed
from the function.
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-usube.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-uadde.mir
Commit 79493e721a4a8de298c3fda829a1e872e95bcfc4 by arsenm2
AMDGPU/GlobalISel: Add missing test for G_UMULH
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-umulh.mir
Commit c46b85aaf4d442f732e2cf8e84076b374187921c by nemanja.i.ibm
[LoopVectorize] Fix cost for calls to functions that have vector versions

A recent commit
(https://reviews.llvm.org/rG66c120f02560ef528a60924104ead66f330190f1) changed
the cost for calls to functions that have a vector version for some
vectorization factor. However, no check is performed for whether the
vectorization factor matches the current one being cost modeled. This leads to
attempts to widen call instructions to a vectorization factor for which such a
function does not exist, which in turn leads to an assertion failure.

This patch adds the check for vectorization factor (i.e. not just that the
called function has a vector version for some VF, but that it has a vector
version for this VF).

Differential revision: https://reviews.llvm.org/D74944
The file was addedllvm/test/Transforms/LoopVectorize/widened-massv-vfabi-attr.ll
The file was addedllvm/test/Transforms/LoopVectorize/widened-massv-call.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Commit b9f3686056010c15d52cc07fed1dba41cb341206 by nemanja.i.ibm
Fix buildbot break after c46b85aaf4d4

I added test cases that rely on the availability of the PPC target into
the general directory for the loop vectorizer. This causes failures on
bots that don't build the PPC target. Moving them to the PowerPC directory
to fix this.
The file was removedllvm/test/Transforms/LoopVectorize/widened-massv-vfabi-attr.ll
The file was addedllvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
The file was addedllvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll
The file was removedllvm/test/Transforms/LoopVectorize/widened-massv-call.ll
Commit 621388468b5125f05d649262681676bed2faefe6 by ogiroux
Some fixes for open breaks on MacOS and UBSan
The file was modifiedlibcxx/include/semaphore
The file was modifiedlibcxx/include/__threading_support
The file was modifiedlibcxx/test/std/thread/thread.semaphore/max.pass.cpp
The file was modifiedlibcxx/src/barrier.cpp
Commit cab6ac2612b5e4f22fca357a2c0740bc1b995e96 by sivachandra
[libc] Add an optional `NAME` argument to `add_entrypoint_object` rule.

This argument can be used to specify the entrypoint name if it is different
from the target name.

Reviewers: gchatelet, abrachet

Differential Revision: https://reviews.llvm.org/D74948
The file was modifiedlibc/cmake/modules/LLVMLibCRules.cmake
Commit aff8c045a225d98ee5fffa914e2493941f8465cd by pifon
[MLIR] Add `take_back()` to STLExtras.h for completeness.

Differential Revision: https://reviews.llvm.org/D75208
The file was modifiedmlir/include/mlir/Support/STLExtras.h
Commit 2bb7774ddf002668816fdb7c4a5b8da322fe284e by kadircet
[clangd] Get rid of getBeginningOfIdentifier helper

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75176
The file was modifiedclang-tools-extra/clangd/SourceCode.h
The file was modifiedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CollectMacrosTests.cpp
The file was modifiedclang-tools-extra/clangd/unittests/SourceCodeTests.cpp
The file was modifiedclang-tools-extra/clangd/SourceCode.cpp
Commit 1aab055dd8ecd1ce8dcc0fe21da95e08b288b24e by gchatelet
[libc] Add CMake script to check host cpu features

Summary:
Tested on MacOSX and Linux.
For robustness we can go the OpenCV way and add individual c++ files with intrinsics.
https://github.com/opencv/opencv/blob/master/cmake/checks/cpu_avx2.cpp

Reviewers: sivachandra, abrachet

Subscribers: mgorny, MaskRay, tschuett, libc-commits

Tags: #libc-project

Differential Revision: https://reviews.llvm.org/D74897
The file was addedlibc/cmake/modules/LLVMLibCCheckCpuFeatures.cmake
The file was addedlibc/cmake/modules/cpu_features/check_avx.cpp
The file was addedlibc/cmake/modules/cpu_features/check_sse2.cpp
The file was addedlibc/cmake/modules/cpu_features/check_sse.cpp
The file was addedlibc/cmake/modules/cpu_features/check_avx512f.cpp
Commit f31fc1043d384e0b699fcb114694a5d8e1f51784 by kadircet
[clangd] Get rid of lexer usage in AST.cpp

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D75193
The file was modifiedclang-tools-extra/clangd/AST.h
The file was modifiedclang-tools-extra/clangd/AST.cpp
Commit 13db7490fa67e22605dec4ab824121230b0fd928 by sjoerd.meijer
[AArch64] Peephole optimization: merge AND and TST instructions

In some cases Clang does not perform merging of instructions AND and TST (aka
ANDS xzr).

Example:

  tst x2, x1
  and x3, x2, x1

to:

  ands x3, x2, x1

This patch add such merging during instruction selection: when AND is replaced
with ANDS instruction in LowerSELECT_CC, all users of AND also should be
changed for using this ANDS instruction

Short discussion on mailing list:
http://llvm.1065342.n5.nabble.com/llvm-dev-ARM-Peephole-optimization-instructions-tst-add-tp133109.html

Patch by Pavel Kosov.

Differential Revision: https://reviews.llvm.org/D71701
The file was addedllvm/test/CodeGen/AArch64/peephole-and-tst.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
The file was modifiedllvm/test/CodeGen/AArch64/funnel-shift.ll
The file was modifiedllvm/test/CodeGen/AArch64/shift-by-signext.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 72f044ecdfb566ccffca5e078494d1761a1c2af9 by sam.parker
[NFC][ARM] Add test case
The file was addedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cmplx_cong.mir
Commit 8c26f42fe90e3f8612d2f57a3c9c5e7fcff5e91e by simon.tatham
[clang,ARM,MVE] Remove redundant #includes in test file.

I made that file by pasting together several pieces, and forgot to
take out the #include <arm_mve.h> from the tops of the later ones, so
the test was pointlessly including the same header five times. NFC.
The file was modifiedclang/test/CodeGen/arm-mve-intrinsics/absneg.c
Commit 56b03c35ddecf7d096a513b0633ddf6c49286784 by Raphael Isemann
[lldb] Skip TestWasm.py on sanitized builds until D75200 has landed
The file was modifiedlldb/test/API/functionalities/gdb_remote_client/TestWasm.py
Commit e58229fded0407f3e4f77cd87bedcd4d35bb7c89 by sam.parker
[ARM] Add CPSR as an implicit use of t2IT

This use is already attached to the BUNDLE instruction but is lost
after finalisation.

Differential Revision: https://reviews.llvm.org/D75186
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/extract-element.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-liveout-lsr-shift.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp16-reduce.mir
The file was modifiedllvm/test/CodeGen/ARM/constant-islands-split-IT.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unrolled-and-vector.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-ignore-vctp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update2.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cmplx_cong.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/constant-islands-cbz.mir
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-16.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-load.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-elem-moves.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-opcode-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-reorder.mir
The file was modifiedllvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-8.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-def-before-start.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/switch.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-cbnz.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-mov.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-store.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-header.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-use.mir
The file was modifiedllvm/test/CodeGen/MIR/ARM/bundled-instructions.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-operand-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-start-after-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/size-limit.mir
The file was modifiedllvm/test/CodeGen/Thumb2/t2-teq-reduce.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-random.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-add-operand-liveout.mir
The file was modifiedllvm/test/CodeGen/ARM/tail-dup-bundle.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri12.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-lr-terminator.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/multiblock-massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-chain.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-vpsel-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subi3.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-32.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-itercount.mir
Commit 2affdcee615f7f96220fd7a5c4022203f1201822 by Raphael Isemann
[lldb][NFC] Fix several -Wdocumentation warnings

The GetOffset documentation was copied from the function above
so I completely deleted that one. The rest was just outdated
documentation that didn't keep up with renamed or changed
function parameters/return types.
The file was modifiedlldb/include/lldb/Target/Thread.h
The file was modifiedlldb/include/lldb/Utility/Broadcaster.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
The file was modifiedlldb/include/lldb/Breakpoint/BreakpointResolver.h
The file was modifiedlldb/include/lldb/Utility/CompletionRequest.h
The file was modifiedlldb/include/lldb/Utility/Flags.h
The file was modifiedlldb/include/lldb/Host/common/NativeProcessProtocol.h
Commit ff574ff291e73b78164aade9d456d364bbf93a03 by david.stenberg
[DebugInfo][NFC] Move out lambdas from collectCallSiteParameters()

Summary:
This is a preparatory patch for D75036, in which a debug expression is
associated with each parameter register in the worklist. In that patch
the two lambda functions addToWorklist() and finishCallSiteParams() grow
a bit, so move those out to separate functions. This patch also prepares
for each parameter register having their own expression moving the
creation of the DbgValueLoc into finishCallSiteParams().

Reviewers: djtodoro, vsk

Reviewed By: djtodoro, vsk

Subscribers: hiraditya, llvm-commits

Tags: #debug-info, #llvm

Differential Revision: https://reviews.llvm.org/D75050
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit 6d857166d218ccedfff3b177a4489420e3bdd603 by david.stenberg
[DebugInfo] Describe call site values for chains of expression producing instrs

Summary:
If the describeLoadedValue() hook produced a DIExpression when
describing a instruction, and it was not possible to emit a call site
entry directly (the value operand was not an immediate nor a preserved
register), then that described value could not be inserted into the
worklist, and would instead be dropped, meaning that the parameter's
call site value couldn't be described.

This patch extends the worklist so that each entry has an DIExpression
that is built up when iterating through the instructions.

This allows us to describe instruction chains like this:

  $reg0 = mv $fp
  $reg0 = add $reg0, offset
  call @call_with_offseted_fp

Since DW_OP_LLVM_entry_value operations can't be combined with any other
expression, such call site entries will not be emitted. I have added a
test, dbgcall-site-expr-entry-value.mir, which verifies that we don't
assert or emit broken DWARF in such cases.

Reviewers: djtodoro, aprantl, vsk

Reviewed By: djtodoro, vsk

Subscribers: hiraditya, llvm-commits

Tags: #debug-info, #llvm

Differential Revision: https://reviews.llvm.org/D75036
The file was addedllvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir
The file was addedllvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-chain.mir
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Commit 58d9e8194e4e4ed18175400792030920a3bb7636 by djordje.todorovic
[DebugInfo][ARM] Fix noreg case when checkig if it is an addImm

This fixes a build failure with an ARM buildbot.

Differential Revision: https://reviews.llvm.org/D75231
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.cpp
The file was addedllvm/test/DebugInfo/MIR/ARM/dbgcallsite-noreg-is-imm-check.mir
Commit 014728413f354c8f44375074b331e68ce194bbd2 by kbobyrev
Revert "[Hexagon] Improve casting of boolean HVX vectors to scalars"

This reverts commit 7691790dfd1011d08f5468f63952d7690755aad4.

The patch is failing tests with MSAN:
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/39054/steps/check-llvm%20msan/logs/stdio
The file was modifiedllvm/test/CodeGen/Hexagon/store-vector-pred.ll
The file was removedllvm/test/CodeGen/Hexagon/autohvx/isel-store-bitcast-v128i1.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.h
The file was modifiedllvm/test/CodeGen/Hexagon/hvx-bitcast-v64i1.ll
The file was modifiedllvm/test/CodeGen/Hexagon/autohvx/isel-hvx-pred-bitcast.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonISelLowering.cpp
Commit 4bb3cb2bcb59d2139dfd9fbaa7c475dcf8507242 by Raphael Isemann
[lldb] Show the actual error when 'watchpoint set expression' failed

Currently we only show the user that the expression failed but not
what is actually wrong with it. This just dumps the error we get
back alongside the other output to the error stream.

This should also help with finding out with why sometimees the
TestWatchLocationWithWatchSet.py test fails here on the LLDB
incremental bot on Green Dragon.
The file was modifiedlldb/source/Commands/CommandObjectWatchpoint.cpp
Commit f41e82c82cc82073cf08f60c96b61c4b0496b652 by jay.foad
[InstCombine] Fix confusing variable name.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Commit 2e24219d3cbfcb8c824c58872f97de0a2e94a7c8 by hans
[MC][ARM] Resolve some pcrel fixups at assembly time (PR44929)

MC currently does not emit these relocation types, and lld does not
handle them. Add FKF_Constant as a work-around of some ARM code after
D72197. Eventually we probably should implement these relocation types.

By Fangrui Song!

Differential revision: https://reviews.llvm.org/D72892
The file was modifiedllvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
The file was addedllvm/test/MC/ARM/pcrel-global.s
The file was modifiedllvm/test/MC/ARM/Windows/invalid-relocation.s
The file was modifiedllvm/include/llvm/MC/MCFixupKindInfo.h
The file was modifiedllvm/test/MC/MachO/ARM/bad-darwin-ARM-reloc.s
The file was modifiedllvm/lib/MC/MCAssembler.cpp
Commit 548e540d2ced9f5a596e0433f544c560a842a6a7 by jbcoe
[clang-format] Handle commas in [] in C#

Summary:
Respect setting `SpacesInSquareBrackets` for commas in square brackets in C# code.

Reviewers: krasimir, MyDeveloperDay

Reviewed By: krasimir

Subscribers: cfe-commits

Tags: #clang-format, #clang

Differential Revision: https://reviews.llvm.org/D75182
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
Commit 13f2a5883f2bf29b65b0a24592c2a38132e8946e by david.green
[ARM] Fixup FP16 bitcasts

Under fp16 we optimise the bitcast between a VMOVhr and a CopyToReg via
custom lowering. This rewrites that to be a DAG combine instead, which
helps produce better code in the cases where the bitcast is actaully
legal.

Differential Revision: https://reviews.llvm.org/D72753
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-phireg.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-ldst.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-div-expand.ll
The file was modifiedllvm/test/CodeGen/ARM/fp16-bitcast.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-masked-store.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-fmath.ll
Commit 51b5b567ccca8fd3583f5399ccca015c85560036 by kbobyrev
Require asserts for debuginline-cost-delta.ll test

-debug-only=inline-cost does not exist in optimized builds without
asserts and therefore the test fails for such configurations.

Related revision: c965fd942f1d2de6179cd1a2f78c78fa4bd74626
The file was modifiedllvm/test/Transforms/Inline/debuginline-cost-delta.ll
Commit 45abcd1df1ae6c42f7b65afe4344d2c435141ccc by llvm-dev
[AVX] Cleanup check prefixes

We were missing some coverage for avx512bw targets as the update script can be pretty dumb about check prefix orders...
The file was modifiedllvm/test/CodeGen/X86/var-permute-512.ll
Commit 5122e828701c88f8d53ee881bc68f3904454d154 by hans
[driver][darwin] Don't use -platform_version flag by default (PR44813)

The code in llvmorg-10-init-12188-g25ce33a6e4f is a breaking change for
users of older linkers who don't pass a version parameter, which
prevents a drop-in clang upgrade. Old tools can't know about what future
tools will do, so as a general principle the burden should be new tools
to be compatible by default. Also, for comparison, none of the other
tests of Version within AddLinkArgs add any new behaviors unless the
version is explicitly specified. Therefore, this patch changes the
-platform_version behavior from opt-out to opt-in.

Patch by David Major!

Differential revision: https://reviews.llvm.org/D74784
The file was modifiedclang/test/Driver/darwin-ld-platform-version-macos.c
The file was modifiedclang/lib/Driver/ToolChains/Darwin.cpp
The file was modifiedclang/test/Driver/darwin-ld-platform-version-watchos.c
The file was modifiedclang/test/Driver/darwin-ld-platform-version-tvos.c
The file was modifiedclang/test/Driver/darwin-ld-platform-version-ios.c
Commit fa9439fac84ea4eb4050aa1ae150c0ec2cf86c20 by andrzej.warzynski
[AArch64][SVE] Add intrinsics for first-faulting gather loads

Summary:
The following intrinsics are added:
  * @llvm.aarch64.sve.ldff1.gather
  * @llvm.aarch64.sve.ldff1.gather.index
  * @llvm.aarch64.sve.ldff1.gather_sxtw
  * @llvm.aarch64.sve.ldff1.gather.uxtw
  * @llvm.aarch64.sve.ldff1.gather_sxtw.index
  * @llvm.aarch64.sve.ldff1.gather.uxtw.index
  * @llvm.aarch64.sve.ldff1.gather.scalar.offset

Although this patch is quite substantial, the vast majority of the
implementation is just a 'copy & paste' of the implementation of regular
gather loads, including tests. There's only a handful of new
definitions:
  * AArch64ISD nodes defined in AArch64ISelLowering.h (e.g. GLDFF1)
  * Seleciton DAG Types in AArch64SVEInstrInfo.td (e.g.
    AArch64ldff1_gather)
  * intrinsics in IntrinsicsAArch64.td (e.g. aarch64_sve_ldff1_gather)
  * Pseudo instructions in SVEInstrFormats.td to workaround the issue of
    use-before-def for the FFR register.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D75128
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was addedllvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-scaled-offsets.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was addedllvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-scaled-offset.ll
The file was addedllvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-unscaled-offsets.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
The file was addedllvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-scalar-offset.ll
The file was addedllvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-imm-offset.ll
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was addedllvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-unscaled-offset.ll
Commit 016d91ccbd4d434aa90fbfa6fd28e9da1abc9279 by djordje.todorovic
[CallSiteInfo] Handle bundles when updating call site info

This will address the issue: P8198 and P8199 (from D73534).

The methods was not handle bundles properly.

Differential Revision: https://reviews.llvm.org/D74904
The file was modifiedllvm/lib/CodeGen/IfConversion.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
The file was modifiedllvm/lib/CodeGen/MachineLICM.cpp
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
The file was modifiedllvm/lib/CodeGen/XRayInstrumentation.cpp
The file was modifiedllvm/lib/CodeGen/UnreachableBlockElim.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/lib/CodeGen/TailDuplicator.cpp
The file was modifiedllvm/lib/CodeGen/BranchFolding.cpp
The file was modifiedllvm/lib/CodeGen/LiveRangeEdit.cpp
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineInstr.h
The file was modifiedllvm/lib/CodeGen/MachineOutliner.cpp
The file was addedllvm/test/CodeGen/Thumb2/call-site-info-update.ll
The file was modifiedllvm/lib/CodeGen/PeepholeOptimizer.cpp
Commit 7ea9a6e0220da36ff2fd1fbc29c2755be23e5166 by hans
Revert "make -fmodules-codegen and -fmodules-debuginfo work also with PCHs"

This caused PR44953. See also the discussion on D74846.

This reverts commit cbc9d22e49b434b6ceb2eb94b67079d02e0a7b74.
The file was modifiedclang/lib/Serialization/ASTWriterDecl.cpp
The file was removedclang/test/PCH/codegen.cpp
The file was modifiedclang/lib/Serialization/ASTWriter.cpp
The file was modifiedclang/test/Modules/Inputs/codegen-flags/foo.h
The file was modifiedclang/lib/Serialization/ASTReaderDecl.cpp
The file was modifiedclang/lib/Serialization/ASTReader.cpp
Commit 7dfe0cc7f5765dc729685a0aa468cdf54a265a11 by jbcoe
[clang-format] Recognize C# named argument colons as a token type

Summary:
No longer merge 'name' and ':' into a single token.

Ensure that line breaks cannot be placed before or after a named-argument colon.

Ensure that no space is inserted before a named-argument colon.

Reviewers: krasimir

Reviewed By: krasimir

Subscribers: cfe-commits, MyDeveloperDay

Tags: #clang-format, #clang

Differential Revision: https://reviews.llvm.org/D75244
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/lib/Format/FormatTokenLexer.cpp
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
The file was modifiedclang/lib/Format/FormatTokenLexer.h
The file was modifiedclang/lib/Format/FormatToken.h
Commit 6bdd63dc28208a597542b0c6bc41093f32417804 by llvm-dev
[X86] createVariablePermute - handle case where recursive createVariablePermute call fails

Account for the case where a recursive createVariablePermute call with a wider vector type fails.

Original test case from @craig.topper (Craig Topper)
The file was modifiedllvm/test/CodeGen/X86/var-permute-512.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit aa324c5441f229bd1ff07407affeab95740328fe by hokein.wu
[clangd][NFC] Don't query the index if the rename symbol is function
local.

This would save an unnecessary index query when renaming a function
local symbol in cross-file rename mode.
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
Commit 54e5600e4d28535d4296a6b6baeefccc9cc9d904 by zinenko
[mlir] fix wrong symbol order in AffineApplyNormalizer

Summary:
AffineApplyNormalizer provides common logic for folding affine maps that appear
in affine.apply into other affine operations that use the result of said
affine.apply. In the process, affine maps of both operations are composed.
During the composition `A.compose(B)` the symbols from the map A are placed
before those of the map B in a single concatenated symbol list. However,
AffineApplyNormalizer was ordering the operands of the operation being
normalized by iteratively appending the symbols into a single list accoridng to
the operand order, regardless of whether these operands are symbols of the
current operation or of the map that is being folded into it. This could lead
to wrong order of symbols and, when the symbols were bound to constant values,
to visibly incorrect folding of constants into affine maps as reported in
PR45031. Make sure symbols operands to the current operation are always placed
before symbols coming from the folded maps.

Update the test that was exercising the incorrect folder behavior. For some
reason, the order of symbol operands was swapped in the test input compared to
the previous operations, making it easy to assume the correct maps were
produced whereas they were swapping the symbols back due to the problem
described above.

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

Differential Revision: https://reviews.llvm.org/D75247
The file was modifiedmlir/lib/Dialect/AffineOps/AffineOps.cpp
The file was modifiedmlir/test/Dialect/AffineOps/canonicalize.mlir
The file was modifiedmlir/include/mlir/Dialect/AffineOps/AffineOps.h
Commit fabe52a7412d850bf06e006db1d53de0500a1853 by llvm-dev
Fix uninitialized variable warning. NFC.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit efe2f59ec4d7216dba5669f9a10c8cd4745c422c by llvm-dev
[X86] LowerMSCATTER/MGATHER - reduce scope of MaskVT. NFCI.

Fixes cppcheck warning.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit dc7ac563ac3a76a5149257e5f95cf0474e7618cf by llvm-dev
Fix shadow variable warnings. NFC.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e61e7f0794b7bfc9eb698802808f5bfaf026d3f1 by llvm-dev
Fix shadow variable warning. NFC.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 39e1c1fa9ee03e91751e505d747275e58069e6de by akuegel
Add GPU lowerings for the different log ops.

Summary: This adds GPU lowerings for log, log10 and log2.

Reviewers: mravishankar, herhut

Subscribers: jholewinski, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, csigg, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D75239
The file was modifiedmlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
The file was modifiedmlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
The file was modifiedmlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
The file was modifiedmlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
Commit f35f59ac36db3c5fe636f6899d98ac690126a4f7 by aaron
Adding some documentation for __builtin_dump_struct.
The file was modifiedclang/docs/LanguageExtensions.rst
Commit fe6bcfaf3b28e300e722b23e6ef00d04d7240a93 by llvm-dev
[X86] Use Subtarget.useSoftFloat() in X86TargetLowering constructor

Avoid use of X86TargetLowering::useSoftFloat() in the constructor as its a virtual function
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit f90cc633de9f75715a3efc87c25c39a2de3ce53e by llvm-dev
Fix cppcheck definition/declaration arg mismatch warnings. NFCI.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
Commit 5900d3f2e94f710d73a89931953ce0a3d928c70d by jay.foad
[AMDGPU][ConstantFolding] Fold llvm.amdgcn.fract intrinsic

Reviewers: nhaehnle, arsenm, rampitec

Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D75179
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
The file was addedllvm/test/Analysis/ConstantFolding/AMDGPU/fract.ll
Commit 4569b3a86f8a4b1b8ad28fe2321f936f9d7ffd43 by kbobyrev
Revert "Devirtualize a call on alloca without waiting for post inline cleanup and next"

This reverts commit 59fb9cde7a4a96fe8485a80d9010e4420ffdca82.

The patch caused internal miscompilations.
The file was removedllvm/test/Transforms/Inline/devirtualize-4.ll
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
The file was modifiedclang/test/CodeGenCXX/member-function-pointer-calls.cpp
Commit fcfd3a281c1d6ffd40e4acc430eba448fa6c8423 by ntv
[mlir] NFC - Move runner utils from mlir-cpu-runner to ExecutionEngine

Runner utils are useful beyond just CPU and hiding them within the test directory
makes it unnecessarily harder to reuse in other projects.
The file was addedmlir/lib/ExecutionEngine/RunnerUtils.cpp
The file was modifiedmlir/test/CMakeLists.txt
The file was modifiedmlir/test/mlir-cpu-runner/CMakeLists.txt
The file was addedmlir/include/mlir/ExecutionEngine/RunnerUtils.h
The file was removedmlir/test/mlir-cpu-runner/mlir_runner_utils.cpp
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
The file was removedmlir/test/mlir-cpu-runner/include/mlir_runner_utils.h
The file was modifiedmlir/test/mlir-cpu-runner/include/cblas.h
The file was modifiedmlir/test/mlir-cpu-runner/include/cblas_interface.h
Commit ee1b2e7ded12ef6e11ce35bb9929490ac9e7fa4f by kparzysz
[Hexagon] Do not use init_arrays by default
The file was modifiedclang/lib/Driver/ToolChains/Hexagon.cpp
The file was modifiedclang/test/Driver/hexagon-toolchain-elf.c
Commit bd97704eaaaab5a95ecb048ce343c1a4be5d94e5 by alexey.bader
[SYCL] Driver option to select SYCL version

Summary:
User can select the version of SYCL the compiler will
use via the flag -sycl-std, similar to -cl-std.

The flag defines the LangOpts.SYCLVersion option to the
version of SYCL. The default value is undefined.
If driver is building SYCL code, flag is set to the default SYCL
version (1.2.1)

The preprocessor uses this variable to define CL_SYCL_LANGUAGE_VERSION macro,
which should be defined according to SYCL 1.2.1 standard.

Only valid value at this point for the flag is 1.2.1.

Co-Authored-By: David Wood <Q0KPU0H1YOEPHRY1R2SN5B5RL@david.davidtw.co>
Signed-off-by: Ruyman Reyes <ruyman@codeplay.com>

Subscribers: ebevhan, Anastasia, cfe-commits

Tags: #clang

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

Signed-off-by: Alexey Bader <alexey.bader@intel.com>
The file was modifiedclang/test/Preprocessor/sycl-macro.cpp
The file was modifiedclang/test/Frontend/sycl-aux-triple.cpp
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/Driver/sycl.c
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/SemaSYCL/kernel-attribute.cpp
Commit 1b811ff8a935fafb279ad9bad36d36058a129b42 by bmahjour
[DA] Delinearization of fixed-size multi-dimensional arrays

Summary:
Currently the dependence analysis in LLVM is unable to compute accurate
dependence vectors for multi-dimensional fixed size arrays.
This is mainly because the delinearization algorithm in scalar evolution
relies on parametric terms to be present in the access functions. In the
case of fixed size arrays such parametric terms are not present, but we
can use the indexes from GEP instructions to recover the subscripts for
each dimension of the arrays. This patch adds this ability under the
existing option `-da-disable-delinearization-checks`.

Authored By: bmahjour

Reviewer: Meinersbur, sebpop, fhahn, dmgreen, grosser, etiotto, bollu

Reviewed By: Meinersbur

Subscribers: hiraditya, arphaman, Whitney, ppc-slack, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D72178
The file was modifiedllvm/lib/Analysis/DependenceAnalysis.cpp
The file was addedllvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll
The file was modifiedllvm/test/Transforms/LoopInterchange/profitability.ll
The file was modifiedllvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
The file was modifiedllvm/test/Transforms/LoopInterchange/currentLimitation.ll
The file was modifiedllvm/include/llvm/Analysis/DependenceAnalysis.h
The file was addedllvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
Commit f943443e65115c83648f1185adedb3d333f8619f by a.v.lapshin
[Debuginfo][NFC] Unify error reporting routines inside DebugInfoDWARF.

Summary:
Error reporting in DebugInfoDWARF library currently done in three ways :

1. Direct calls to WithColor::error()/WithColor::warning()
2. ErrorPolicy defaultErrorHandler(Error E);
3. void dumpWarning(Error Warning);

additionally, other locations could have more variations:

lld/ELF/SyntheticSection.cpp
    if (Error e = cu->tryExtractDIEsIfNeeded(false)) {
      error(toString(sec) + ": " + toString(std::move(e)));

DebugInfo/DWARF/DWARFUnit.cpp
  if (Error e = tryExtractDIEsIfNeeded(CUDieOnly))
    WithColor::error() << toString(std::move(e));

Thus error reporting could look inconsistent. To have a consistent error
messages it is necessary to have a possibility to redefine error
reporting functions. This patch creates two handlers and allows to
redefine them. It also patches all places inside DebugInfoDWARF
to use these handlers.

The intention is always to use following handlers for error reporting
purposes inside DebugInfoDWARF:

DebugInfo/DWARF/DWARFContext.h

std::function<void(Error E)> RecoverableErrorHandler = WithColor::defaultErrorHandler;
std::function<void(Error E)> WarningHandler = WithColor::defaultWarningHandler;

This is last patch from series of patches: D74481, D74635, D75118.

Reviewers: jhenderson, dblaikie, probinson, aprantl, JDevlieghere

Reviewed By: jhenderson

Subscribers: grimar, hiraditya, llvm-commits

Tags: #llvm, #debug-info

Differential Revision: https://reviews.llvm.org/D74308
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp
The file was modifiedllvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
Commit 965ba4291a6d978c7d4d98831d6ae62e9761f37d by sam.parker
Revert "[ARM] Add CPSR as an implicit use of t2IT"

This reverts commit e58229fded0407f3e4f77cd87bedcd4d35bb7c89.

Differential Revision: https://reviews.llvm.org/D75186
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-cbnz.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-itercount.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-add-operand-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-32.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-ignore-vctp.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-lr-terminator.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-store.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri.mir
The file was modifiedllvm/test/CodeGen/ARM/tail-dup-bundle.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-chain.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-header.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-start-after-def.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-16.mir
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-reorder.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/extract-element.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/switch.mir
The file was modifiedllvm/test/CodeGen/MIR/ARM/bundled-instructions.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-mov.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-vpsel-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-8.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-liveout-lsr-shift.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/cmplx_cong.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-load.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/size-limit.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-random.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/multiblock-massive.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unrolled-and-vector.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri12.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-use.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update2.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-opcode-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/move-def-before-start.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-operand-liveout.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-elem-moves.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp16-reduce.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec.mir
The file was modifiedllvm/test/CodeGen/Thumb2/t2-teq-reduce.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir
The file was modifiedllvm/test/CodeGen/Thumb2/constant-islands-cbz.mir
The file was modifiedllvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subi3.mir
The file was modifiedllvm/test/CodeGen/ARM/constant-islands-split-IT.mir
Commit 168a44a70eb562f9a88a2e25b6ffd9cca3b25052 by llvm-dev
[CostModel][X86] Improve extract/insert element costs (PR43605)

This tries to improve the accuracy of extract/insert element costs by accounting for subvector extraction/insertion for >128-bit vectors and the shuffling of elements to/from the 0'th index.

It also adds INSERTPS for f32 types and PINSR/PEXTR costs for integer types (at the moment we assume the same cost as MOVD/MOVQ - which isn't always true).

Differential Revision: https://reviews.llvm.org/D74976
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/remark_horcost.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vector-insert.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR35865.ll
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/X86/load_store.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/commutativity.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/arith-fp.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/sitofp.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/extend.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/intrinsic-cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/zext.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleaving.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hadd.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/hsub.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fptosi.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fround.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vshift-ashr-cost.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vshift-lshr-cost.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr35497.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/fptoui.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext.ll
The file was modifiedllvm/test/Analysis/CostModel/X86/vector-extract.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/resched.ll
Commit 080890a9f38ff63f9693b55b263dc433ba8bed7a by llvm-dev
[InstCombine] Add PR14365 test cases + vector equivalents.
The file was addedllvm/test/Transforms/InstCombine/pr14365.ll
Commit c08384a3aeeb81646750543cd5637e096d6fc4b1 by sunfish
[WebAssembly] Add an `isWasm` target triple predicate.

This simplies code which needs to apply the same logic to both wasm32
and wasm64.

This patch is part of https://reviews.llvm.org/D70700.
The file was modifiedllvm/include/llvm/ADT/Triple.h
Commit 197bda587b4bb5e7603ad05fc1106332edc6afbd by sunfish
[WebAssembly] Teach lld how to demangle "__main_argc_argv".

WebAssembly requires that caller and callee signatures match, so it
can't do the usual trick of passing more arguments to main than it
expects. Instead WebAssembly will mangle "main" with argc/argv
parameters as "__main_argc_argv". This patch teaches lld how to
demangle it.

This patch is part of https://reviews.llvm.org/D70700.
The file was modifiedlld/wasm/Symbols.cpp
Commit 00072c08c75050ae2c835b7bb0e505475dbcd7b9 by sunfish
[WebAssembly] Mangle the argc/argv `main` as `__wasm_argc_argv`.

WebAssembly enforces a rule that caller and callee signatures must
match. This means that the traditional technique of passing `main`
`argc` and `argv` even when it doesn't need them doesn't work.

Currently the backend renames `main` to `__original_main`, however this
doesn't interact well with LTO'ing libc, and the name isn't intuitive.
This patch allows us to transition to `__main_argc_argv` instead.

This implements the proposal in
https://github.com/WebAssembly/tool-conventions/pull/134
with a flag to disable it when targeting Emscripten, though this is
expected to be temporary, as discussed in the proposal comments.

Differential Revision: https://reviews.llvm.org/D70700
The file was modifiedclang/lib/CodeGen/CodeGenModule.h
The file was addedclang/test/CodeGen/wasm-main_argc_argv.c
The file was modifiedclang/lib/Frontend/InitHeaderSearch.cpp
The file was modifiedclang/lib/AST/Mangle.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was addedclang/test/CodeGen/wasm-call-main.c
The file was addedclang/test/CodeGen/wasm-main.c
Commit f64e457cb75b61f6566de8327a1bfae498d5a296 by pierre.vanhoutryve
[Transforms][Debugify] Ignore PHI nodes when checking for DebugLocs

Fix for: https://bugs.llvm.org/show_bug.cgi?id=37964

Differential Revision: https://reviews.llvm.org/D75242
The file was addedllvm/test/DebugInfo/pr37964.ll
The file was modifiedllvm/lib/Transforms/Utils/Debugify.cpp
Commit 740ed617f7d4d16e7883636c5eff994f8be7eba4 by alexey.bader
Revert "[SYCL] Driver option to select SYCL version"

This reverts commit bd97704eaaaab5a95ecb048ce343c1a4be5d94e5.

It broke tests on mac: http://45.33.8.238/mac/9011/step_7.txt
The file was modifiedclang/include/clang/Basic/LangOptions.def
The file was modifiedclang/test/Frontend/sycl-aux-triple.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/SemaSYCL/kernel-attribute.cpp
The file was modifiedclang/test/Preprocessor/sycl-macro.cpp
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/test/Driver/sycl.c
Commit ddd11273d9d0807e25a34181e5978e3307d78dc2 by simon.moll
Remove BinaryOperator::CreateFNeg

Use UnaryOperator::CreateFNeg instead.

Summary:
With the introduction of the native fneg instruction, the
fsub -0.0, %x idiom is obsolete. This patch makes LLVM
emit fneg instead of the idiom in all places.

Reviewed By: cameron.mcinally

Differential Revision: https://reviews.llvm.org/D75130
The file was modifiedllvm/test/Transforms/InstCombine/fpcast.ll
The file was modifiedclang/test/CodeGen/complex-math.c
The file was modifiedllvm/test/Transforms/InstCombine/fast-math.ll
The file was modifiedllvm/test/Transforms/InstCombine/pow-1.ll
The file was modifiedllvm/test/Transforms/InstCombine/minnum.ll
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/test/Transforms/Reassociate/fast-basictest.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fneg.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fmul.ll
The file was modifiedllvm/test/Transforms/InstCombine/maxnum.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
The file was modifiedllvm/include/llvm/IR/InstrTypes.h
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
The file was modifiedllvm/test/Transforms/InstCombine/cos-sin-intrinsic.ll
The file was modifiedllvm/test/Transforms/InstCombine/maximum.ll
The file was modifiedllvm/test/Transforms/InstCombine/minmax-fp.ll
The file was modifiedllvm/test/Transforms/Reassociate/fp-expr.ll
The file was modifiedllvm/lib/Transforms/Scalar/Reassociate.cpp
The file was modifiedllvm/test/Transforms/InstCombine/minimum.ll
The file was modifiedllvm/test/Transforms/InstCombine/fsub.ll
Commit 75d4d4bd028f6a5f24ef41dbbc45bed65b2305cf by john.brawn
Add an attribute registry so plugins can add attributes

When constructing a ParsedAttr the ParsedAttrInfo gets looked up in the
AttrInfoMap, which is auto-generated using tablegen. If that lookup fails then
we look through the ParsedAttrInfos that plugins have added to the registry and
check if any has a spelling that matches.

Differential Revision: https://reviews.llvm.org/D31338
The file was modifiedclang/utils/TableGen/ClangAttrEmitter.cpp
The file was modifiedclang/lib/Sema/ParsedAttr.cpp
The file was modifiedclang/include/clang/Sema/ParsedAttr.h
The file was modifiedclang/include/clang/Basic/AttributeCommonInfo.h
The file was modifiedclang/lib/Basic/Attributes.cpp
Commit 4ef272ec9c5f737b8d63a3cc8870d8d63bf0385e by nikita.ppv
[InstCombine] DCE instructions earlier

When InstCombine initially populates the worklist, it already
performs constant folding and DCE. However, as the instructions
are initially visited in program order, this DCE can pick up only
the last instruction of a dead chain, the rest would only get
picked up in the main InstCombine run.

To avoid this, we instead perform the DCE in separate pass over the
collected instructions in reverse order, which will allow us to
pick up full dead instruction chains. We already need to do this
reverse iteration anyway to populate the worklist, so this
shouldn't add extra cost.

This by itself only fixes a small part of the problem though:
The same basic issue also applies during the main InstCombine loop.
We generally always want DCE to occur as early as possible,
because it will allow one-use folds to happen. Address this by also
performing DCE while adding deferred instructions to the main worklist.

This drops the number of tests that perform more than 2 InstCombine
iterations from ~80 to ~40. There's some spurious test changes due
to operand order / icmp toggling.

Differential Revision: https://reviews.llvm.org/D75008
The file was modifiedllvm/include/llvm/Transforms/InstCombine/InstCombineWorklist.h
The file was modifiedllvm/test/Transforms/InstCombine/2010-11-01-lshr-mask.ll
The file was modifiedllvm/test/Transforms/InstCombine/select-imm-canon.ll
The file was modifiedllvm/test/Transforms/InstCombine/logical-select.ll
The file was modifiedllvm/test/Transforms/InstCombine/pr44245.ll
The file was modifiedllvm/test/Transforms/InstCombine/sub-ashr-or-to-icmp-select.ll
The file was modifiedllvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineInternal.h
The file was modifiedllvm/test/Transforms/InstCombine/vec_sext.ll
The file was modifiedllvm/test/Transforms/InstCombine/sub-ashr-and-to-icmp-select.ll
The file was modifiedllvm/test/Transforms/InstCombine/demorgan-sink-not-into-xor.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit 512f345a5db163ac52bf0223f749acc6188e6138 by ntv
[mlir] Hotfix - Rename MLIRRuntimeUtils to mlir_runtime_utils
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
The file was modifiedmlir/test/CMakeLists.txt
Commit 0c8a21879872c8ca8aa5966263f9d67207b3108e by sameer.sahasrabuddhe
[AMDGPU] improve fragile test for divergent branches

Summary:
The affected LIT test intends to test the correct use of divergence
analysis to detect a divergent branch with a uniform predicate. The
passes involved are LLVM IR passes, but the test runs llc and tries to
match against generated ISA, which makes it hard to demonstrate that
the intended behavior was really tested. Replaced this with a test
that invokes opt on the required passes and then checks for the
appropriate changes in the LLVM IR.

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D75267
The file was modifiedllvm/test/CodeGen/AMDGPU/divergent-branch-uniform-condition.ll
Commit 04da3dfecc199a7fdd262b06eeb399fc8ce0d1f6 by rnk
Forward declare special case lists

This avoids pulling in unordered_map from TrigramIndex.h:

$ diff -u thedeps-before.txt thedeps-after.txt | \
        grep '^[-+] ' | sort | uniq -c | sort -nr
    976 -    ../llvm/include/llvm/Support/TrigramIndex.h
    976 -    ../llvm/include/llvm/Support/SpecialCaseList.h
    976 -    ../clang/include/clang/Basic/SanitizerSpecialCaseList.h
    502 -    ../../../PROGRA~2/MIB055~1/2019/PROFES~1/VC/Tools/MSVC/14.24.28314/include/unordered_map
    467 -    ../../../PROGRA~2/MIB055~1/2019/PROFES~1/VC/Tools/MSVC/14.24.28314/include/xhash
    467 -    ../../../PROGRA~2/MIB055~1/2019/PROFES~1/VC/Tools/MSVC/14.24.28314/include/xbit_ops.h
    212 -    ../llvm/include/llvm/ADT/StringSet.h
The file was modifiedclang/include/clang/Basic/XRayLists.h
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Basic/SanitizerBlacklist.cpp
The file was modifiedclang/include/clang/Basic/SanitizerBlacklist.h
The file was modifiedclang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
The file was modifiedclang/include/clang/Basic/SanitizerSpecialCaseList.h
The file was modifiedclang/lib/Basic/XRayLists.cpp
Commit bc8836651fba3304d92e1025ff6a918f25e9e209 by rnk
Forward declare FileEntry and DirectoryEntry in Module.h

FileManager.h is an expensive header (~350ms for me in isolation), so
try to do without it.

Notably, we need to avoid checking the alignment of FileEntry, which
happens for DenseMap<FileEntry*> and PointerUnion<FileEntry*>. I
adjusted the code to avoid PointerUnion, and moved the DenseMap
insertion to the .cpp file.

Globally, this only saved about ~17 includes of the related headers
because SourceManager.h still includes FileManager.h, and it is more
popular than Module.h.
The file was modifiedclang/lib/Lex/ModuleMap.cpp
The file was modifiedclang/include/clang/Serialization/ModuleFile.h
The file was modifiedclang/lib/Basic/Module.cpp
The file was modifiedclang/include/clang/Basic/Module.h
Commit d4ad2adb0046ef5bc4276552f978b43446e9c0c2 by eric
[libc++] Mark more try_lock tests as possibly flaky.

These tests check that an operations happens within a specified
deadline, which causes flaky failures on slow machines or machines
under heavy load.

By adding the // FLAKY_TEST. tag it allows the test suite to
retry or ignore the tests
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp
Commit d32fa59fa007ba53b8453f96a5661b149e4715c7 by daltenty
[XCOFF] Don't emit non-external labels in the symbol table and handle MCSA_LGlobal

Summary:
We need to handle the  MCSA_LGlobal case in emitSymbolAttribute for functions marked internal in the IR so that the
appropriate storage class is emitted on the function descriptor csect.  As part of this we need to make sure that external
labels are not emitted into the symbol table, so we don't emit the descriptor label in the object writing path.

Reviewers: jasonliu, DiggerLin, hubert.reinterpretcast

Reviewed By: jasonliu

Subscribers: Xiangling_L, wuzish, nemanjai, hiraditya, jsji, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D74968
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-const.ll
The file was modifiedllvm/lib/MC/MCXCOFFStreamer.cpp
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
The file was addedllvm/test/CodeGen/PowerPC/aix-internal.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
Commit b26c88e3c6e08f8f78ab4291bc85b5685241f493 by alexfh
[clang-tidy] Store all ranges in clang::tooling::Diagnostic

Summary: Instead of dropping all the ranges associated with a Diagnostic when
converting them to a ClangTidy error, instead attach them to the ClangTidyError,
so they can be consumed by other APIs.

Patch by Joe Turner <joturner@google.com>.
Differential Revision: https://reviews.llvm.org/D69782
The file was modifiedclang/include/clang/Tooling/DiagnosticsYaml.h
The file was modifiedclang/unittests/Tooling/DiagnosticsYamlTest.cpp
The file was modifiedclang/lib/Tooling/Core/Diagnostic.cpp
The file was modifiedclang/include/clang/Tooling/Core/Diagnostic.h
The file was modifiedclang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
Commit 01b209679f69cc42e96f05a3c37ba06480094819 by stephen.neuendorffer
[MLIR] add show-dialects option for mlir-opt

Display the list of dialects known to mlir-opt.  This is useful
for ensuring that linkage has happened correctly, for instance.

Differential Revision: https://reviews.llvm.org/D74865
The file was modifiedmlir/tools/mlir-opt/mlir-opt.cpp
The file was addedmlir/test/mlir-opt/commandline.mlir
Commit 9227a74b7e8ff9b9cb5924e03547b940dc06e331 by herhut
[MLIR][Loops] Expose transformations on loop.parallel in header (NFC).

Summary:
This change does not add any functionality but merely exposes existing
static functions to make the associated transformations available
outside of their testing passes.

Differential Revision: https://reviews.llvm.org/D75232
The file was addedmlir/include/mlir/Dialect/LoopOps/Transforms.h
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp
The file was modifiedmlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp
Commit 4a966e5dd75160a7df0c7231e4c760a2bb127112 by ntv
[mlir] NFC - Split out RunnerUtils that don't require a C++ runtime

Summary:
This revision split out a new CRunnerUtils library that supports
MLIR execution on targets without a C++ runtime.

Differential Revision: https://reviews.llvm.org/D75257
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp
The file was addedmlir/lib/ExecutionEngine/CRunnerUtils.cpp
The file was addedmlir/include/mlir/ExecutionEngine/CRunnerUtils.h
The file was modifiedmlir/test/mlir-cpu-runner/bare_ptr_call_conv.mlir
The file was modifiedmlir/test/CMakeLists.txt
The file was modifiedmlir/lib/ExecutionEngine/CMakeLists.txt
The file was modifiedmlir/include/mlir/ExecutionEngine/RunnerUtils.h
Commit 256e61699b19c8e3545c948547c12872a8567250 by paolosev
[LLDB] Fix AddressSanitizer failure in MemoryCache

The lldb sanitizer bot is flagging a container-overflow error after we
introduced test TestWasm.py. MemoryCache::Read didn't behave correctly
in case of partial reads that can happen with object files whose size is
smaller that the cache size. It should return the actual number of bytes
read and not try to fill the buffer with random memory.
Module::GetMemoryObjectFile needs to be modified accordingly, to resize
its buffer to only the size that was read.

Differential Revision: https://reviews.llvm.org/D75200
The file was modifiedlldb/source/Target/Memory.cpp
The file was modifiedlldb/source/Core/Module.cpp
Commit 84e6fd815a50965e07a689ade85d0ede0711b16a by spatel
[AArch64] regenerate complete test checks; NFC
The file was modifiedllvm/test/CodeGen/AArch64/arm64-dup.ll
Commit 2f090ce8904cd973bb336ad56006288e04a05178 by spatel
[AArch64] add splat shuffle combine test; NFC
The file was modifiedllvm/test/CodeGen/AArch64/arm64-dup.ll
Commit 90fd859f51d7a77ccb7978804af00c847e8e4d6d by spatel
[x86] use instruction-level fast-math-flags to drive MachineCombiner

The code changes here are hopefully straightforward:

1. Use MachineInstruction flags to decide if FP ops can be reassociated
   (use both "reassoc" and "nsz" to be consistent with IR transforms;
   we probably don't need "nsz", but that's a safer interpretation of
   the FMF).
2. Check that both nodes allow reassociation to change instructions.
   This is a stronger requirement than we've usually implemented in
   IR/DAG, but this is needed to solve the motivating bug (see below),
   and it seems unlikely to impede optimization at this late stage.
3. Intersect/propagate MachineIR flags to enable further reassociation
   in MachineCombiner.

We managed to make MachineCombiner flexible enough that no changes are
needed to that pass itself. So this patch should only affect x86
(assuming no other targets have implemented the hooks using MachineIR
flags yet).

The motivating example in PR43609 is another case of fast-math transforms
interacting badly with special FP ops created during lowering:
https://bugs.llvm.org/show_bug.cgi?id=43609
The special fadd ops used for converting int to FP assume that they will
not be altered, so those are created without FMF.

However, the MachineCombiner pass was being enabled for FP ops using the
global/function-level TargetOption for "UnsafeFPMath". We managed to run
instruction/node-level FMF all the way down to MachineIR sometime in the
last 1-2 years though, so we can do better now.

The test diffs require some explanation:

1. llvm/test/CodeGen/X86/fmf-flags.ll - no target option for unsafe math was
   specified here, so MachineCombiner kicks in where it did not previously;
   to make it behave consistently, we need to specify a CPU schedule model,
   so use the default model, and there are no code diffs.
2. llvm/test/CodeGen/X86/machine-combiner.ll - replace the target option for
   unsafe math with the equivalent IR-level flags, and there are no code diffs;
   we can't remove the NaN/nsz options because those are still used to drive
   x86 fmin/fmax codegen (special SDAG opcodes).
3. llvm/test/CodeGen/X86/pow.ll - similar to #1
4. llvm/test/CodeGen/X86/sqrt-fastmath.ll - similar to #1, but MachineCombiner
   does some reassociation of the estimate sequence ops; presumably these are
   perf wins based on latency/throughput (and we get some reduction of move
   instructions too); I'm not sure how it affects numerical accuracy, but the
   test reflects reality better now because we would expect MachineCombiner to
   be enabled if the IR was generated via something like "-ffast-math" with clang.
5. llvm/test/CodeGen/X86/vec_int_to_fp.ll - this is the test added to model PR43609;
   the fadds are not reassociated now, so we should get the expected results.
6. llvm/test/CodeGen/X86/vector-reduce-fadd-fast.ll - similar to #1
7. llvm/test/CodeGen/X86/vector-reduce-fmul-fast.ll - similar to #1

Differential Revision: https://reviews.llvm.org/D74851
The file was modifiedllvm/test/CodeGen/X86/fmf-flags.ll
The file was modifiedllvm/test/CodeGen/X86/pow.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-fadd-fast.ll
The file was modifiedllvm/lib/CodeGen/TargetInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/X86/vec_int_to_fp.ll
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-fmul-fast.ll
The file was modifiedllvm/test/CodeGen/X86/machine-combiner.ll