SuccessChanges

Summary

  1. [analyzer] Add support for ObjCIndirectCopyRestoreExpr. (details)
  2. [analyzer] ObjCAutoreleaseWriteChecker: Support explicit autoreleasepools. (details)
  3. [libc++] Support move construction and assignment in <thread> in C++03 (details)
  4. [MLIR] Shape to standard dialect lowering (details)
  5. [lldb/Test] Don't print 'command invoked' (details)
  6. [doc] Fix typo. (details)
  7. [libc++] Fix test broken in C++03 due to requiring C++11 features from vector (details)
  8. [profile] Sync InstrProfData.inc with llvm. (details)
  9. [XCOFF][AIX] Use 'L..' instead of 'L' for PrivateGlobalPrefix (details)
  10. [InstSimplify] fix bug in matching or-with-not op (PR46083) (details)
  11. [AIX] Change the default target CPU to power4 for AIX on Power (details)
  12. [doc] Fix use of ` where `` was intended in attribute docs. (details)
  13. [VectorCombine] Add multi-use multiply test for D80885 (details)
  14. [JITLink] Skip debug sections in MachO objects. (details)
  15. [NewGVN] Add test to ensure metadata is preserved for ssa_copy (NFC) (details)
  16. [AArch64] Add ld3 test case for renaming in ldst-opt (NFC). (details)
  17. [VectorCombine] Add multi-use shl test for D80885 (details)
  18. CoroSplit: Fix coroutine splitting for retcon and retcon.once (details)
  19. lld: use `std::make_unique` (NFC) (details)
  20. [AArch64] Fix stp-opt-with-renaming-ld3.mir with expensive checks. (details)
  21. [lldb/StringPrinter] Convert DecodedCharBuffer to a class, NFC (details)
  22. [lldb/StringPrinter] Support strings with invalid utf8 sub-sequences (details)
  23. [lldb][NFC] Fix documentation formatting in ASTResultSynthesizer (details)
  24. Define __SPIR__ macro for spir/spir64 targets. (details)
  25. [clang-format] [PR46159] Linux kernel 'C' code uses 'try' as a variable name, allow clang-format to handle such cases (details)
  26. [clang-format] [PR46157] Wrong spacing of negative literals with use of operator (details)
  27. [mlir] Remove unneeded inference trait/fns (details)
  28. [IRInterpreter] Unused. Drive-by cleanup. NFCI. (details)
  29. Replace separator in OpenMP variant name mangling. (details)
  30. [Darwin] Improve runtime OS version checks (details)
  31. X86: Switch fastregalloc test to use generated checks (details)
  32. RegAllocFast: Record internal state based on register units (details)
  33. [clang-tidy]: Added modernize-replace-disallow-copy-and-assign-macro (details)
  34. [SVE] Eliminate calls to default-false VectorType::get() from IR (details)
  35. [WebAssembly] Add support for -mexec-model=reactor (details)
  36. Reland "[WebAssembly] Eliminate range checks on br_tables" (details)
  37. [gn build] Fix link with ld.bfd and gold. (details)
  38. [X86] Separate X86_CPU_TYPE_COMPAT_WITH_ALIAS from X86_CPU_TYPE_COMPAT. NFC (details)
  39. [gn build] Port 7f50c15be5c (details)
  40. [gn build] Port e636e6b79ac (details)
  41. Add a test for preserving state on the non-expr thread across expression evaluation. (details)
  42. [lldb/Test] Remove un(used|needed|maintained) files from lldbsuite. (details)
  43. [lldb/Test] Python <3.5 requires **kwargs to come last (details)
  44. [mlir] [VectorOps] Use 'vector.flat_transpose' for 2-D 'vector.tranpose' (details)
  45. [clangd] Fix forgotten propagation of AsnycPreamble flag (details)
  46. [mlir][Linalg] Add support for fusion between indexed_generic ops and generic ops on tensors. (details)
  47. [mlir][Linalg] Add support for fusion between indexed_generic ops and tensor_reshape ops (details)
  48. Introduce a "gc-live" bundle for the gc arguments of a statepoint (details)
  49. [mlir][StandardToSPIRV] Handle i1 case for lowering std.zexti to SPIR-V. (details)
  50. [AArch64][GlobalISel] Select uzp1 and uzp2 (details)
  51. [Statepoint] Fix signed vs unsigned in index handling (details)
  52. Fix bug in newly added VersionBase::operator>= (details)
  53. [AArch64][GlobalISel] Add selection support for rev16, rev32, and rev64 (details)
  54. [WebAssembly] Fix ISel crash in SIGN_EXTEND_INREG lowering (details)
  55. [AArch64][NFC] Regenerate arm64-rev.ll (details)
  56. [Statepoints][CGP] Minor parameter type cleanup (details)
  57. Fix typo in filename comment. (details)
  58. Fix "Statistics are disabled" (details)
  59. [StackSafety,NFC] Add statistic counters (details)
Commit e94192198f8a949c7880620b06e9ef85d87ad4b3 by Artem Dergachev
[analyzer] Add support for ObjCIndirectCopyRestoreExpr.

Idiomatic objc using ARC will generate this expression regularly due to
NSError out-param passing.  Providing an implementation for this
expression allows the analyzer to explore many more codepaths in ARC
projects.

The current implementation is not perfect but the differences are hopefully
subtle enough to not cause much problems.

rdar://63918914

Differential Revision: https://reviews.llvm.org/D81071
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was addedclang/test/Analysis/objc-indirect-copy-restore.m
Commit 7113271528a4c6efc8b57f25ead28f65b5e48757 by Artem Dergachev
[analyzer] ObjCAutoreleaseWriteChecker: Support explicit autoreleasepools.

The checker currently supports only a whitelist of block-enumeration
methods which are known to internally clear an autorelease pool.
Extend this checker to detect writes within the scope of explicit
@autoreleasepool statements.

rdar://25301111

Differential Revision: https://reviews.llvm.org/D81072
The file was modifiedclang/test/Analysis/autoreleasewritechecker_test.m
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp
Commit 62cfa3a0b5d20e6d0d5abe95412ab271d934083c by Louis Dionne
[libc++] Support move construction and assignment in <thread> in C++03

Libc++ provides support for <thread> in C++03 as an extension. Furthermore,
it does not support any compiler that doesn't have rvalue references. It
is hence possible to provide the move constructor and move assignment
operator in C++03.
The file was modifiedlibcxx/include/thread
The file was modifiedlibcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.assign/move2.pass.cpp
Commit 3713314bfae3dc9a793c152e8a698a2ca1444f6c by frgossen
[MLIR] Shape to standard dialect lowering

Add a new pass to lower operations from the `shape` to the `std` dialect.
The conversion applies only to the `size_to_index` and `index_to_size`
operations and affected types.
Other patterns will be added as needed.

Differential Revision: https://reviews.llvm.org/D81091
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was modifiedmlir/include/mlir/InitAllPasses.h
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was addedmlir/include/mlir/Conversion/ShapeToStandard/ShapeToStandard.h
The file was addedmlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir
The file was addedmlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp
The file was addedmlir/lib/Conversion/ShapeToStandard/CMakeLists.txt
Commit 96e7d19a1f22f5d2018377b70b4c98e0f59ea412 by Jonas Devlieghere
[lldb/Test] Don't print 'command invoked'

The different tools constructing dotest invocations (lit and
lldb-dotest) already print the command invocation so there's no need to
print it again in the dotest output.

My motivation for removing it is that it doesn't include the Python
interpreter and every time I accidentally copy it, the command fails
with an `ImportError`.

Differential revision: https://reviews.llvm.org/D81032
The file was modifiedlldb/packages/Python/lldbsuite/test/dotest.py
Commit bee2c2708f3e38261825439bc8b0fbe8b795854d by noreply
[doc] Fix typo.

The absence of a space here caused this codeblock to be missing from the rendered output.
The file was modifiedclang/include/clang/Basic/AttrDocs.td
Commit 2bbfa6b02b3e5bb2458eae8bc8ef4e1517e994ce by Louis Dionne
[libc++] Fix test broken in C++03 due to requiring C++11 features from vector
The file was modifiedlibcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_all.pass.cpp
Commit 14bb6770f2c6597e61d8a696da28483c66f37aed by yamauchi
[profile] Sync InstrProfData.inc with llvm.

Reviewers: davidxl

Subscribers: #sanitizers, llvm-commits

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D81038
The file was modifiedcompiler-rt/include/profile/InstrProfData.inc
Commit f5415f7c5a06e8563c650a3ecfd6435d36ca3a66 by jasonliu
[XCOFF][AIX] Use 'L..' instead of 'L' for PrivateGlobalPrefix

Without this change, names start with 'L' will get created as
temporary symbol in MCContext::createSymbol.

Some other potential prefix considered:
.L, does not work for AIX, as a function start with L will end
up with .L as prefix for its function entry point.

..L could work, but it does not play well with the convention
on AIX that anything start with '.' are considered as entry point.

L. could work, but not sure if it's safe enough, as it's possible
to have suffixes like .something append to a plain L, giving L.something
which is not necessarily a temporary.

That's why we picked L.. for now.

Differential Revision: https://reviews.llvm.org/D80831
The file was modifiedllvm/test/CodeGen/PowerPC/aix-extern-weak.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-lower-block-address.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix64-cc-byval.ll
The file was modifiedllvm/lib/MC/MCAsmInfoXCOFF.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-weak.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-toc.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-cc-abi.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-cc-byval.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-extern.ll
The file was modifiedllvm/test/CodeGen/PowerPC/lower-globaladdr32-aix-asm.ll
The file was addedllvm/test/CodeGen/PowerPC/aix-xcoff-externL.ll
The file was modifiedllvm/test/CodeGen/PowerPC/lower-globaladdr64-aix-asm.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-lower-constant-pool-index.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-cc-byval-mem.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-lower-jump-table.ll
Commit a9fe69c359de653015c39e413e48630d069abe27 by spatel
[InstSimplify] fix bug in matching or-with-not op (PR46083)
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/or.ll
Commit ba4afe6f7a8453b24ee0b664e40d157d15a54034 by wanyu9511
[AIX] Change the default target CPU to power4 for AIX on Power

Summary: This patch changes the AIX default target CPU to power4 since this is the the lowest arch for the lowest OS level supported.

Reviewers: hubert.reinterpretcast, cebowleratibm, daltenty

Reviewed By: hubert.reinterpretcast

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D80835
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp
The file was addedclang/test/Driver/aix-mcpu-default.c
Commit 5f478651eb31ac81acf9a521c3d44c5e1c4af49a by noreply
[doc] Fix use of ` where `` was intended in attribute docs.

`...` is rST syntax for hyperlinks etc. ``...`` should be used for code snippets.
The file was modifiedclang/include/clang/Basic/AttrDocs.td
Commit 9f8ea2e6cf7c855aa4f89993a6c696390cb07d07 by llvm-dev
[VectorCombine] Add multi-use multiply test for D80885
The file was modifiedllvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant.ll
Commit d27cbf03cf9c43b4b98f031d63f23cfcfe3d587a by Lang Hames
[JITLink] Skip debug sections in MachO objects.

Debug sections will not be linked into the final executable and may contain
ambiguous relocations*. Skipping them avoids both some unnecessary processing
cost and the hassle of dealing with the problematic relocations.

* E.g. __debug_ranges contains non-extern relocations to the end of functions
hat begin with named symbols. Under the usual rules for interpreting non-extern
relocations these will be incorrectly associated with the following block, or
no block at all (if there is a gap between one block and the next).
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.h
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
The file was modifiedllvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
The file was addedllvm/test/ExecutionEngine/JITLink/X86/MachO_skip_debug_sections.s
Commit 195fa4bfae102c0d6fd6966618ed3d3c39b1d400 by flo
[NewGVN] Add test to ensure metadata is preserved for ssa_copy (NFC)

Add a new test that checks that metadata is preserved when ssa_copy
calls introduced by PredicateInfo are replaced by their original
values.
The file was addedllvm/test/Transforms/NewGVN/preserve-metadata-for-predicate-replacements.ll
Commit fd24bdbe50fa4aece574d0b53e68c37d23f7df35 by flo
[AArch64] Add ld3 test case for renaming in ldst-opt (NFC).

The test case highlights a mis-compile reported in PR46105, where
a consecutive register list is renamed, which invalidates some other
used registers.
The file was addedllvm/test/CodeGen/AArch64/stp-opt-with-renaming-ld3.mir
Commit c2e27ac1ce3e3141f9cf0c4f6982cd56347bc323 by llvm-dev
[VectorCombine] Add multi-use shl test for D80885
The file was modifiedllvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant.ll
Commit 2e4c5d1c483a986dbb3fc6486bdb2f0eb2adc8c8 by aschwaighofer
CoroSplit: Fix coroutine splitting for retcon and retcon.once

Summary:
For retcon and retcon.once coroutines we assume that all uses of spills
can be sunk past coro.begin. This simplifies handling of instructions
that escape the address of an alloca.

The current implementation would have issues if the address of the
alloca is escaped before coro.begin. (It also has issues with casts before and
uses of those casts after the coro.begin instruction)

  %alloca_addr = alloca ...
  %escape  = ptrtoint %alloca_addr
  coro.begin
  store %escape to %alloca_addr

rdar://60272809

Subscribers: hiraditya, modocache, mgrang, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81023
The file was addedllvm/test/Transforms/Coroutines/coro-retcon-frame.ll
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
Commit 9cb2badc596497f49ec2631bb5b8a2300656e75c by Saleem Abdulrasool
lld: use `std::make_unique` (NFC)

The LLVM code base already uses C++14, use std::make_unique
to avoid the explicit constructor invocation via new and to avoid
spelling out the type twice.
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileToAtoms.cpp
Commit a3fcd6476a4e4270ea19137656d94d395d303349 by flo
[AArch64] Fix stp-opt-with-renaming-ld3.mir with expensive checks.

Unconditionally use -verify-machineinstrs and XFAIL the test until
fixed.
The file was modifiedllvm/test/CodeGen/AArch64/stp-opt-with-renaming-ld3.mir
Commit 7822b8a817d85827110f3047f4ec63f6825743a4 by Vedant Kumar
[lldb/StringPrinter] Convert DecodedCharBuffer to a class, NFC

The m_size and m_data members of DecodedCharBuffer are meant to be
private.
The file was modifiedlldb/source/DataFormatters/StringPrinter.cpp
Commit 4699a7e23010b7c0df49b64f8bea63919825a787 by Vedant Kumar
[lldb/StringPrinter] Support strings with invalid utf8 sub-sequences

Support printing strings which contain invalid utf8 sub-sequences, e.g.
strings like "hello world \xfe", instead of bailing out with "Summary
Unavailable".

I took the opportunity here to delete some hand-rolled utf8 -> utf32
conversion code and replace it with calls into llvm's Support library.

rdar://61554346
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py
The file was modifiedlldb/unittests/DataFormatter/StringPrinterTests.cpp
The file was modifiedlldb/source/DataFormatters/StringPrinter.cpp
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/main.cpp
Commit a23d0a06d4b7996a86c3d1a7e47a4e56d6181b10 by Raphael Isemann
[lldb][NFC] Fix documentation formatting in ASTResultSynthesizer

This comment apparently didn't survive the great LLDB reformatting unharmed.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp
Commit 3a1b07506c1fc6e6aee528289341aa0d0d806814 by vyacheslav.p.zakharin
Define __SPIR__ macro for spir/spir64 targets.

Differential Revision: https://reviews.llvm.org/D80655
The file was modifiedclang/lib/Basic/Targets/SPIR.cpp
The file was modifiedclang/test/Preprocessor/predefined-macros.c
Commit 6a0484f04b628870fb7cd0757a72d73294ff5346 by mydeveloperday
[clang-format] [PR46159] Linux kernel 'C' code uses 'try' as a variable name, allow clang-format to handle such cases

Reviewed By: curdeius

Differential Revision: https://reviews.llvm.org/D80940
The file was modifiedclang/lib/Format/FormatTokenLexer.cpp
The file was modifiedclang/lib/Format/FormatTokenLexer.h
The file was modifiedclang/unittests/Format/FormatTest.cpp
Commit 6de794e2074b8d0ceb6215f808fb788555fc683d by mydeveloperday
[clang-format] [PR46157] Wrong spacing of negative literals with use of operator

Summary:
see https://bugs.llvm.org/show_bug.cgi?id=46157

Reviewed By: curdeius

Differential Revision: https://reviews.llvm.org/D80933
The file was modifiedclang/lib/Format/TokenAnnotator.cpp
The file was modifiedclang/unittests/Format/FormatTest.cpp
Commit 5b454b98d6488a27decbe7e21a361b2579376ec2 by jpienaar
[mlir] Remove unneeded inference trait/fns

Therse are all handled with the simple return type inference in ODS.
Also update some summaries to match what is recommended in ODS doc.
The file was modifiedmlir/lib/Dialect/Shape/IR/Shape.cpp
The file was modifiedmlir/include/mlir/Dialect/Shape/IR/ShapeOps.td
Commit 7c1b060c3c65cac50edec5cceb6653957c344d96 by ditaliano
[IRInterpreter] Unused. Drive-by cleanup. NFCI.
The file was modifiedlldb/source/Expression/IRInterpreter.cpp
Commit 8bd7e4188a096b063065aac70ce39129c479f124 by tianshilei1992
Replace separator in OpenMP variant name mangling.

Summary:
Nvidia PTX does not allow `.` to appear in identifiers, so OpenMP variant mangling now uses `$` to separate segments of the mangled name for variants of functions declared via `declare variant`.

Reviewers: jdoerfert, Hahnfeld

Reviewed By: jdoerfert

Subscribers: yaxunl, guansong, sstefan1, cfe-commits

Tags: #openmp, #clang

Differential Revision: https://reviews.llvm.org/D80439
The file was addedclang/test/OpenMP/nvptx_declare_variant_name_mangling.cpp
The file was modifiedclang/lib/AST/OpenMPClause.cpp
The file was modifiedclang/include/clang/AST/Decl.h
Commit ba6b1b4353e33a7a36bcbad1d1c1157826197fd2 by julian.lettner
[Darwin] Improve runtime OS version checks

Use a struct to represent numerical versions instead of encoding release
names in an enumeration. This avoids the need to extend the enumeration
every time there is a new release.

Rename `GetMacosVersion() -> GetMacosAlignedVersion()` to better reflect
how this is used on non-MacOS platforms.

Reviewed By: delcypher

Differential Revision: https://reviews.llvm.org/D79970
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_mac.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.h
Commit a574edbba2b24fcfb733aa2d82308131f5b7d2d6 by Matthew.Arsenault
X86: Switch fastregalloc test to use generated checks
The file was modifiedllvm/test/CodeGen/X86/2010-06-28-FastAllocTiedOperand.ll
Commit 66251f7e1de79a7c1620659b7f58352b8c8e892e by Matthew.Arsenault
RegAllocFast: Record internal state based on register units

Record internal state based on register units. This is often more
efficient as there are typically fewer register units to update
compared to iterating over all the aliases of a register.

Original patch by Matthias Braun, but I've been rebasing and fixing it
for almost 2 years and fixed a few bugs causing intermediate failures
to make this patch independent of the changes in
https://reviews.llvm.org/D52010.
The file was modifiedllvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
The file was modifiedllvm/test/CodeGen/X86/pr44749.ll
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
The file was modifiedllvm/test/CodeGen/X86/fast-isel-nontemporal.ll
The file was modifiedllvm/test/CodeGen/X86/pr1489.ll
The file was modifiedllvm/test/CodeGen/X86/pr30813.ll
The file was modifiedllvm/test/CodeGen/X86/pr32241.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-mask-zext-bugfix.ll
The file was modifiedllvm/test/CodeGen/X86/regalloc-fast-missing-live-out-spill.mir
The file was modifiedllvm/test/CodeGen/X86/pr39733.ll
The file was modifiedllvm/test/CodeGen/X86/2009-04-14-IllegalRegs.ll
The file was modifiedllvm/test/CodeGen/X86/pr32345.ll
The file was modifiedllvm/test/CodeGen/PowerPC/addegluecrash.ll
The file was modifiedllvm/test/CodeGen/X86/crash-O0.ll
The file was modifiedllvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
The file was modifiedllvm/test/CodeGen/X86/swift-return.ll
The file was modifiedllvm/test/CodeGen/Mips/implicit-sret.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/wwm-reserved.ll
The file was modifiedllvm/test/CodeGen/AArch64/arm64-fast-isel-conversion.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/partial-sgpr-to-vgpr-spills.ll
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/llvm-ir/fptosi_and_fptoui.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-unordered.ll
The file was modifiedllvm/test/CodeGen/X86/atomic64.ll
The file was modifiedllvm/test/DebugInfo/X86/op_deref.ll
The file was modifiedllvm/test/CodeGen/X86/pr32340.ll
The file was modifiedllvm/test/CodeGen/X86/pr32451.ll
The file was modifiedllvm/test/CodeGen/X86/atomic32.ll
The file was modifiedllvm/test/CodeGen/X86/pr34592.ll
The file was modifiedllvm/test/CodeGen/AArch64/fast-isel-sp-adjust.ll
The file was modifiedllvm/test/CodeGen/X86/pr27591.ll
The file was modifiedllvm/test/CodeGen/Mips/atomic.ll
The file was modifiedllvm/test/CodeGen/X86/swifterror.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/spill-m0.ll
The file was modifiedllvm/test/CodeGen/PowerPC/vsx.ll
The file was modifiedllvm/test/CodeGen/X86/avx-load-store.ll
The file was modifiedllvm/test/CodeGen/X86/pr30430.ll
The file was modifiedllvm/test/CodeGen/X86/pr32284.ll
The file was modifiedllvm/test/CodeGen/Mips/atomic-min-max.ll
The file was modifiedllvm/test/CodeGen/X86/extend-set-cc-uses-dbg.ll
The file was modifiedllvm/test/CodeGen/ARM/legalize-bitcast.ll
Commit e636e6b79ac06b13059e46b49acb4d9de204c75b by kkleine
[clang-tidy]: Added modernize-replace-disallow-copy-and-assign-macro

Summary:
This check finds macro expansions of `DISALLOW_COPY_AND_ASSIGN(Type)` and
replaces them with a deleted copy constructor and a deleted assignment operator.

Before the `delete` keyword was introduced in C++11 it was common practice to
declare a copy constructor and an assignment operator as a private members. This
effectively makes them unusable to the public API of a class.

With the advent of the `delete` keyword in C++11 we can abandon the
`private` access of the copy constructor and the assignment operator and
delete the methods entirely.

Migration example:

```
lang=dif
class Foo {
  private:
  -  DISALLOW_COPY_AND_ASSIGN(Foo);
  +  Foo(const Foo &) = delete;
  +  const Foo &operator=(const Foo &) = delete;
  };
```

Reviewers: alexfh, hokein, aaron.ballman, njames93

Reviewed By: njames93

Subscribers: Eugene.Zelenko, mgorny, xazax.hun, cfe-commits

Tags: #clang, #clang-tools-extra

Differential Revision: https://reviews.llvm.org/D80531
The file was addedclang-tools-extra/docs/clang-tidy/checks/modernize-replace-disallow-copy-and-assign-macro.rst
The file was addedclang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/list.rst
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.h
The file was modifiedclang-tools-extra/clang-tidy/modernize/CMakeLists.txt
The file was addedclang-tools-extra/test/clang-tidy/checkers/modernize-replace-disallow-copy-and-assign-macro.cpp
Commit 900f78a714c583dd87432a9c89f6ccade8430fac by ctetreau
[SVE] Eliminate calls to default-false VectorType::get() from IR

Reviewers: efriedma, kmclaughlin, sdesmalen, dexonsmith, dblaikie

Reviewed By: efriedma

Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80261
The file was modifiedllvm/lib/IR/ConstantFold.cpp
The file was modifiedllvm/include/llvm/IR/MatrixBuilder.h
The file was modifiedllvm/lib/IR/Constants.cpp
The file was modifiedllvm/lib/IR/Core.cpp
The file was modifiedllvm/lib/IR/IRBuilder.cpp
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was modifiedllvm/lib/IR/DataLayout.cpp
Commit d496437a0bfd6d135343026cdb7b6a69cb6af536 by sunfish
[WebAssembly] Add support for -mexec-model=reactor

This adds a -mexec-model= command-line flag. The default value is "command"
which is no change from the current behavior. The other option is "reactor"
which enables the WASI Reactor ABI:

https://github.com/WebAssembly/WASI/blob/master/design/application-abi.md

Differential Revision: https://reviews.llvm.org/D62922
The file was modifiedclang/docs/ClangCommandLineReference.rst
The file was modifiedclang/lib/Driver/ToolChains/WebAssembly.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/test/Driver/wasm-toolchain.c
Commit 7f50c15be5c020b2789f83dc3c87d28f8294664f by tlively
Reland "[WebAssembly] Eliminate range checks on br_tables"

This reverts commit 755a89591528b692315ad0325347e2fd4637271b.
Although I was not able to reproduce any test failures locally,
aheejin was able to reproduce them and found a fix, applied here.
The file was modifiedllvm/lib/Target/WebAssembly/CMakeLists.txt
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was modifiedllvm/test/CodeGen/WebAssembly/switch.ll
The file was modifiedllvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
The file was addedllvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
The file was modifiedllvm/test/CodeGen/WebAssembly/indirectbr.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
The file was modifiedllvm/test/CodeGen/WebAssembly/cfg-stackify.ll
The file was modifiedllvm/test/CodeGen/WebAssembly/stack-insts.ll
The file was modifiedllvm/lib/Target/WebAssembly/WebAssembly.h
The file was addedllvm/test/CodeGen/WebAssembly/switch-unreachable-default.ll
Commit a946cb1813c228ac44a94e0ddf712258b9018ea9 by thakis
[gn build] Fix link with ld.bfd and gold.

lld's symbol resolution algorithm makes it not depend on
the order of object files and libraries, but ld.bfd and
gold require listing dependencies later on the link line.
Put {{libs}} after {{inputs}} so that e.g. -lpthreads
appears after the object files, not before it.

Differential Revision: https://reviews.llvm.org/D81035
The file was modifiedllvm/utils/gn/build/toolchain/BUILD.gn
Commit dd863ccae1346a44e4380fb17d22ae7041fee898 by craig.topper
[X86] Separate X86_CPU_TYPE_COMPAT_WITH_ALIAS from X86_CPU_TYPE_COMPAT. NFC

Add a separate X86_CPU_TYPE_COMPAT_ALIAS that carries alias string
and the enum from X86_CPU_TYPE_COMPAT.
The file was modifiedclang/lib/Basic/Targets/X86.cpp
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedllvm/include/llvm/Support/X86TargetParser.def
Commit 86fdfc104e411499f2dcc139336c3a4da65bf283 by llvmgnsyncbot
[gn build] Port 7f50c15be5c
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Target/WebAssembly/BUILD.gn
Commit 6cbccda89af63c797f6ce2211e91e8e6e53f2a7b by llvmgnsyncbot
[gn build] Port e636e6b79ac
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize/BUILD.gn
Commit f4d427326539f007b05378eaf66018c10b651ad0 by jingham
Add a test for preserving state on the non-expr thread across expression evaluation.

There may be another test that tests this but I couldn't find one.
The file was addedlldb/test/API/functionalities/thread/state_after_expression/TestStateAfterExpression.py
The file was addedlldb/test/API/functionalities/thread/state_after_expression/Makefile
The file was addedlldb/test/API/functionalities/thread/state_after_expression/main.cpp
Commit 9caa34a24cb7d20a129143281cc0e1b2f44bd95c by Jonas Devlieghere
[lldb/Test] Remove un(used|needed|maintained) files from lldbsuite.
The file was removedlldb/packages/Python/lldbsuite/.clang-format
The file was removedlldb/packages/Python/lldbsuite/test/lock.py
The file was removedlldb/packages/Python/lldbsuite/test/redo.py
Commit 5fa9c9d7f276b44b3da949382e0d0b5dbfd0ac8b by Jonas Devlieghere
[lldb/Test] Python <3.5 requires **kwargs to come last

Thanks Martin Böhme for pointing this out.
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
Commit 6391da98f43a995fe3dfb96a5376b2d9c652ed87 by ajcbik
[mlir] [VectorOps] Use 'vector.flat_transpose' for 2-D 'vector.tranpose'

Summary:
Progressive lowering of vector.transpose into an operation that
is closer to an intrinsic, and thus the hardware ISA. Currently
under the common vector transform testing flag, as we prepare
deploying this transformation in the LLVM lowering pipeline.

Reviewers: nicolasvasilache, reidtatge, andydavis1, ftynse

Reviewed By: nicolasvasilache, ftynse

Subscribers: mehdi_amini, rriddle, jpienaar, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, stephenneuendorffer, Joonsoo, grosul1, frgossen, Kayjukh, jurahul, llvm-commits

Tags: #llvm, #mlir

Differential Revision: https://reviews.llvm.org/D80772
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.h
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
The file was addedmlir/test/Dialect/Vector/vector-flat-transforms.mlir
The file was modifiedmlir/test/Dialect/Vector/vector-contract-transforms.mlir
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
The file was modifiedmlir/test/lib/Transforms/TestVectorTransforms.cpp
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
Commit 49cbe56a657b91e612f8305e7f8f9119ffe84378 by kadircet
[clangd] Fix forgotten propagation of AsnycPreamble flag
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
Commit cc11ceda165b5ba0a87e812fbd6ed1bce4fefd2f by hanchung
[mlir][Linalg] Add support for fusion between indexed_generic ops and generic ops on tensors.

Summary:
Different from the fusion between generic ops, indices are involved. In this
context, we need to re-map the indices for producer since the fused op is built
on consumer's perspective. This patch supports all combination of the fusion
between indexed_generic ops and generic ops, which includes tests case:
  1) generic op as producer and indexed_generic op as consumer.
  2) indexed_generic op as producer and generic op as consumer.
  3) indexed_generic op as producer and indexed_generic op as consumer.

Differential Revision: https://reviews.llvm.org/D80347
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/test/Dialect/Linalg/fusion-tensor.mlir
Commit 27fca57546c2828e2684c02b7aa677cbd6603bfd by hanchung
[mlir][Linalg] Add support for fusion between indexed_generic ops and tensor_reshape ops

Summary:
The fusion for tensor_reshape is embedding the information to indexing maps,
thus the exising pattenr also works for indexed_generic ops.

Depends On D80347

Differential Revision: https://reviews.llvm.org/D80348
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
The file was modifiedmlir/test/Dialect/Linalg/fusion-tensor.mlir
Commit 0e7c77053f560d391fecbec5d5e0e42082865c8a by listmail
Introduce a "gc-live" bundle for the gc arguments of a statepoint

Currently, gc.relocates are defined in terms of indices into the statepoint's operand list. Given the gc args are at the end of a variable length list of operands, this makes interpreting their indices by hand a tad challenging. We can simplify the statepoint sequence and improve readability quite a bit by pulling these new operands into their own named operand bundle.

This patch defines a new operand bundle tag "gc-live". The semantics of the bundle are the same as the existing gc arguments of a statepoint. This patch simply introduces the definition and codegen for the bundle, future patches will migrate RS4GC to emitting the new form.

Interestingly, with this done and the recent migration to using deopt and gc-transition bundles, we really don't have much left in the statepoint itself. It really looks like the existing ID and flags fields are redundant; we have (existing!) attributes for all of them. I think we'll be able to reduce the gc.statepoint signature to simply a wrapped call (e.g. actual target and actual arguments).

Differential Revision: https://reviews.llvm.org/D80937
The file was modifiedllvm/docs/Statepoints.rst
The file was addedllvm/test/CodeGen/X86/statepoint-gc-live.ll
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/include/llvm/IR/Statepoint.h
The file was modifiedllvm/lib/IR/LLVMContext.cpp
The file was modifiedllvm/test/Bitcode/operand-bundles-bc-analyzer.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/include/llvm/IR/LLVMContext.h
Commit 0b025d2733d02a8080f38d767cceab4812c5d6e2 by hanchung
[mlir][StandardToSPIRV] Handle i1 case for lowering std.zexti to SPIR-V.

Differential Revision: https://reviews.llvm.org/D80965
The file was modifiedmlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRV.cpp
The file was modifiedmlir/test/Conversion/StandardToSPIRV/std-ops-to-spirv.mlir
Commit 8dd34cce0716e0d83c2f05375e8352b5fb4c680c by Jessica Paquette
[AArch64][GlobalISel] Select uzp1 and uzp2

Porting the mask stuff for uzp1 and uzp2 from AArch64ISelLowering.

Add two custom opcodes: G_UZP1 and G_UZP2.

Produce them in the post-legalizer combiner when the mask checks out.

Tests:

- postlegalizer-combiner-uzp.mir verifies that we create G_UZP1 and G_UZP2.
The testcases that check that we create them come from neon-perm.ll.

- select-uzp.mir verifies that we can select G_UZP1 and G_UZP2.

Differential Revision: https://reviews.llvm.org/D81049
The file was modifiedllvm/lib/Target/AArch64/AArch64PostLegalizerCombiner.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrGISel.td
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-uzp.mir
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-uzp.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64Combine.td
Commit ff529e0f2792e1383a602e4b8a466337fd0c2926 by listmail
[Statepoint] Fix signed vs unsigned in index handling

As noted in a comment on D80937, all of these are specified as unsigned values, but the verifier code was using signed.  Given the practical values involved, the different in range didn't matter, but we might as well clean it up.
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit cab4b3b8e3a4a2822e459e5f103e49fcab16efaf by julian.lettner
Fix bug in newly added VersionBase::operator>=

Fixup for ba6b1b4353e33a7a36bcbad1d1c1157826197fd2.
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.h
Commit 969d2d1ea9466143e7099040f5f0735cc81963b1 by Jessica Paquette
[AArch64][GlobalISel] Add selection support for rev16, rev32, and rev64

This does three things:

1) Adds G_REV16, G_REV32, and G_REV64. These are equivalent to AArch64rev16,
   AArch64rev32, and AArch64rev64 respectively.

2) Adds support for producing G_REV64 in the postlegalizer combiner.
   We don't legalize any of the shuffles which could give us a G_REV32 or
   G_REV16 yet. Since the function for detecting the rev mask is lifted from
   AArch64ISelLowering, it should work for G_REV32 and G_REV16 when we get
   there.

3) Adds a selection test for a good portion of the patterns imported for the rev
   family. The only ones which are not tested are the ones with bitconvert.

This also does a little cleanup, and adds a struct for shuffle vector pseudo
matchdata. This lets us still use `applyShuffleVectorPseudo` rather than adding
a new function.

It should also make it a bit easier to port some of the other masks from
AArch64ISelLowering. (e.g. `isZIP_v_undef_Mask` and friends)

Differential Revision: https://reviews.llvm.org/D81112
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrGISel.td
The file was modifiedllvm/lib/Target/AArch64/AArch64Combine.td
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-combiner-rev.mir
The file was modifiedllvm/lib/Target/AArch64/AArch64PostLegalizerCombiner.cpp
The file was addedllvm/test/CodeGen/AArch64/GlobalISel/select-rev.mir
Commit 25af2126f93a76f39c3121b3ddccdfd9f1aba4be by tlively
[WebAssembly] Fix ISel crash in SIGN_EXTEND_INREG lowering

Summary:
The code previously assumed that the index of a vector extract was
constant, but this was not always true. This patch fixes the problem
by bailing out of the lowering if the index is nonconstant and also
replaces `static_cast`s in the lowering function with `cast`s because
the latter contain type-checking asserts that would make similar
issues easier to find and debug.

Reviewers: aheejin

Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D81025
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
The file was addedllvm/test/CodeGen/WebAssembly/simd-nonconst-sext.ll
Commit 06ae439110395e9d5cf9fdfbd9570130cc2f1a1e by Jessica Paquette
[AArch64][NFC] Regenerate arm64-rev.ll

Test had some GISel stuff in it which was changed by 969d2d1ea94.
The file was modifiedllvm/test/CodeGen/AArch64/arm64-rev.ll
Commit 382b3023cbbcffc07c7de73441d6b86f02486099 by listmail
[Statepoints][CGP] Minor parameter type cleanup
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit 053fce9a02ad679f14f9dba33220f7d63fc11812 by echristo
Fix typo in filename comment.
The file was modifiedllvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
Commit 5477cf06d654e319ed066ba7f497e278853762be by Vitaly Buka
Fix "Statistics are disabled"

There is no -DLLVM_ENABLE_STATS, only
-DLLVM_FORCE_ENABLE_STATS.
It was renamed by 6cf299cf01e4a83844126f7faf17cbeb78e88da9
The file was modifiedllvm/lib/Support/Statistic.cpp
Commit 291dabefde01eae7473da224b49f6359766e0663 by Vitaly Buka
[StackSafety,NFC] Add statistic counters
The file was modifiedllvm/lib/Analysis/StackSafetyAnalysis.cpp