Changes

Summary

  1. Revert "[CMake] Don't use libc++ by default on Windows yet" (details)
  2. Revert "[Driver] Support libc++ in MSVC" (details)
  3. Function Specialization Pass (details)
  4. [gn build] Port c4a0969b9c14 (details)
  5. [mlir] Refactor ComplexOps.td [NFC] (details)
  6. [clang-tidy] LIT test fix for Remark diagnostic (details)
  7. [compiler-rt] [builtins] [AArch64] Add missing AArch64 data synchronization barrier (dsb) to __clear_cache (details)
  8. [OpenCL][NFC] Reorganize ClangOpenCLBuiltinEmitter comments (details)
  9. Fix implicit dependency on <string> header. NFCI. (details)
  10. [Analysis] Pass RecurrenceDescriptor as const reference. NFCI. (details)
  11. SampleProf.h - fix spelling mistake in assert message. NFC. (details)
  12. [X86] Support __tile_stream_loadd intrinsic for new AMX interface (details)
  13. [NFC][VectorCombine] Extract computeAlignmentAfterScalarization() helper function (details)
  14. [VectorCombine] scalarizeLoadExtract(): use computeAlignmentAfterScalarization() helper (details)
  15. [analyzer] Introduce a new interface for tracking (details)
  16. [analyzer] Reimplement trackExpressionValue as ExpressionHandler (details)
  17. [analyzer] Change FindLastStoreBRVisitor to use Tracker (details)
  18. [analyzer] Hide and rename FindLastStoreBRVisitor (details)
  19. [analyzer] Turn ReturnVisitor into a tracking visitor (details)
  20. [analyzer] Refactor trackRValueExpression into ExpressionHandler (details)
  21. [analyzer] Turn TrackControlDependencyCond into a tracking visitor (details)
  22. [analyzer] Refactor trackExpressionValue to accept TrackingOptions (details)
  23. [llvm-stress] Fix dead code preventing us generating per-element vector selects (details)
  24. clang-format: [JS] don't sort named imports if off. (details)
  25. [OpenCL] Fix overloading resolution of addrspace constructors (details)
  26. [CostModel][AArch64] Improve the cost estimate of CTPOP intrinsic (details)
  27. Do not generate calls to the 128-bit function __multi3() on 32-bit ARM (details)
  28. [clang][NFC] Avoid assignment in condition (details)
  29. [ADT] Consistently use StringExtrasTest for the test suite filter. NFCI. (details)
  30. [clang-tidy] NarrowingConversionsCheck should support inhibiting conversions of (details)
  31. [Test] Add loop deletion test with switch (details)
  32. [PowerPC] Allow wa inline asm to also accept floating point arguments (details)
  33. [mlir] Provide minimal Python bindings for the math dialect (details)
  34. precommit tests for D104042 (details)
  35. [Test] One more elaborate test with selects for loop deletion (details)
  36. [clangd] don't rename if the triggering loc is not actually being renamed. (details)
  37. [VP][NFC] Format comment to 80 columns (details)
  38. [ADT] Remove APInt/APSInt toString() std::string variants (details)
  39. [AST] Include the TranslationUnitDecl when traversing with TraversalScope (details)
  40. APInt.h - add missing <utility> header. (details)
  41. [lldb] DumpDataExtractor.cpp - replace APInt::toString() with llvm::toString(APInt) (details)
  42. [Polly][Isl] Removing explicit operator bool() from isl C++ bindings. NFC. (details)
  43. [mlir][[linalg] Remove deprecated structured op interface methods. (details)
  44. Revert "[lldb] Add support for evaluating expressions in static member functions" (details)
  45. [mlir][linalg] Prepare drop unit dims for scalar operands. (details)
  46. Fix Wdocumentation missing parameter warnings. NFCI. (details)
  47. StringExtrasTest.cpp - add missing newline at the end of file. NFCI. (details)
  48. [SimplifyCFG] avoid crash on degenerate loop (details)
  49. Fix extraneous ')' error. (details)
  50. [mlir][linalg] Prepare pad to static bounding box for scalar operands. (details)
  51. Fix for error "'Run' overrides a member function but is not marked (details)
  52. Referencing a static function defined in an opnemp clause, is (details)
  53. Move Function Specialization to its correct location. NFC. (details)
  54. [gn build] Port 9907746f5db7 (details)
  55. [lldb] Unmark TestInlines as XFAIL for gcc (details)
  56. [lldb] Fix compilation after removal of APInt::toString (details)
  57. [lldb] Remove GCC XFAIL for TestTypedefArray (details)
  58. [mlir][VectorToGPU] First step to convert vector ops to GPU MMA ops (details)
  59. [SLP][NFC]Add a test for unordered stores, NFC. (details)
  60. [SLP]Remove unnecessary UndefValue in CreateShuffle. (details)
  61. [lld/mac] Use sectionType() more (details)
  62. [HWASan] Add basic stack tagging support for LAM. (details)
  63. [Sema] Address-space sensitive check for unbounded arrays (v2) (details)
  64. Revert "[Sema] Address-space sensitive check for unbounded arrays (v2)" (details)
  65. [SLP]Allow reordering of insertelements. (details)
  66. [CodeGen][regalloc] Don't align stack slots if the stack can't be realigned (details)
  67. Update the C status page somewhat. (details)
  68. [lldb-vscode] Synchronize calls to SendTerminatedEvent (details)
  69. [HIP] Fix --hip-version flag with 0 as component (details)
  70. [Matrix] In transpose opts, handle a^t * a^t (details)
  71. [libcxx][ranges] Add range.subrange. (details)
  72. [gn build] Port 9106047ee3dd (details)
  73. [libc++] Enable the synchronization library on Apple platforms (details)
  74. [X86FixupLEAs] Sub register usage of LEA dest should block LEA/SUB optimization (details)
  75. [libc++] NFC: Move indirect_concepts.h to __iterator/concepts.h (details)
  76. [gn build] Port c54d3050f7b9 (details)
  77. [SLP][NFC] Fix condition that was supposed to save a bit of compile time. (details)
  78. [lldb] Enable TestRuntimeTypes on Apple Silicon (details)
  79. [lldb] Support new objective-c hash table layout (details)
  80. Introduce alloca_scope op (details)
  81. [Sema] Address-space sensitive check for unbounded arrays (v2) (details)
  82. CodeGen: Fix missing const (details)
  83. GlobalISel: Reduce indentation and remove dead path (details)
  84. AMDGPU/GlobalISel: Fix indentation (details)
  85. AMDGPU/GlobalISel: Remove leftover hack for argument memory sizes (details)
  86. [libcxx][ranges] Add class ref_view. (details)
  87. [gn build] Port 7eba4856c702 (details)
  88. [compiler-rt] Add platform detection support for x32 (details)
  89. [NFC][OpaquePtr] Explicitly pass GEP source type in optimizeGatherScatterInst() (details)
  90. [clang-cl][sanitizer] Add -fsanitize-address-use-after-return to clang. (details)
  91. [flang] Handle multiple USE statements for the same module (details)
  92. [mlir][docs] Reorder PassWrapper arguments (details)
  93. [docs][OpaquePtr] Add some specific examples of what needs to be done (details)
  94. [IRSim] Adding basic implementation of llvm-sim. (details)
  95. [clang][ObjC] allow the use of NSAttributedString * argument type with format attribute (details)
  96. Allow ptrtoint/inttoptr of non-integral pointer types in IR (details)
  97. Revert "[IRSim] Adding basic implementation of llvm-sim." (details)
  98. [NFC][CostModel] Fixed comment that comparisons work regardless of the state. (details)
  99. [NFC][X86][Codegen] Megacommit: mass-regenerate all check lines that were already autogenerated (details)
  100. [lldb] Remove GCC XFAIL for TestCPPAuto and TestClassTemplateParameterPack (details)
  101. [IRSim] Don't copy the Mapper for createCandidatesFromSuffixTree (details)
  102. [sanitizer] Replace -mllvm -asan-use-after-return in compile-rt tests with -fsanitize-address-use-after-return (NFC) (details)
  103. [sanitizer] Remove numeric values from -asan-use-after-return flag. (NFC) (details)
  104. [InstCombine] update test checks; NFC (details)
  105. [InstCombine] add tests for bit manipulation intrinsics with bool values; NFC (details)
  106. [NFC][OpaquePtr] Make getMemoryParamAllocType() compatible with opaque pointers (details)
  107. [ASan/Win] Hide index from compiler to avoid new clang warning (details)
  108. [llvm-objcopy][MachO] Do not strip symbols with the flag REFERENCED_DYNAMICALLY set (details)
  109. Allow signposts to take advantage of deferred string substitution (details)
  110. Disambiguate usage of struct mach_header and other MachO definitions. (details)
  111. [IRSim] Strip out the findSimilarity call from the constructor (details)
  112. Revert "Allow signposts to take advantage of deferred string substitution" (details)
  113. [lld-macho] Deduplicate fixed-width literals (details)
  114. [lld-macho][nfc] Move liveness-tracking fields into ConcatInputSection (details)
  115. [lld-macho][nfc] Have InputSection ctors take some parameters (details)
  116. [lld-macho] Have dead-stripping work with literal sections (details)
  117. Allow signposts to take advantage of deferred string substitution (details)
  118. [AIX][compiler-rt] Fix cmake build of libatomic for cmake-3.16+ (details)
  119. [MLIR] Execution engine python binding support for shared libraries (details)
  120. [lld-macho] Fix debug build (details)
  121. [lld][MachO] Fix function starts section (details)
  122. Improve materializer error messages to include type names. (details)
  123. [mlir] make normalizeAffineFor public (details)
  124. [Flang][test] Fix Windows buildbot. (details)
  125. A post-processing for BFI inference (details)
Commit 0d5af7a4caaf19ff97ca90e9ca7f2b78a858ab07 by phosek
Revert "[CMake] Don't use libc++ by default on Windows yet"

This reverts commit b413e44200e715c254fa9a41f6a86f8761c9b362.
The file was modifiedclang/cmake/caches/Fuchsia-stage2.cmake
The file was modifiedclang/cmake/caches/Fuchsia.cmake
Commit 22f194909ae24aed817976fb54b759550e90db36 by phosek
Revert "[Driver] Support libc++ in MSVC"

This reverts commit 9625d61eb66c12388875e081b63ebed7e42c6bbb since
libc++ currently has issues with disabled exceptions which breaks
the runtimes build.
The file was removedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/lib/.keep
The file was removedclang/test/Driver/msvc-libcxx.cpp
The file was removedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/lib/x86_64-pc-windows-msvc/.keep
The file was removedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/bin/.keep
The file was modifiedclang/lib/Driver/ToolChains/MSVC.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was removedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/include/c++/v1/.keep
The file was removedclang/test/Driver/Inputs/msvc_libcxx_tree/usr/include/x86_64-pc-windows-msvc/c++/v1/.keep
Commit c4a0969b9c14acc795ae9e841b8289c3d36220b1 by sjoerd.meijer
Function Specialization Pass

This adds a function specialization pass to LLVM. Constant parameters
like function pointers and constant globals are propagated to the callee by
specializing the function.

This is a first version with a number of limitations:
- The pass is off by default, so needs to be enabled on the command line,
- It does not handle specialization of recursive functions,
- It does not yet handle constants and constant ranges,
- Only 1 argument per function is specialised,
- The cost-model could be further looked into, and perhaps related,
- We are not yet caching analysis results.

This is based on earlier work by Matthew Simpson (D36432) and Vinay Madhusudan.
More recently this was also discussed on the list, see:

https://lists.llvm.org/pipermail/llvm-dev/2021-March/149380.html.

The motivation for this work is that function specialisation often comes up as
a reason for performance differences of generated code between LLVM and GCC,
which has this enabled by default from optimisation level -O3 and up. And while
this certainly helps a few cpu benchmark cases, this also triggers in real
world codes and is thus a generally useful transformation to have in LLVM.

Function specialisation has great potential to increase compile-times and
code-size.  The summary from some investigations with this patch is:
- Compile-time increases for short compile jobs is high relatively, but the
  increase in absolute numbers still low.
- For longer compile-jobs, the extra compile time is around 1%, and very much
  in line with GCC.
- It is difficult to blame one thing for compile-time increases: it looks like
  everywhere a little bit more time is spent processing more functions and
  instructions.
- But the function specialisation pass itself is not very expensive; it doesn't
  show up very high in the profile of the optimisation passes.

The goal of this work is to reach parity with GCC which means that eventually
we would like to get this enabled by default. But first we would like to address
some of the limitations before that.

Differential Revision: https://reviews.llvm.org/D93838
The file was addedllvm/lib/Transforms/Scalar/FunctionSpecialization.cpp
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization5.ll
The file was modifiedllvm/lib/Transforms/IPO/SCCP.cpp
The file was modifiedllvm/lib/Transforms/IPO/IPO.cpp
The file was modifiedllvm/lib/Transforms/Scalar/SCCP.cpp
The file was modifiedllvm/lib/Transforms/Scalar/CMakeLists.txt
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization4.ll
The file was modifiedllvm/include/llvm/LinkAllPasses.h
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization3.ll
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO.h
The file was modifiedllvm/lib/Transforms/Utils/SCCPSolver.cpp
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization.ll
The file was modifiedllvm/lib/Transforms/IPO/PassManagerBuilder.cpp
The file was modifiedllvm/include/llvm/Transforms/Scalar/SCCP.h
The file was modifiedllvm/include/llvm/Transforms/IPO/SCCP.h
The file was modifiedllvm/include/llvm/Transforms/Utils/SCCPSolver.h
The file was modifiedllvm/include/llvm/InitializePasses.h
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization-recursive.ll
The file was addedllvm/test/Transforms/FunctionSpecialization/function-specialization2.ll
Commit eac994e227dcc0eeb02c6d4d7c221b1c2fb0b9e2 by llvmgnsyncbot
[gn build] Port c4a0969b9c14
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Scalar/BUILD.gn
Commit f98b7796142d996861cbba824f3cacef0b446ef8 by akuegel
[mlir] Refactor ComplexOps.td [NFC]

Create a ComplexUnaryOp base class and use it for AbsOp, ReOp and ImOp.
Sort all ops in lexicographic order.

Differential Revision: https://reviews.llvm.org/D104095
The file was modifiedmlir/include/mlir/Dialect/Complex/IR/ComplexOps.td
Commit 47d138c93992f779a5dd0810b0e7402e043df61d by dmitry.polukhin
[clang-tidy] LIT test fix for Remark diagnostic

There is a followup fix for a unit test introduced at D102906. The test file was placed into a temp folder and test assumed that it would be visible without the full path specification.

This behaviour can be changed in future and it would be good to specify full path to the file at the test.

Test Plan:
```
ninja check-clang-tools
```

Reviewed By: DmitryPolukhin

Differential Revision: https://reviews.llvm.org/D104021
The file was modifiedclang-tools-extra/test/clang-tidy/infrastructure/remarks.cpp
Commit 6455418d3d2a2de1a8251cc2ccf2e87b9ae3112d by srhines
[compiler-rt] [builtins] [AArch64] Add missing AArch64 data synchronization barrier (dsb) to __clear_cache

https://developer.arm.com/documentation/den0024/a/Caches/Cache-maintenance
covers how to properly clear caches on AArch64, and the builtin
implementation was missing a `dsb ish` after clearing the icache for the
selected range.

Reviewed By: kristof.beyls

Differential Revision: https://reviews.llvm.org/D104094
The file was modifiedcompiler-rt/lib/builtins/clear_cache.c
Commit ca964b40e6e5d20fb658f2d36238b46a35dd860f by sven.vanhaastregt
[OpenCL][NFC] Reorganize ClangOpenCLBuiltinEmitter comments

Since 8866793b4e0a ("[OpenCL] Add OpenCL builtin test generator",
2021-06-09) there are two emitters in this file, so move the
file-level comment to the appropriate class.
The file was modifiedclang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
Commit d789ed11ea01b30a69e8cd9612ebd336398ef3ec by llvm-dev
Fix implicit dependency on <string> header. NFCI.
The file was modifiedllvm/tools/llvm-rust-demangle-fuzzer/llvm-rust-demangle-fuzzer.cpp
Commit 5e6bfb661e8b51b440eda04d0be0c9a00b8713e9 by llvm-dev
[Analysis] Pass RecurrenceDescriptor as const reference. NFCI.

We were passing the RecurrenceDescriptor by value to most of the reduction analysis methods, despite it being rather bulky with TrackingVH members (that can be costly to copy). In all these cases we're only using the RecurrenceDescriptor for rather basic purposes (access to types/kinds etc.).

Differential Revision: https://reviews.llvm.org/D104029
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
The file was modifiedllvm/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
Commit f0a68bbc967ab851e9b678feaf9015a2bfadb12e by llvm-dev
SampleProf.h - fix spelling mistake in assert message. NFC.
The file was modifiedllvm/include/llvm/ProfileData/SampleProf.h
Commit 56d5c46b494d2232792a46e9b95de40b082f4164 by bing1.yu
[X86] Support __tile_stream_loadd intrinsic for new AMX interface

Adding support for __tile_stream_loadd intrinsic.

Reviewed By: LuoYuanke

Differential Revision: https://reviews.llvm.org/D103784
The file was modifiedclang/include/clang/Basic/BuiltinsX86_64.def
The file was modifiedllvm/lib/Target/X86/X86RegisterInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrAMX.td
The file was modifiedclang/test/CodeGen/X86/amx_api.c
The file was modifiedllvm/lib/Target/X86/X86LowerAMXType.cpp
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-tile-basic.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicsX86.td
The file was modifiedllvm/lib/Target/X86/X86ExpandPseudo.cpp
The file was modifiedllvm/lib/Target/X86/X86PreAMXConfig.cpp
The file was modifiedllvm/lib/Target/X86/X86FastTileConfig.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedclang/lib/Headers/amxintrin.h
Commit abc0e0125cc54426cd2e89080b87b706c3385173 by lebedev.ri
[NFC][VectorCombine] Extract computeAlignmentAfterScalarization() helper function
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
Commit 20542b47d6373dde497987abd1da83e84983fe13 by lebedev.ri
[VectorCombine] scalarizeLoadExtract(): use computeAlignmentAfterScalarization() helper

This results in slightly more optimistic alignments in some cases
The file was modifiedllvm/test/Transforms/VectorCombine/AArch64/load-extractelement-scalarization.ll
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
Commit 0cc3100bf8d126ce080c0075cf25784b45e5f990 by vsavchenko
[analyzer] Introduce a new interface for tracking

Tracking values through expressions and the stores is fundamental
for producing clear diagnostics.  However, the main components
participating in this process, namely `trackExpressionValue` and
`FindLastStoreBRVisitor`, became pretty bloated.  They have an
interesting dynamic between them (and some other visitors) that
one might call a "chain reaction". `trackExpressionValue` adds
`FindLastStoreBRVisitor`, and the latter calls `trackExpressionValue`.

Because of this design, individual checkers couldn't affect what's
going to happen somewhere in the middle of that chain.  Whether they
want to produce a more informative note or keep the overall tracking
going by utilizing some of the domain expertise.  This all lead to two
biggest problems that I see:

  * Some checkers don't use it
  This should probably never be the case for path-sensitive checks.

  * Some checkers incorporated their logic directly into those
    components
  This doesn't make the maintenance easier, breaks multiple
  architecture principles, and makes the code harder to read adn
  understand, thus, increasing the probability of the first case.

This commit introduces a prototype for a new interface that will be
responsible for tracking.  My main idea here was to make operations
that I want have as a checker developer easy to implement and hook
directly into the tracking process.

Differential Revision: https://reviews.llvm.org/D103605
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
Commit 967c06b3e95ba776fb06ad0ea5aa699cf2e1b59a by vsavchenko
[analyzer] Reimplement trackExpressionValue as ExpressionHandler

This commit moves trackExpressionValue into the Tracker interface
as DefaultExpressionHandler.  It still can be split into smaller
handlers, but that can be a future change.

Additionally, this commit doesn't remove the original trackExpressionValue
interface, so it's not too big.  One of the next commits will address it.

Differential Revision: https://reviews.llvm.org/D103616
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit b6bcf953220db7880f2bb508f6f5c02b41078b2c by vsavchenko
[analyzer] Change FindLastStoreBRVisitor to use Tracker

Additionally, this commit completely removes any uses of
FindLastStoreBRVisitor from the analyzer except for the
one in Tracker.

The next step is actually removing this class altogether
from the header file.

Differential Revision: https://reviews.llvm.org/D103618
The file was modifiedclang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit 87a5c4d3745a06ec0594fa3f7aaf7f58a53315ec by vsavchenko
[analyzer] Hide and rename FindLastStoreBRVisitor

This component should not be used directly at this point and it is
simply an implementation detail, that's why StoreSiteFinder is
out of the header file.

Differential Revision: https://reviews.llvm.org/D103624
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit f853d2601abd4f6ab789ca1513ae8b59ba5d38b7 by vsavchenko
[analyzer] Turn ReturnVisitor into a tracking visitor

Whenever Tracker spawns a visitor that needs to call tracker
back, we have to use TrackingBugReporterVisitor in order to maintain
all the hooks that the checker might've used.

Differential Revision: https://reviews.llvm.org/D103628
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit 3fc8d943c360f801a428ff24569d2dd53a2afe0f by vsavchenko
[analyzer] Refactor trackRValueExpression into ExpressionHandler

Differential Revision: https://reviews.llvm.org/D103630
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit 51d4704d5ec9b8e4e5e445ee69c56a58250e370e by vsavchenko
[analyzer] Turn TrackControlDependencyCond into a tracking visitor

Differential Revision: https://reviews.llvm.org/D103631
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
Commit 57006d2f6d96d8a6836ae901218ed615071b3b8e by vsavchenko
[analyzer] Refactor trackExpressionValue to accept TrackingOptions

Differential Revision: https://reviews.llvm.org/D103633
The file was modifiedclang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
The file was modifiedclang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
Commit 646e970d44d7eaf4f56e2956fb58b48eb9360cb3 by llvm-dev
[llvm-stress] Fix dead code preventing us generating per-element vector selects

This has been reported several times by the PVS Studio team as well as coming up in some static analysis.

getRandom() % 1 always returns 0 so we never actually test this codepath, (git blame suggests this has always been like this) - given that we have plenty of other "getRandom() & 1" the typo is pretty obvious, and matches the intention in the comment above - with this change we generate a nice mixture of scalar/vector condition selects of vectors.

I don't know llvm-stress that well - but I don't think we guarantee that the same seed value will always generate the same IR for later versions of the program - just that the same binary would.

Differential Revision: https://reviews.llvm.org/D104022
The file was modifiedllvm/tools/llvm-stress/llvm-stress.cpp
Commit 63042d46bb0c2481a8b7aa1c324405c2720b3603 by martin
clang-format: [JS] don't sort named imports if off.

The previous implementation would accidentally still sort the individual
named imports, even if the module reference was in a clang-format off
block.

Differential Revision: https://reviews.llvm.org/D104101
The file was modifiedclang/lib/Format/SortJavaScriptImports.cpp
The file was modifiedclang/unittests/Format/SortImportsTestJS.cpp
Commit b102e6880ab06654f945284a520f68c099732f44 by olemarius.strohm
[OpenCL] Fix overloading resolution of addrspace constructors

This fixes the prioritization of address spaces when choosing a
constructor, stopping them from being considered equally good,
which made the construction of types that could be constructed
by more than one of the constructors.

It does this by preferring the most specific address space,
which is decided by seeing if one of the address spaces is
a superset of the other, and preferring the other.

Fixes: PR50329

Reviewed By: Anastasia

Differential Revision: https://reviews.llvm.org/D102850
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/test/SemaOpenCLCXX/addrspace-constructors.clcpp
The file was modifiedclang/test/CodeGenOpenCLCXX/addrspace-constructors.clcpp
Commit d7c219a506ec9aabe7c5d36c0da55656af487b73 by rosie.sumpter
[CostModel][AArch64] Improve the cost estimate of CTPOP intrinsic

Added a case for CTPOP to AArch64TTIImpl::getIntrinsicInstrCost so that
the cost estimate matches the codegen in
test/CodeGen/AArch64/arm64-vpopcnt.ll

Differential Revision: https://reviews.llvm.org/D103952
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
The file was modifiedllvm/test/Analysis/CostModel/AArch64/ctpop.ll
Commit 789708617d2023dbb343c65120556b2e6a97044d by rengolin
Do not generate calls to the 128-bit function __multi3() on 32-bit ARM

Re-applying this patch after bots failures. Should be fine now.

The function __multi3() is undefined on 32-bit ARM, so a call to it should
never be emitted. Instead, plain instructions need to be generated to
perform 128-bit multiplications.

Differential Revision: https://reviews.llvm.org/D103906
The file was modifiedllvm/test/CodeGen/Thumb/pr35836_2.ll
The file was modifiedllvm/test/CodeGen/ARM/umulo-128-legalisation-lowering.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/test/CodeGen/Thumb/umulo-128-legalisation-lowering.ll
The file was modifiedllvm/test/CodeGen/Thumb2/umulo-128-legalisation-lowering.ll
Commit 691ba0f8acb511f7da1e78c59fe9560b64c47f3a by nathan
[clang][NFC] Avoid assignment in condition

Refactor to avoid assignment inside condition by using 'if
(init-decl)'.  Also remove some unnecessary braces on a separate
if-nest.

Differential Revision: https://reviews.llvm.org/D104039
The file was modifiedclang/lib/Sema/SemaDecl.cpp
Commit 955d88992a55223102c74787fcf58cf20757e2dd by llvm-dev
[ADT] Consistently use StringExtrasTest for the test suite filter. NFCI.

Noticed while updating D103888 - some of the tests were using "StringExtras" for the test_suite_name instead of the expected "StringExtrasTest"
The file was modifiedllvm/unittests/ADT/StringExtrasTest.cpp
Commit 1a53fb0596abf4a8a9d5b4633cd5a8dc04f5e602 by hokein.wu
[clang-tidy] NarrowingConversionsCheck should support inhibiting conversions of
mixed integer and floating point types with WarnOnEquivalentBitWidth=0.

Also standardize control flow of handleX conversion functions to make it easier to be consistent.

Patch by Stephen Concannon!

Differential Revision: https://reviews.llvm.org/D103894
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/NarrowingConversionsCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/NarrowingConversionsCheck.h
The file was modifiedclang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines-narrowing-conversions-equivalentbitwidth-option.cpp
Commit 8dc2c1a0abdd52eadb12e8ae3b75f1eb8becc25c by mkazantsev
[Test] Add loop deletion test with switch
The file was modifiedllvm/test/Transforms/LoopDeletion/eval_first_iteration.ll
Commit c1bb75febe9d1176748f524324b5528347342166 by zarko
[PowerPC] Allow wa inline asm to also accept floating point arguments

GCC documentation for the `wa` constraint states that:
```
wa

    A VSX register (VSR), vs0…vs63. This is either an FPR (vs0…vs31 are f0…f31)
    or a VR (vs32…vs63 are v0…v31).
```
This technically means that we could accept floating point parameters. In fact,
gcc itself does. The following testcase compiles and runs on all PPC platforms with GCC,
whereas clang/llc will assert:
```
#include <stdio.h>
double foo ( vector double a ) {
  double b, c;
  asm("xvabsdp  %x0, %x2        \n"
             "xxsldwi  %x1, %x0, %x0, 2 \n"
      :  "+wa"    (b),
         "=wa"    (c)
      :  "wa"    (a)
      );
  return b+c;
}
int main(void) {
  vector double a = {-3., -4.};
  double t = foo( a );
  printf("%g\n", t);
}
```
This patch allows clang/llc to build and run this testcase.

Reviewed By: nemanjai, #powerpc

Differential Revision: https://reviews.llvm.org/D103409
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was addedllvm/test/CodeGen/PowerPC/wa-asm-fpr.ll
Commit ad381e39a52604ba07e1e027e7bdec1c287d9089 by zinenko
[mlir] Provide minimal Python bindings for the math dialect

Reviewed By: ulysseB

Differential Revision: https://reviews.llvm.org/D104045
The file was modifiedmlir/python/mlir/dialects/CMakeLists.txt
The file was addedmlir/python/mlir/dialects/math.py
The file was addedmlir/python/mlir/dialects/MathOps.td
The file was addedmlir/test/python/dialects/math.py
Commit 9eedde705fab24200be47b2769a3cd12d24bb230 by jingu.kang
precommit tests for D104042
The file was addedllvm/test/CodeGen/AArch64/neon-sad.ll
Commit 8840c94a338097d8e5ac4556256040baf23b0526 by mkazantsev
[Test] One more elaborate test with selects for loop deletion
The file was modifiedllvm/test/Transforms/LoopDeletion/eval_first_iteration.ll
Commit d30c202d276db86d741734954d1957e7dbbf123c by hokein.wu
[clangd] don't rename if the triggering loc is not actually being renamed.

See context: https://github.com/clangd/clangd/issues/765

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D101816
The file was modifiedclang-tools-extra/clangd/refactor/Rename.cpp
The file was modifiedclang-tools-extra/clangd/unittests/RenameTests.cpp
Commit 71a02ddda10583b7f51611e8aefcbecc47352683 by fraser
[VP][NFC] Format comment to 80 columns
The file was modifiedllvm/include/llvm/IR/VPIntrinsics.def
Commit 61cdaf66fe22be2b5942ddee4f46a998b4f3ee29 by llvm-dev
[ADT] Remove APInt/APSInt toString() std::string variants

<string> is currently the highest impact header in a clang+llvm build:

https://commondatastorage.googleapis.com/chromium-browser-clang/llvm-include-analysis.html

One of the most common places this is being included is the APInt.h header, which needs it for an old toString() implementation that returns std::string - an inefficient method compared to the SmallString versions that it actually wraps.

This patch replaces these APInt/APSInt methods with a pair of llvm::toString() helpers inside StringExtras.h, adjusts users accordingly and removes the <string> from APInt.h - I was hoping that more of these users could be converted to use the SmallString methods, but it appears that most end up creating a std::string anyhow. I avoided trying to use the raw_ostream << operators as well as I didn't want to lose having the integer radix explicit in the code.

Differential Revision: https://reviews.llvm.org/D103888
The file was modifiedclang/lib/Sema/SemaConcept.cpp
The file was modifiedclang/lib/AST/ASTDiagnostic.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/unittests/StaticAnalyzer/RangeSetTest.cpp
The file was modifiedllvm/include/llvm/ADT/StringExtras.h
The file was modifiedclang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
The file was modifiedllvm/unittests/ADT/StringExtrasTest.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/include/clang/ASTMatchers/ASTMatchers.h
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/AST/TemplateBase.cpp
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
The file was modifiedclang/lib/Sema/SemaInit.cpp
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/lib/Frontend/InitPreprocessor.cpp
The file was modifiedclang/lib/AST/StmtPrinter.cpp
The file was modifiedclang/lib/Sema/SemaStmtAsm.cpp
The file was modifiedclang/unittests/Tooling/RecursiveASTVisitorTestPostOrderVisitor.cpp
The file was modifiedllvm/include/llvm/ADT/APInt.h
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modifiedllvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp
The file was modifiedclang-tools-extra/clangd/Hover.cpp
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedllvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
The file was modifiedclang/lib/AST/ExprConstant.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedllvm/lib/Target/X86/X86MCInstLower.cpp
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/lib/Lex/PPExpressions.cpp
The file was modifiedclang-tools-extra/clangd/DumpAST.cpp
The file was modifiedclang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksCommon.h
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedllvm/lib/Support/APInt.cpp
The file was modifiedllvm/unittests/ADT/APIntTest.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.cpp
The file was modifiedllvm/include/llvm/ADT/APSInt.h
The file was modifiedclang/lib/Analysis/ThreadSafetyCommon.cpp
The file was modifiedclang/lib/Sema/SemaTemplate.cpp
The file was modifiedllvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
The file was modifiedclang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
The file was modifiedclang-tools-extra/clang-tidy/abseil/DurationRewriter.cpp
The file was modifiedclang/lib/CodeGen/CGBuiltin.cpp
The file was modifiedclang/lib/AST/ASTStructuralEquivalence.cpp
The file was modifiedclang/lib/Sema/SemaCast.cpp
The file was modifiedclang/lib/Sema/SemaExprCXX.cpp
Commit 6aca6032c5b62b5d26999da5f55779a1b08ec6a2 by sam.mccall
[AST] Include the TranslationUnitDecl when traversing with TraversalScope

Given `int foo, bar;`, TraverseAST reveals this tree:
  TranslationUnitDecl
   - foo
   - bar

Before this patch, with the TraversalScope set to {foo}, TraverseAST yields:
  foo

After this patch it yields:
  TranslationUnitDecl
  - foo

Also, TraverseDecl(TranslationUnitDecl) now respects the traversal scope.

---

The main effect of this today is that clang-tidy checks that match the
translationUnitDecl(), either in order to traverse it or check
parentage, should work.

Differential Revision: https://reviews.llvm.org/D104071
The file was modifiedclang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
The file was modifiedclang/unittests/Tooling/RecursiveASTVisitorTests/TraversalScope.cpp
The file was modifiedclang/include/clang/AST/RecursiveASTVisitor.h
The file was modifiedclang/include/clang/AST/ASTContext.h
The file was modifiedclang/unittests/AST/ASTContextParentMapTest.cpp
The file was modifiedclang-tools-extra/clangd/DumpAST.cpp
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp
Commit 0fc4016d913d3ca2f490b1f1b132798ec0a13e00 by llvm-dev
APInt.h - add missing <utility> header.

Some buildbots are complaining about std::move() after rG61cdaf66fe22be2b5942ddee4f46a998b4f3ee29
The file was modifiedllvm/include/llvm/ADT/APInt.h
Commit cd2e500e555e134ffc19d07f26b17d0b0c71efd9 by llvm-dev
[lldb] DumpDataExtractor.cpp - replace APInt::toString() with llvm::toString(APInt)

APInt::toString() was removed rG61cdaf66fe22be2b5942ddee4f46a998b4f3ee29
The file was modifiedlldb/source/Core/DumpDataExtractor.cpp
Commit 7c7978a122fdd6eb1bc6300b3a2582108f13ff89 by patacca
[Polly][Isl] Removing explicit operator bool() from isl C++ bindings. NFC.

This is part of an effort to reduce the differences between the custom C++ bindings used right now by polly in `lib/External/isl/include/isl/isl-noxceptions.h` and the official isl C++ interface.

Changes made:
- Removing explicit operator bool() from all the classes in the isl C++ bindings.
- Replace each call to operator bool() to method `is_null()`.
- isl-noexceptions.h has been generated by this https://github.com/patacca/isl/commit/27396daac5a5ee8228d25511a12f4a814c92ba8f

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D103976
The file was modifiedpolly/lib/Analysis/ScopInfo.cpp
The file was modifiedpolly/unittests/DeLICM/DeLICMTest.cpp
The file was modifiedpolly/lib/CodeGen/IslAst.cpp
The file was modifiedpolly/lib/Support/ISLTools.cpp
The file was modifiedpolly/lib/Transform/DeLICM.cpp
The file was modifiedpolly/lib/Transform/ZoneAlgo.cpp
The file was modifiedpolly/lib/Analysis/DependenceInfo.cpp
The file was modifiedpolly/lib/Transform/FlattenAlgo.cpp
The file was modifiedpolly/lib/Transform/ScheduleTreeTransform.cpp
The file was modifiedpolly/lib/CodeGen/PPCGCodeGeneration.cpp
The file was modifiedpolly/lib/Exchange/JSONExporter.cpp
The file was modifiedpolly/lib/External/isl/include/isl/isl-noexceptions.h
The file was modifiedpolly/include/polly/ScopInfo.h
The file was modifiedpolly/lib/Support/SCEVAffinator.cpp
The file was modifiedpolly/lib/Transform/ForwardOpTree.cpp
The file was modifiedpolly/lib/Transform/MatmulOptimizer.cpp
The file was modifiedpolly/lib/Analysis/ScopBuilder.cpp
The file was modifiedpolly/lib/Transform/ManualOptimizer.cpp
The file was modifiedpolly/lib/Transform/ScheduleOptimizer.cpp
Commit 6b4b98d98c94256aaaa8d3d69e3ed0e43b732e2b by gysit
[mlir][[linalg] Remove deprecated structured op interface methods.

Cleanup the refactoring started by https://reviews.llvm.org/D103394.

Differential Revision: https://reviews.llvm.org/D104025
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
Commit 4125b46232caf6a558470670f87b56ccb46d61aa by Raphael Isemann
Revert "[lldb] Add support for evaluating expressions in static member functions"

This reverts commit 00764c36edf88ae9806e8d57a6addb782e6ceae8 and the
follow up d2223c7a49973a61cc2de62992662afa8d19065a.

The original patch broke that one could use static member variables while
inside a static member functions without having a running target. It seems that
LLDB currently requires that static variables are only found via the global
variable lookup so that they can get materialized and mapped to the argument
struct of the expression.

After 00764c36edf88ae9806e8d57a6addb782e6ceae8 static variables of the current
class could be found via Clang's lookup which LLDB isn't observing. This
resulting in expressions actually containing these variables as normal
globals that can't be rewritten to a member of the argument struct.

More specifically, in the test TestCPPThis, the expression
`expr --j false -- s_a` is now only passing if we have a runnable target.

I'll revert the patch as the possible fixes aren't trivial and it degrades
the debugging experience more than the issue that the revert patch addressed.

The underlying bug can be reproduced before/after this patch by stopping
in `TestCPPThis` main function and running: `e -j false -- my_a; A<int>::s_a`.
The `my_a` will pull in the `A<int>` class and the second expression will
be resolved by Clang on its own (which causes LLDB to not materialize the
static variable).

Note: A workaround is to just do `::s_a` which will force LLDB to take the global
variable lookup.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
The file was removedlldb/test/API/lang/cpp/stopped_in_static_member_function/main.cpp
The file was removedlldb/test/API/lang/cpp/stopped_in_static_member_function/Makefile
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
The file was removedlldb/test/API/lang/cpp/stopped_in_static_member_function/TestStoppedInStaticMemberFunction.py
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.h
Commit f6b4e081dc9cf74fb5c22439f552fa035f2c2651 by gysit
[mlir][linalg] Prepare drop unit dims for scalar operands.

Adapt drop unit dims for structured ops taking scalar operands.

Differential Revision: https://reviews.llvm.org/D103890
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
Commit f7bc9db95aba77157f10b627a4dea32c3174e148 by llvm-dev
Fix Wdocumentation missing parameter warnings. NFCI.
The file was modifiedclang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
Commit 4295c222a8f12f0d97a7c03f884c5d3f7c93aaa0 by llvm-dev
StringExtrasTest.cpp - add missing newline at the end of file. NFCI.
The file was modifiedllvm/unittests/ADT/StringExtrasTest.cpp
Commit 602ab248335e1540e82667e74fea44b7f042e112 by spatel
[SimplifyCFG] avoid crash on degenerate loop

The problematic code pattern in the test is based on:
https://llvm.org/PR50638

If the IfCond is itself the phi that we are trying to remove,
then the loop around line 2835 can end up with something like:
%cmp = select i1 %cmp, i1 false, i1 true

That can then lead to a use-after-free and assert (although
I'm still not seeing that locally in my release + asserts build).

I think this can only happen with unreachable code.

Differential Revision: https://reviews.llvm.org/D104063
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
The file was modifiedllvm/test/Transforms/SimplifyCFG/two-entry-phi-return.ll
Commit 307cfad0d639b0397033069473e84e6c7f249056 by llvm-dev
Fix extraneous ')' error.
The file was modifiedlldb/source/Core/DumpDataExtractor.cpp
Commit d2661c6c51756686c1f6be6981ee4ad527cba3d8 by gysit
[mlir][linalg] Prepare pad to static bounding box for scalar operands.

Adapt pad to static bounding box to support structured ops taking scalar operands.

Differential Revision: https://reviews.llvm.org/D103891
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
Commit 7b444a66b33ca7ec9cc7b9737205805e9d8106a2 by zahira.ammarguellat
Fix for error "'Run' overrides a member function but is not marked
'override' [-Werror,-Wsuggest-override]" occuring during windows
debug self-build.
The file was modifiedllvm/lib/Testing/Support/CMakeLists.txt
Commit 150f7cedfb2e072804f4a0887d14c97a7fe3f374 by zahira.ammarguellat
Referencing a static function defined in an opnemp clause, is
generating an erroneous warning.

See here: https://godbolt.org/z/ajKPc36M7
The file was addedclang/test/OpenMP/declare_variant.cpp
The file was modifiedclang/lib/Sema/Sema.cpp
Commit 9907746f5db7c2a91917fa7b312136f7bf03d2f5 by sjoerd.meijer
Move Function Specialization to its correct location. NFC.

As a follow up of rGc4a0969b9c14, and as part of D104102, move it to
the IPO transformations directory.
The file was addedllvm/lib/Transforms/IPO/FunctionSpecialization.cpp
The file was removedllvm/lib/Transforms/Scalar/FunctionSpecialization.cpp
The file was modifiedllvm/lib/Transforms/IPO/CMakeLists.txt
The file was modifiedllvm/lib/Transforms/Scalar/CMakeLists.txt
Commit c783013b1471b444a5384e64ac4677e1653057a9 by llvmgnsyncbot
[gn build] Port 9907746f5db7
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Scalar/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn
Commit e2d0798bc3e462738c557270528e8a983df0cf02 by Raphael Isemann
[lldb] Unmark TestInlines as XFAIL for gcc

This works for GCC>8.5 and ToT LLDB.
The file was modifiedlldb/test/API/lang/cpp/inlines/TestInlines.py
Commit b1603cb66fc68eb74c21041456c9e36466603244 by Raphael Isemann
[lldb] Fix compilation after removal of APInt::toString
The file was modifiedlldb/source/Plugins/Language/ObjC/Cocoa.cpp
The file was modifiedlldb/source/Utility/Scalar.cpp
Commit ab46490dfc5cded4b2873da75eb47e150d1ad92c by Raphael Isemann
[lldb] Remove GCC XFAIL for TestTypedefArray

This passes with GCC>8.5 and ToT LLDB.
The file was modifiedlldb/test/API/functionalities/data-formatter/typedef_array/TestTypedefArray.py
Commit edd9515bd125634f40ebc2e783d6a127345e7c0d by thomasraoux
[mlir][VectorToGPU] First step to convert vector ops to GPU MMA ops

This is the first step to convert vector ops to MMA operations in order to
target GPUs tensor core ops. This currently only support simple cases,
transpose and element-wise operation will be added later.

Differential Revision: https://reviews.llvm.org/D102962
The file was addedmlir/lib/Conversion/VectorToGPU/CMakeLists.txt
The file was addedmlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
The file was addedmlir/test/Conversion/VectorToGPU/vector-to-mma-ops.mlir
The file was modifiedmlir/include/mlir/Conversion/Passes.h
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was addedmlir/include/mlir/Conversion/VectorToGPU/VectorToGPU.h
Commit cd2bb16d563ef515903b2f421c0f0a1899314af5 by a.bataev
[SLP][NFC]Add a test for unordered stores, NFC.
The file was addedllvm/test/Transforms/SLPVectorizer/X86/stores-non-ordered.ll
Commit 74af4bb1f471d042084328271bad80fe2acde8f4 by a.bataev
[SLP]Remove unnecessary UndefValue in CreateShuffle.

No need to use UndefValue in CreateShuffle call.

Differential Revision: https://reviews.llvm.org/D104113
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/gather-root.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-fp-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/arith-fp.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/resched.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/transpose.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-calls-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/phi.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-int-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/cmp_commute.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/load-merge.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR35865.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-cast-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-fp.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr49081.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-calls.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/load-merge-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/PR35865-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/transpose-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/arith-fp-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/sext-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/cmp_commute-inseltpoison.ll
Commit f2b1a1e10c5a4a3e96cc244adfbacfb5e97c3ca5 by thakis
[lld/mac] Use sectionType() more

Not sure sectionType() carries its weight, but while we have it
we should use it consistently.

No behavior change.

Differential Revision: https://reviews.llvm.org/D104027
The file was modifiedlld/MachO/ConcatOutputSection.cpp
The file was modifiedlld/MachO/InputSection.cpp
Commit 0867edfc643891c22ef089f8f6a4dadc691f0742 by mascasa
[HWASan] Add basic stack tagging support for LAM.

Adds the basic instrumentation needed for stack tagging.

Currently does not support stack short granules or TLS stack histories,
since a different code path is followed for the callback instrumentation
we use.

We may simply wait to support these two features until we switch to
a custom calling convention.

Patch By: xiangzhangllvm, morehouse

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D102901
The file was modifiedcompiler-rt/test/hwasan/TestCases/stack-uar.c
The file was addedllvm/test/Instrumentation/HWAddressSanitizer/X86/alloca-with-calls.ll
The file was modifiedcompiler-rt/test/hwasan/TestCases/stack-uar-realign.c
The file was modifiedcompiler-rt/test/hwasan/TestCases/mem-intrinsics.c
The file was modifiedcompiler-rt/test/hwasan/TestCases/deep-recursion.c
The file was modifiedcompiler-rt/test/hwasan/TestCases/rich-stack.c
The file was addedllvm/test/Instrumentation/HWAddressSanitizer/X86/alloca.ll
The file was modifiedcompiler-rt/test/hwasan/TestCases/longjmp.c
The file was addedllvm/test/Instrumentation/HWAddressSanitizer/X86/alloca-array.ll
The file was modifiedclang/test/Driver/fsanitize.c
The file was modifiedcompiler-rt/test/hwasan/TestCases/stack-history-length.c
The file was modifiedcompiler-rt/test/hwasan/TestCases/stack-oob.c
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedcompiler-rt/test/hwasan/TestCases/stack-uar-dynamic.c
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
Commit e42a347b74400b7212ceaaea6d39562a0435df42 by Chris.Hamilton
[Sema] Address-space sensitive check for unbounded arrays (v2)

Check applied to unbounded (incomplete) arrays and pointers to spot
cases where the computed address is beyond the largest possible
addressable extent of the array, based on the address space in which the
array is delcared, or which the pointer refers to.

Check helps to avoid cases of nonsense pointer math and array indexing
which could lead to linker failures or runtime exceptions.  Of
particular interest when building for embedded systems with small
address spaces.

This is version 2 of this patch -- version 1 had some testing issues
due to a sign error in existing code.  That error is corrected and
lit test for this chagne is extended to verify the fix.

Originally reviewed/accepted by: aaron.ballman
Original revision: https://reviews.llvm.org/D86796

Reviewed By: aaron.ballman, ebevhan

Differential Revision: https://reviews.llvm.org/D88174
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was addedclang/test/Sema/unbounded-array-bounds.c
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/Sema/const-eval.c
The file was modifiedclang/test/SemaCXX/constant-expression-cxx14.cpp
Commit 7e9822cc55065b7c450dda254340765794e11fe3 by Chris.Hamilton
Revert "[Sema] Address-space sensitive check for unbounded arrays (v2)"

This reverts commit e42a347b74400b7212ceaaea6d39562a0435df42.
The file was modifiedclang/lib/Sema/SemaChecking.cpp
The file was modifiedclang/test/Sema/const-eval.c
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/SemaCXX/constant-expression-cxx14.cpp
The file was removedclang/test/Sema/unbounded-array-bounds.c
Commit a010d4230e13790b6ff7d2b8f49d478185489fb4 by a.bataev
[SLP]Allow reordering of insertelements.

After we added support for non-ordered insertelements, we can allow
their reordering.

Differential Revision: https://reviews.llvm.org/D104057
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was modifiedllvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/external_user_jumbled_load-inseltpoison.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/external_user_jumbled_load.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/operandorder.ll
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
Commit 773771ba382b1fbcf6acccc0046bfe731541a599 by tomas.matheson
[CodeGen][regalloc] Don't align stack slots if the stack can't be realigned

Register allocation may spill virtual registers to the stack, which can
increase alignment requirements of the stack frame. If the the function
did not require stack realignment before register allocation, the
registers required to do so may not be reserved/available. This results
in a stack frame that requires realignment but can not be realigned.

Instead, only increase the alignment of the stack if we are still able
to realign.

The register SpillAlignment will be ignored if we can't realign, and the
backend will be responsible for emitting the correct unaligned loads and
stores. This seems to be the assumed behaviour already, e.g.
ARMBaseInstrInfo::storeRegToStackSlot and X86InstrInfo::storeRegToStackSlot
are both `canRealignStack` aware.

Differential Revision: https://reviews.llvm.org/D103602
The file was modifiedllvm/test/CodeGen/X86/stack-folding-int-avx512.ll
The file was modifiedllvm/test/CodeGen/X86/half.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-across-func.ll
The file was modifiedllvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-scatter-optimisation.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-scatter-increment.ll
The file was modifiedllvm/test/CodeGen/X86/addsub-constant-folding.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-lower-tile-copy.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
The file was modifiedllvm/test/CodeGen/X86/stack-folding-fp-avx512.ll
The file was modifiedllvm/lib/CodeGen/VirtRegMap.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
The file was modifiedllvm/test/CodeGen/X86/rotate-extract-vector.ll
The file was modifiedllvm/test/CodeGen/X86/vzero-excess.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-128.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-phireg.ll
The file was modifiedllvm/test/CodeGen/X86/avx-intrinsics-x86_64.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-bugfix-25270.ll
The file was modifiedllvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
The file was modifiedllvm/test/CodeGen/X86/vec-libcalls.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-multivec-spill.ll
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld4.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-gather-increment.ll
The file was modifiedllvm/test/CodeGen/X86/sext-vsetcc.ll
The file was modifiedllvm/test/CodeGen/X86/avx-vzeroupper.ll
The file was modifiedllvm/test/CodeGen/X86/vector-half-conversions.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-spill.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-postinc-lsr.ll
The file was modifiedllvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-mlapred.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-postinc-dct.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vldst4.ll
The file was modifiedllvm/test/CodeGen/X86/fma.ll
Commit 82a3b606b01d2da23a40785222f3f7d15401dda0 by aaron
Update the C status page somewhat.

This adds implementation information for N2607,
clarifies that C17 only resolved defect reports,
and adds -std= information for the different versions.
The file was modifiedclang/www/c_status.html
Commit 5ef5177145b48e6379fe3a6434d3ff593fe7202a by asahay
[lldb-vscode] Synchronize calls to SendTerminatedEvent

If an inferior exits prior to the processing of a disconnect request,
then the threads executing EventThreadFunction and request_discontinue
respectively may call SendTerminatedEvent simultaneously, in turn,
testing and/or setting g_vsc.sent_terminated_event without any
synchronization. In case the thread executing EventThreadFunction sets
it before the thread executing request_discontinue has had a chance to
test it, the latter would move ahead to issue a response to the
disconnect request. Said response may be dispatched ahead of the
terminated event compelling the client to terminate the debug session
without consuming any console output that might've been generated by
the execution of terminateCommands.

Reviewed By: clayborg, wallace

Differential Revision: https://reviews.llvm.org/D103609
The file was modifiedlldb/tools/lldb-vscode/lldb-vscode.cpp
Commit f2cc0427b13ef10e67eed6eab9eefb58e8aef3d9 by enye.shi
[HIP] Fix --hip-version flag with 0 as component

Allow the usage of minor version 0, for hip versions
such as 4.0. Change the default values when performing
version checks.

Reviewed By: yaxunl

Differential Revision: https://reviews.llvm.org/D104062
The file was modifiedclang/test/Driver/hip-version.hip
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
Commit e0efebb8eb7cec4a90c73d693c9e1e7fbce8d637 by anemet
[Matrix] In transpose opts, handle a^t * a^t

Without the fix the testcase crashes because we remove the same instruction
twice.

Differential Revision: https://reviews.llvm.org/D104127
The file was modifiedllvm/test/Transforms/LowerMatrixIntrinsics/transpose-opts.ll
The file was modifiedllvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Commit 9106047ee3dd93a250deb1ef34b890f486dee710 by zoecarver
[libcxx][ranges] Add range.subrange.

Basically the title.

Differential Revision: https://reviews.llvm.org/D102006
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctor/range_size.pass.cpp
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/subrange_test_types.h
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/access/get.pass.cpp
The file was modifiedlibcxx/include/ranges
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctor/begin_end_size.pass.cpp
The file was addedlibcxx/include/__ranges/subrange.h
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/access/advance.pass.cpp
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctor/pair_like_conv.pass.cpp
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/general.compile.pass.cpp
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/access/primitives.pass.cpp
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctor/begin_end.pass.cpp
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctad.compile.pass.cpp
The file was addedlibcxx/test/std/ranges/range.utility/range.subrange/ctor/range.pass.cpp
Commit 2244a0f5fe627bacd32e493604b5c604ef41d361 by llvmgnsyncbot
[gn build] Port 9106047ee3dd
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit f84dbd2f2befb628ac2ac151fed495d70a2d05be by Louis Dionne
[libc++] Enable the synchronization library on Apple platforms

The synchronization library was marked as disabled on Apple platforms
up to now because we were not 100% sure that it was going to be ABI
stable. However, it's been some time since we shipped it in upstream
libc++ now and there's been no changes so far. This patch enables the
synchronization library on Apple platforms, and hence commits the ABI
stability as far as that vendor is concerned.

Differential Revision: https://reviews.llvm.org/D96790
The file was modifiedlibcxx/test/std/thread/thread.latch/count_down.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.semaphore/release.pass.cpp
The file was modifiedlibcxx/include/__availability
The file was modifiedlibcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.latch/try_wait.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.semaphore/acquire.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.semaphore/timed.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.barrier/arrive.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.barrier/completion.pass.cpp
The file was modifiedlibcxx/test/std/thread/thread.semaphore/binary.pass.cpp
Commit f35bcea1d4748889b8240defdf00cb7a71cbe070 by carrot
[X86FixupLEAs] Sub register usage of LEA dest should block LEA/SUB optimization

In function searchALUInst, sub register usage of LEA dest should also block LEA/SUB optimization, otherwise the sub register usage gets an undefined value.

This patch fixes https://bugs.llvm.org/show_bug.cgi?id=50615.

Differential Revision: https://reviews.llvm.org/D103922
The file was modifiedllvm/test/CodeGen/X86/lea-opt2.ll
The file was modifiedllvm/lib/Target/X86/X86FixupLEAs.cpp
Commit c54d3050f7b9fa550144f792d79ec5b2d5de31c5 by Louis Dionne
[libc++] NFC: Move indirect_concepts.h to __iterator/concepts.h

There's no fundamental reason to separate those from the other iterator
concepts.

Differential Revision: https://reviews.llvm.org/D104048
The file was modifiedlibcxx/include/__iterator/projected.h
The file was modifiedlibcxx/include/iterator
The file was modifiedlibcxx/include/CMakeLists.txt
The file was modifiedlibcxx/include/__iterator/concepts.h
The file was removedlibcxx/include/__iterator/indirect_concepts.h
Commit ee98f600de9ed1498fae75a08382a1f73c1d69bb by llvmgnsyncbot
[gn build] Port c54d3050f7b9
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 94a07c79cf108b8b9566acfa64d11aca27d60a84 by valery.n.dmitriev
[SLP][NFC] Fix condition that was supposed to save a bit of compile time.

It was found by chance revealing discrepancy between comment (few lines above),
the condition and how re-ordering of instruction is done inside the if statement
it guards. The condition was always evaluated to true.

Differential Revision: https://reviews.llvm.org/D104064
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit c7dee6aefd5b5f1d92d279ddd40b81217b496d50 by Jonas Devlieghere
[lldb] Enable TestRuntimeTypes on Apple Silicon
The file was modifiedlldb/test/API/lang/objc/foundation/TestRuntimeTypes.py
Commit fc71a5c6e8e8bd28e43cf58faabad6e7e2fcc652 by Jonas Devlieghere
[lldb] Support new objective-c hash table layout

Update LLDB for thew new Objective-C hash table layout in the dyld
shared cache found in macOS Monterey.

rdar://72863911
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
Commit fdc0d4360b4e072bd91cdf9133fdf570d8fb16a2 by zinenko
Introduce alloca_scope op

## Introduction

This proposal describes the new op to be added to the `std` (and later moved `memref`)
dialect called `alloca_scope`.

## Motivation

Alloca operations are easy to misuse, especially if one relies on it while doing
rewriting/conversion passes. For example let's consider a simple example of two
independent dialects, one defines an op that wants to allocate on-stack and
another defines a construct that corresponds to some form of looping:

```
dialect1.looping_op {
  %x = dialect2.stack_allocating_op
}
```

Since the dialects might not know about each other they are going to define a
lowering to std/scf/etc independently:

```
scf.for … {
   %x_temp = std.alloca …
   … // do some domain-specific work using %x_temp buffer
   … // and store the result into %result
   %x = %result
}
```

Later on the scf and `std.alloca` is going to be lowered to llvm using a
combination of `llvm.alloca` and unstructured control flow.

At this point the use of `%x_temp` is bound to either be either optimized by
llvm (for example using mem2reg) or in the worst case: perform an independent
stack allocation on each iteration of the loop. While the llvm optimizations are
likely to succeed they are not guaranteed to do so, and they provide
opportunities for surprising issues with unexpected use of stack size.

## Proposal

We propose a new operation that defines a finer-grain allocation scope for the
alloca-allocated memory called `alloca_scope`:

```
alloca_scope {
   %x_temp = alloca …
   ...
}
```

Here the lifetime of `%x_temp` is going to be bound to the narrow annotated
region within `alloca_scope`. Moreover, one can also return values out of the
alloca_scope with an accompanying `alloca_scope.return` op (that behaves
similarly to `scf.yield`):

```
%result = alloca_scope {
   %x_temp = alloca …
   …
   alloca_scope.return %myvalue
}
```

Under the hood the `alloca_scope` is going to lowered to a combination of
`llvm.intr.stacksave` and `llvm.intr.strackrestore` that are going to be invoked
automatically as control-flow enters and leaves the body of the `alloca_scope`.

The key value of the new op is to allow deterministic guaranteed stack use
through an explicit annotation in the code which is finer-grain than the
function-level scope of `AutomaticAllocationScope` interface. `alloca_scope`
can be inserted at arbitrary locations and doesn’t require non-trivial
transformations such as outlining.

## Which dialect

Before memref dialect is split, `alloca_scope` can temporarily reside in `std`
dialect, and later on be moved to `memref` together with the rest of
memory-related operations.

## Implementation

An implementation of the op is available [here](https://reviews.llvm.org/D97768).

Original commits:

* Add initial scaffolding for alloca_scope op
* Add alloca_scope.return op
* Add no region arguments and variadic results
* Add op descriptions
* Add failing test case
* Add another failing test
* Initial implementation of lowering for std.alloca_scope
* Fix backticks
* Fix getSuccessorRegions implementation

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D97768
The file was modifiedmlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
The file was addedmlir/test/Conversion/StandardToLLVM/convert-alloca-scope.mlir
The file was modifiedmlir/test/Dialect/MemRef/ops.mlir
The file was modifiedmlir/include/mlir/Dialect/MemRef/IR/MemRef.h
Commit ce44fe199bbfd4b5a44764b678c431fdc117116a by Chris.Hamilton
[Sema] Address-space sensitive check for unbounded arrays (v2)

Check applied to unbounded (incomplete) arrays and pointers to spot
cases where the computed address is beyond the largest possible
addressable extent of the array, based on the address space in which the
array is delcared, or which the pointer refers to.

Check helps to avoid cases of nonsense pointer math and array indexing
which could lead to linker failures or runtime exceptions.  Of
particular interest when building for embedded systems with small
address spaces.

This is version 2 of this patch -- version 1 had some testing issues
due to a sign error in existing code.  That error is corrected and
lit test for this chagne is extended to verify the fix.

Originally reviewed/accepted by: aaron.ballman
Original revision: https://reviews.llvm.org/D86796

Reviewed By: aaron.ballman, ebevhan

Differential Revision: https://reviews.llvm.org/D88174
The file was modifiedclang/test/Sema/const-eval.c
The file was modifiedclang/test/SemaCXX/constant-expression-cxx14.cpp
The file was addedclang/test/Sema/unbounded-array-bounds.c
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaChecking.cpp
Commit 93f3c7cc3efc4911af2a7848fbae339ebbc5c3a0 by Matthew.Arsenault
CodeGen: Fix missing const
The file was modifiedllvm/include/llvm/CodeGen/MachineFunction.h
The file was modifiedllvm/lib/CodeGen/MachineFunction.cpp
Commit 9d7299b6f0ab1ff1df244151ca788904a043f5af by Matthew.Arsenault
GlobalISel: Reduce indentation and remove dead path
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 6dd54dada3b1f60340078fe4e82e8a62258d8d6b by Matthew.Arsenault
AMDGPU/GlobalISel: Fix indentation
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit a845dc1e562c20db54018a121eb01970e76602db by Matthew.Arsenault
AMDGPU/GlobalISel: Remove leftover hack for argument memory sizes

Since the call lowering code now tries to respect the tablegen
reported argument types, this is no longer necessary.
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
Commit 7eba4856c702b1d9d0bd1d3ef58661ba6c0e58de by zoecarver
[libcxx][ranges] Add class ref_view.

Differential Revision: https://reviews.llvm.org/D102020
The file was addedlibcxx/include/__ranges/ref_view.h
The file was modifiedlibcxx/include/ranges
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/test/std/ranges/range.adaptors/range.ref.view.pass.cpp
Commit a67780f7db26f0b3588e9366cd6b66ec1434ab1c by llvmgnsyncbot
[gn build] Port 7eba4856c702
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 27ef43d279b2f6d0c7bac7718f3904bb204ed646 by harald
[compiler-rt] Add platform detection support for x32

Currently, the compiler-rt build system checks only whether __X86_64
is defined to determine whether the default compiler-rt target arch
is x86_64. Since x32 defines __X86_64 as well, we must also check that
the default pointer size is eight bytes and not four bytes to properly
detect a 64-bit x86_64 compiler-rt default target arch.

Reviewed By: hvdijk, vitalybuka

Differential Revision: https://reviews.llvm.org/D99988
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTUtils.cmake
Commit c0c5a98b2c47bfb93a99b408cee2416005c16274 by aeubanks
[NFC][OpaquePtr] Explicitly pass GEP source type in optimizeGatherScatterInst()

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103480
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
Commit e0b469ffa142353fc90bfc6eadb638a805ebed75 by kda
[clang-cl][sanitizer] Add -fsanitize-address-use-after-return to clang.

Also:
  - add driver test (fsanitize-use-after-return.c)
  - add basic IR test (asan-use-after-return.cpp)
  - (NFC) cleaned up logic for generating table of __asan_stack_malloc
    depending on flag.

for issue: https://github.com/google/sanitizers/issues/1394

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D104076
The file was modifiedclang/lib/Basic/Sanitizers.cpp
The file was modifiedllvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
The file was modifiedclang/include/clang/Basic/CodeGenOptions.def
The file was modifiedclang/lib/Driver/SanitizerArgs.cpp
The file was modifiedclang/include/clang/Driver/SanitizerArgs.h
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedclang/test/Driver/cl-options.c
The file was modifiedclang/include/clang/Basic/Sanitizers.h
The file was addedclang/test/Driver/fsanitize-use-after-return.c
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedclang/test/CodeGen/asan-use-after-return.cpp
Commit 1b241b9b400bdfc5b8e0d157f0f46436677927b8 by psteinfeld
[flang] Handle multiple USE statements for the same module

It's possible to have several USE statements for the same module that
have different mixes of rename clauses and ONLY clauses.  The presence
of a rename cause has the effect of hiding a previously associated name,
and the presence of an ONLY clause forces the name to be visible even in
the presence of a rename.

I fixed this by keeping track of the names that appear on rename and ONLY
clauses.  Then, when processing the USE association of a name, I check to see
if it previously appeared in a rename clause and not in a USE clause.  If so, I
remove its USE associated symbol.  Also, when USE associating all of the names
in a module, I do not USE associate names that have appeared in rename clauses.

I also added a test.

Differential Revision: https://reviews.llvm.org/D104130
The file was addedflang/test/Semantics/modfile41.f90
The file was modifiedflang/lib/Semantics/resolve-names.cpp
Commit f60d23c7381c347ad57cb776430dc18730890993 by marius.brehler
[mlir][docs] Reorder PassWrapper arguments

Fixes the order of template arguments passed to the `PassWrapper`.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D104132
The file was modifiedmlir/docs/PassManagement.md
Commit 06c3d52aa2fa3b6a9aa019906ad8577813efe32a by aeubanks
[docs][OpaquePtr] Add some specific examples of what needs to be done
The file was modifiedllvm/docs/OpaquePointers.rst
Commit f47d00c54b52bd8adf9b8725912ea1cd0f1873d5 by andrew.litteken
[IRSim] Adding basic implementation of llvm-sim.

This is a similarity visualization tool that accepts a Module and
passes it to the IRSimilarityIdentifier.  The resulting SimilarityGroups
are output in a JSON file.

Tests are found in test/tools/llvm-sim and check for the file not found,
a bad module, and that the JSON is created correctly.

Reviewers: paquette, jroelofs, MaskRay

Recommit of: 15645d044bcfe2a0f63156048b302f997a717688 to fix linking
errors.

Differential Revision: https://reviews.llvm.org/D86974
The file was modifiedllvm/test/lit.cfg.py
The file was addedllvm/test/tools/llvm-sim/single-sim.test
The file was addedllvm/test/tools/llvm-sim/Inputs/sim1.ll
The file was addedllvm/tools/llvm-sim/llvm-sim.cpp
The file was modifiedllvm/test/CMakeLists.txt
The file was addedllvm/test/tools/llvm-sim/single-sim-file.test
The file was addedllvm/test/tools/llvm-sim/fail-cases.test
The file was addedllvm/tools/llvm-sim/CMakeLists.txt
Commit 22dea6923155b18d172db64e5dab4b71afe19e6e by Alex Lorenz
[clang][ObjC] allow the use of NSAttributedString * argument type with format attribute

This is useful for APIs that want to accept an attributed NSString as their format string

rdar://79163229
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/test/SemaObjC/format-strings-objc.m
Commit ac81cb7e6dde9b0890ee1780eae94ab96743569b by listmail
Allow ptrtoint/inttoptr of non-integral pointer types in IR

I don't like landing this change, but it's an acknowledgement of a practical reality.  Despite not having well specified semantics for inttoptr and ptrtoint involving non-integral pointer types, they are used in practice.  Here's a quick summary of the current pragmatic reality:
* I happen to know that the main external user of non-integral pointers has effectively disabled the verifier rules.
* RS4GC (the lowering pass for abstract GC machine model which is the key motivation for non-integral pointers), even supports them.  We just have all the tests using an integral pointer space to let the verifier run.
* Certain idioms (such as alignment checks for alignment N, where any relocation is guaranteed to be N byte aligned) are fine in practice.
* As implemented, inttoptr/ptrtoint are CSEd and are not control dependent.  This means that any code which is intending to check a particular bit pattern at site of use must be wrapped in an intrinsic or external function call.

This change allows them in the Verifier, and updates the LangRef to specific them as implementation dependent.  This allows us to acknowledge current reality while still leaving ourselves room to punt on figuring out "good" semantics until the future.
The file was modifiedllvm/test/Verifier/non-integral-pointers.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/base-inttoptr.ll
The file was modifiedllvm/docs/LangRef.rst
The file was modifiedllvm/test/Transforms/RewriteStatepointsForGC/constants.ll
Commit 8bc0eb401165a6dab0807c8257dce3e6598cab71 by andrew.litteken
Revert "[IRSim] Adding basic implementation of llvm-sim."

This reverts commit f47d00c54b52bd8adf9b8725912ea1cd0f1873d5.
The file was modifiedllvm/test/CMakeLists.txt
The file was removedllvm/tools/llvm-sim/llvm-sim.cpp
The file was removedllvm/test/tools/llvm-sim/fail-cases.test
The file was removedllvm/test/tools/llvm-sim/single-sim-file.test
The file was modifiedllvm/test/lit.cfg.py
The file was removedllvm/test/tools/llvm-sim/Inputs/sim1.ll
The file was removedllvm/tools/llvm-sim/CMakeLists.txt
The file was removedllvm/test/tools/llvm-sim/single-sim.test
Commit 79ffbc9c9f5fac6296d6d4b12167b77d7b013371 by daniil.fukalov
[NFC][CostModel] Fixed comment that comparisons work regardless of the state.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D104068
The file was modifiedllvm/include/llvm/Support/InstructionCost.h
Commit 0aef747b846586c29ed3285bbed20a3d607576fa by lebedev.ri
[NFC][X86][Codegen] Megacommit: mass-regenerate all check lines that were already autogenerated

The motivation is that the update script has at least two deviations
(`<...>@GOT`/`<...>@PLT`/ and not hiding pointer arithmetics) from
what pretty much all the checklines were generated with,
and most of the tests are still not updated, so each time one of the
non-up-to-date tests is updated to see the effect of the code change,
there is a lot of noise. Instead of having to deal with that each
time, let's just deal with everything at once.

This has been done via:
```
cd llvm-project/llvm/test/CodeGen/X86
grep -rl "; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py" | xargs -L1 <...>/llvm-project/llvm/utils/update_llc_test_checks.py --llc-binary <...>/llvm-project/build/bin/llc
```

Not all tests were regenerated, however.
The file was modifiedllvm/test/CodeGen/X86/avx512-insert-extract.ll
The file was modifiedllvm/test/CodeGen/X86/byval3.ll
The file was modifiedllvm/test/CodeGen/X86/pr27591.ll
The file was modifiedllvm/test/CodeGen/X86/fp-logic.ll
The file was modifiedllvm/test/CodeGen/X86/byval4.ll
The file was modifiedllvm/test/CodeGen/X86/insertelement-ones.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v8.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-ext.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath.ll
The file was modifiedllvm/test/CodeGen/X86/vector-rotate-256.ll
The file was modifiedllvm/test/CodeGen/X86/min-legal-vector-width.ll
The file was modifiedllvm/test/CodeGen/X86/large-pic-string.ll
The file was modifiedllvm/test/CodeGen/X86/combine-fabs.ll
The file was modifiedllvm/test/CodeGen/X86/byval2.ll
The file was modifiedllvm/test/CodeGen/X86/vec_ext_inreg.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-arith.ll
The file was modifiedllvm/test/CodeGen/X86/remat-constant.ll
The file was modifiedllvm/test/CodeGen/X86/vshli-simplify-demanded-bits.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-xor-bool.ll
The file was modifiedllvm/test/CodeGen/X86/fast-isel-fneg.ll
The file was modifiedllvm/test/CodeGen/X86/speculative-load-hardening-indirect.ll
The file was modifiedllvm/test/CodeGen/X86/clear_upper_vector_element_bits.ll
The file was modifiedllvm/test/CodeGen/X86/avx-intrinsics-x86-upgrade.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
The file was modifiedllvm/test/CodeGen/X86/bug37521.ll
The file was modifiedllvm/test/CodeGen/X86/cgp-usubo.ll
The file was modifiedllvm/test/CodeGen/X86/vec_ctbits.ll
The file was modifiedllvm/test/CodeGen/X86/prefer-avx256-mask-extend.ll
The file was modifiedllvm/test/CodeGen/X86/20090313-signext.ll
The file was modifiedllvm/test/CodeGen/X86/extractelement-fp.ll
The file was modifiedllvm/test/CodeGen/X86/sse-load-ret.ll
The file was modifiedllvm/test/CodeGen/X86/fminnum.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-libcalls.ll
The file was modifiedllvm/test/CodeGen/X86/fp-strict-scalar-inttofp.ll
The file was modifiedllvm/test/CodeGen/X86/negative-sin.ll
The file was modifiedllvm/test/CodeGen/X86/vec_reassociate.ll
The file was modifiedllvm/test/CodeGen/X86/neg_fp.ll
The file was modifiedllvm/test/CodeGen/X86/pr33290.ll
The file was modifiedllvm/test/CodeGen/X86/bswap.ll
The file was modifiedllvm/test/CodeGen/X86/midpoint-int-vec-256.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-regs.ll
The file was modifiedllvm/test/CodeGen/X86/popcnt.ll
The file was modifiedllvm/test/CodeGen/X86/pr36553.ll
The file was modifiedllvm/test/CodeGen/X86/named-vector-shuffle-reverse.ll
The file was modifiedllvm/test/CodeGen/X86/urem-seteq-vec-nonzero.ll
The file was modifiedllvm/test/CodeGen/X86/avg.ll
The file was modifiedllvm/test/CodeGen/X86/pr40539.ll
The file was modifiedllvm/test/CodeGen/X86/select.ll
The file was modifiedllvm/test/CodeGen/X86/DynamicCalleeSavedRegisters.ll
The file was modifiedllvm/test/CodeGen/X86/2007-04-27-InlineAsm-IntMemInput.ll
The file was modifiedllvm/test/CodeGen/X86/pow.75.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-innerouter.ll
The file was modifiedllvm/test/CodeGen/X86/xop-mask-comments.ll
The file was modifiedllvm/test/CodeGen/X86/var-permute-128.ll
The file was modifiedllvm/test/CodeGen/X86/mul128.ll
The file was modifiedllvm/test/CodeGen/X86/vec_minmax_match.ll
The file was modifiedllvm/test/CodeGen/X86/movmsk-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/inline-asm-fpstack.ll
The file was modifiedllvm/test/CodeGen/X86/clear-highbits.ll
The file was modifiedllvm/test/CodeGen/X86/vec_smulo.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-uniqueing.ll
The file was modifiedllvm/test/CodeGen/X86/pr43157.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store.ll
The file was modifiedllvm/test/CodeGen/X86/pr34271-1.ll
The file was modifiedllvm/test/CodeGen/X86/bitreverse.ll
The file was modifiedllvm/test/CodeGen/X86/recip-fastmath2.ll
The file was modifiedllvm/test/CodeGen/X86/sadd_sat_vec.ll
The file was modifiedllvm/test/CodeGen/X86/pr44396.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
The file was modifiedllvm/test/CodeGen/X86/vector-pack-128.ll
The file was modifiedllvm/test/CodeGen/X86/vshift-6.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
The file was modifiedllvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll
The file was modifiedllvm/test/CodeGen/X86/extract-fp.ll
The file was modifiedllvm/test/CodeGen/X86/alias-static-alloca.ll
The file was modifiedllvm/test/CodeGen/X86/prefer-avx256-mulo.ll
The file was modifiedllvm/test/CodeGen/X86/uintr-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/pr46527.ll
The file was modifiedllvm/test/CodeGen/X86/fp-cvt.ll
The file was modifiedllvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll
The file was modifiedllvm/test/CodeGen/X86/x86-shrink-wrapping.ll
The file was modifiedllvm/test/CodeGen/X86/2008-11-29-ULT-Sign.ll
The file was modifiedllvm/test/CodeGen/X86/2008-12-23-crazy-address.ll
The file was modifiedllvm/test/CodeGen/X86/cet_endbr_imm_enhance.ll
The file was modifiedllvm/test/CodeGen/X86/swift-return.ll
The file was modifiedllvm/test/CodeGen/X86/nobt.ll
The file was modifiedllvm/test/CodeGen/X86/vector-popcnt-256-ult-ugt.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-invoke.ll
The file was modifiedllvm/test/CodeGen/X86/lower-bitcast.ll
The file was modifiedllvm/test/CodeGen/X86/fast-isel-bc.ll
The file was modifiedllvm/test/CodeGen/X86/combine-fcopysign.ll
The file was modifiedllvm/test/CodeGen/X86/split-vector-rem.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-duplicates-export.ll
The file was modifiedllvm/test/CodeGen/X86/2008-09-11-CoalescerBug2.ll
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/fconstant.ll
The file was modifiedllvm/test/CodeGen/X86/load-local-v3i1.ll
The file was modifiedllvm/test/CodeGen/X86/shrink-wrap-chkstk-x86_64.ll
The file was modifiedllvm/test/CodeGen/X86/vec_ss_load_fold.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-pic-6.ll
The file was modifiedllvm/test/CodeGen/X86/x86-interleaved-access.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/code-model-elf.ll
The file was modifiedllvm/test/CodeGen/X86/midpoint-int-vec-128.ll
The file was modifiedllvm/test/CodeGen/X86/vec-copysign-avx512.ll
The file was modifiedllvm/test/CodeGen/X86/split-eh-lpad-edges.ll
The file was modifiedllvm/test/CodeGen/X86/insertps-combine.ll
The file was modifiedllvm/test/CodeGen/X86/pr44140.ll
The file was modifiedllvm/test/CodeGen/X86/vector-narrow-binop.ll
The file was modifiedllvm/test/CodeGen/X86/pr38743.ll
The file was modifiedllvm/test/CodeGen/X86/stack-protector-strong-macho-win32-xor.ll
The file was modifiedllvm/test/CodeGen/X86/combine-srem.ll
The file was modifiedllvm/test/CodeGen/X86/vector-partial-undef.ll
The file was modifiedllvm/test/CodeGen/X86/vector-pack-512.ll
The file was modifiedllvm/test/CodeGen/X86/pr38803.ll
The file was modifiedllvm/test/CodeGen/X86/vec_insert-7.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-vbroadcast.ll
The file was modifiedllvm/test/CodeGen/X86/GlobalISel/frameIndex.ll
The file was modifiedllvm/test/CodeGen/X86/twoaddr-coalesce.ll
The file was modifiedllvm/test/CodeGen/X86/2009-06-15-not-a-tail-call.ll
The file was modifiedllvm/test/CodeGen/X86/avx512bw-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-512.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-allocas.ll
The file was modifiedllvm/test/CodeGen/X86/lsr-sort.ll
The file was modifiedllvm/test/CodeGen/X86/avx2-vbroadcast.ll
The file was modifiedllvm/test/CodeGen/X86/bitcast-setcc-128.ll
The file was modifiedllvm/test/CodeGen/X86/2007-01-13-StackPtrIndex.ll
The file was modifiedllvm/test/CodeGen/X86/scalar-int-to-fp.ll
The file was modifiedllvm/test/CodeGen/X86/sibcall.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
The file was modifiedllvm/test/CodeGen/X86/code-model-elf-memset.ll
The file was modifiedllvm/test/CodeGen/X86/prefer-avx256-mask-shuffle.ll
The file was modifiedllvm/test/CodeGen/X86/fabs.ll
The file was modifiedllvm/test/CodeGen/X86/fmaxnum.ll
The file was modifiedllvm/test/CodeGen/X86/TruncAssertZext.ll
The file was modifiedllvm/test/CodeGen/X86/vector-rem.ll
The file was modifiedllvm/test/CodeGen/X86/inline-asm-flag-output.ll
The file was modifiedllvm/test/CodeGen/X86/backpropmask.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-vbroadcasti128.ll
The file was modifiedllvm/test/CodeGen/X86/fptosi-constant.ll
The file was modifiedllvm/test/CodeGen/X86/selectcc-to-shiftand.ll
The file was modifiedllvm/test/CodeGen/X86/divrem8_ext.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-gather-scatter-intrin-deprecated.ll
The file was modifiedllvm/test/CodeGen/X86/byval6.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-spill-slot-size-promotion.ll
The file was modifiedllvm/test/CodeGen/X86/lower-vec-shift.ll
The file was modifiedllvm/test/CodeGen/X86/pr23603.ll
The file was modifiedllvm/test/CodeGen/X86/tailcc-fastcc.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-sdiv-256.ll
The file was modifiedllvm/test/CodeGen/X86/fp-une-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/fastmath-float-half-conversion.ll
The file was modifiedllvm/test/CodeGen/X86/sse-minmax.ll
The file was modifiedllvm/test/CodeGen/X86/musttail-varargs.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-scalar-variablemask.ll
The file was modifiedllvm/test/CodeGen/X86/peephole-fold-movsd.ll
The file was modifiedllvm/test/CodeGen/X86/fp-strict-scalar-round.ll
The file was modifiedllvm/test/CodeGen/X86/shift-parts.ll
The file was modifiedllvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-baseptr.ll
The file was modifiedllvm/test/CodeGen/X86/pr47517.ll
The file was modifiedllvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll
The file was modifiedllvm/test/CodeGen/X86/break-false-dep.ll
The file was modifiedllvm/test/CodeGen/X86/memcpy-struct-by-value.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp-optsize.ll
The file was modifiedllvm/test/CodeGen/X86/vector-bitreverse.ll
The file was modifiedllvm/test/CodeGen/X86/rotate_vec.ll
The file was modifiedllvm/test/CodeGen/X86/vselect-pcmp.ll
The file was modifiedllvm/test/CodeGen/X86/cvt16.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
The file was modifiedllvm/test/CodeGen/X86/combine-bitreverse.ll
The file was modifiedllvm/test/CodeGen/X86/ftrunc.ll
The file was modifiedllvm/test/CodeGen/X86/vector-lzcnt-256.ll
The file was modifiedllvm/test/CodeGen/X86/byval.ll
The file was modifiedllvm/test/CodeGen/X86/atomic64.ll
The file was modifiedllvm/test/CodeGen/X86/bitcast-int-to-vector-bool-sext.ll
The file was modifiedllvm/test/CodeGen/X86/callbr-asm-blockplacement.ll
The file was modifiedllvm/test/CodeGen/X86/pr33010.ll
The file was modifiedllvm/test/CodeGen/X86/pr49451.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-intrcc-nosse.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vl-intrinsics-fast-isel.ll
The file was modifiedllvm/test/CodeGen/X86/reverse_branches.ll
The file was modifiedllvm/test/CodeGen/X86/2008-10-24-FlippedCompare.ll
The file was modifiedllvm/test/CodeGen/X86/2009-04-12-picrel.ll
The file was modifiedllvm/test/CodeGen/X86/combine-pmuldq.ll
The file was modifiedllvm/test/CodeGen/X86/pr21792.ll
The file was modifiedllvm/test/CodeGen/X86/2008-08-06-CmpStride.ll
The file was modifiedllvm/test/CodeGen/X86/prefer-avx256-trunc.ll
The file was modifiedllvm/test/CodeGen/X86/shrink-compare-pgso.ll
The file was modifiedllvm/test/CodeGen/X86/h-registers-3.ll
The file was modifiedllvm/test/CodeGen/X86/lea-recursion.ll
The file was modifiedllvm/test/CodeGen/X86/pr50254.ll
The file was modifiedllvm/test/CodeGen/X86/broadcast-elm-cross-splat-vec.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-live-in-remat.ll
The file was modifiedllvm/test/CodeGen/X86/i128-udiv.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-pic-7.ll
The file was modifiedllvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
The file was modifiedllvm/test/CodeGen/X86/shadow-stack.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-sse4a.ll
The file was modifiedllvm/test/CodeGen/X86/trunc-ext-ld-st.ll
The file was modifiedllvm/test/CodeGen/X86/vector-compare-simplify.ll
The file was modifiedllvm/test/CodeGen/X86/i128-sdiv.ll
The file was modifiedllvm/test/CodeGen/X86/uint64-to-float.ll
The file was modifiedllvm/test/CodeGen/X86/sse-fcopysign.ll
The file was modifiedllvm/test/CodeGen/X86/sandybridge-loads.ll
The file was modifiedllvm/test/CodeGen/X86/immediate_merging.ll
The file was modifiedllvm/test/CodeGen/X86/v8i1-masks.ll
The file was modifiedllvm/test/CodeGen/X86/pr30511.ll
The file was modifiedllvm/test/CodeGen/X86/usub_sat_vec.ll
The file was modifiedllvm/test/CodeGen/X86/masked_load.ll
The file was modifiedllvm/test/CodeGen/X86/soft-fp-legal-in-HW-reg.ll
The file was modifiedllvm/test/CodeGen/X86/vector-pcmp.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-rotate.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-vec-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/atomic32.ll
The file was modifiedllvm/test/CodeGen/X86/pr36312.ll
The file was modifiedllvm/test/CodeGen/X86/combine-multiplies.ll
The file was modifiedllvm/test/CodeGen/X86/bt.ll
The file was modifiedllvm/test/CodeGen/X86/vector-lzcnt-512.ll
The file was modifiedllvm/test/CodeGen/X86/exedepsfix-broadcast.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vbmi2-funnel-shifts.ll
The file was modifiedllvm/test/CodeGen/X86/pic-load-remat.ll
The file was modifiedllvm/test/CodeGen/X86/combine-concatvectors.ll
The file was modifiedllvm/test/CodeGen/X86/pr32451.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-lowhigh.ll
The file was modifiedllvm/test/CodeGen/X86/combine-abs.ll
The file was modifiedllvm/test/CodeGen/X86/fp80-strict-scalar.ll
The file was modifiedllvm/test/CodeGen/X86/masked_expandload.ll
The file was modifiedllvm/test/CodeGen/X86/pr44749.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
The file was modifiedllvm/test/CodeGen/X86/fdiv.ll
The file was modifiedllvm/test/CodeGen/X86/pr43509.ll
The file was modifiedllvm/test/CodeGen/X86/fold-load-vec.ll
The file was modifiedllvm/test/CodeGen/X86/fp-strict-scalar.ll
The file was modifiedllvm/test/CodeGen/X86/csr-split.ll
The file was modifiedllvm/test/CodeGen/X86/pr35763.ll
The file was modifiedllvm/test/CodeGen/X86/pr32282.ll
The file was modifiedllvm/test/CodeGen/X86/bittest-intrin.ll
The file was modifiedllvm/test/CodeGen/X86/load-scalar-as-vector.ll
The file was modifiedllvm/test/CodeGen/X86/uint_to_fp-3.ll
The file was modifiedllvm/test/CodeGen/X86/pr35316.ll
The file was modifiedllvm/test/CodeGen/X86/fadd-combines.ll
The file was modifiedllvm/test/CodeGen/X86/vec_zero_cse.ll
The file was modifiedllvm/test/CodeGen/X86/pow.ll
The file was modifiedllvm/test/CodeGen/X86/atomicf128.ll
The file was modifiedllvm/test/CodeGen/X86/pr34634.ll
The file was modifiedllvm/test/CodeGen/X86/pr34605.ll
The file was modifiedllvm/test/CodeGen/X86/limited-prec.ll
The file was modifiedllvm/test/CodeGen/X86/store-narrow.ll
The file was modifiedllvm/test/CodeGen/X86/byval7.ll
The file was modifiedllvm/test/CodeGen/X86/pr30290.ll
The file was modifiedllvm/test/CodeGen/X86/fast-isel-constpool.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-bitcast.ll
The file was modifiedllvm/test/CodeGen/X86/2008-04-24-MemCpyBug.ll
The file was modifiedllvm/test/CodeGen/X86/combine-umax.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
The file was modifiedllvm/test/CodeGen/X86/pr13577.ll
The file was modifiedllvm/test/CodeGen/X86/promote-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/pseudo_cmov_lower2.ll
The file was modifiedllvm/test/CodeGen/X86/subvector-broadcast.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-non-integer.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-minmax-i6432.ll
The file was modifiedllvm/test/CodeGen/X86/known-signbits-vector.ll
The file was modifiedllvm/test/CodeGen/X86/cmp.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-udiv-128.ll
The file was modifiedllvm/test/CodeGen/X86/combine-sub.ll
The file was modifiedllvm/test/CodeGen/X86/fdiv-combine.ll
The file was modifiedllvm/test/CodeGen/X86/imul-lea.ll
The file was modifiedllvm/test/CodeGen/X86/sse2-intrinsics-x86-upgrade.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-ret0.ll
The file was modifiedllvm/test/CodeGen/X86/nontemporal.ll
The file was modifiedllvm/test/CodeGen/X86/pr31956.ll
The file was modifiedllvm/test/CodeGen/X86/avx-brcond.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-vector.ll
The file was modifiedllvm/test/CodeGen/X86/pr44412.ll
The file was modifiedllvm/test/CodeGen/X86/pr34137.ll
The file was modifiedllvm/test/CodeGen/X86/live-out-reg-info.ll
The file was modifiedllvm/test/CodeGen/X86/pr40891.ll
The file was modifiedllvm/test/CodeGen/X86/2008-09-29-VolatileBug.ll
The file was modifiedllvm/test/CodeGen/X86/copysign-constant-magnitude.ll
The file was modifiedllvm/test/CodeGen/X86/vector-sext.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-reduce-smin.ll
The file was modifiedllvm/test/CodeGen/X86/load-partial.ll
The file was modifiedllvm/test/CodeGen/X86/vp2intersect_multiple_pairs.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-avx512.ll
The file was modifiedllvm/test/CodeGen/X86/pr34653.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp.ll
The file was modifiedllvm/test/CodeGen/X86/merge-consecutive-loads-512.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-call-lowering.ll
The file was modifiedllvm/test/CodeGen/X86/mask-negated-bool.ll
The file was modifiedllvm/test/CodeGen/X86/brcond.ll
The file was modifiedllvm/test/CodeGen/X86/shift-logic.ll
The file was modifiedllvm/test/CodeGen/X86/var-permute-256.ll
The file was modifiedllvm/test/CodeGen/X86/widen_mul.ll
The file was modifiedllvm/test/CodeGen/X86/bool-zext.ll
The file was modifiedllvm/test/CodeGen/X86/clear-lowbits.ll
The file was modifiedllvm/test/CodeGen/X86/2008-10-06-x87ld-nan-2.ll
The file was modifiedllvm/test/CodeGen/X86/combine-add.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-logic.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/fold-call-3.ll
The file was modifiedllvm/test/CodeGen/X86/pr40529.ll
The file was modifiedllvm/test/CodeGen/X86/speculative-load-hardening-call-and-ret.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-i128.ll
The file was modifiedllvm/test/CodeGen/X86/combine-or.ll
The file was modifiedllvm/test/CodeGen/X86/pr34177.ll
The file was modifiedllvm/test/CodeGen/X86/avx-arith.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-cast-strict.ll
The file was modifiedllvm/test/CodeGen/X86/udiv_fix.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp-more-load-pairs.ll
The file was modifiedllvm/test/CodeGen/X86/2006-01-19-ISelFoldingBug.ll
The file was modifiedllvm/test/CodeGen/X86/callbr-asm-instr-scheduling.ll
The file was modifiedllvm/test/CodeGen/X86/pr43529.ll
The file was modifiedllvm/test/CodeGen/X86/tls-pie.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-bugfix-23634.ll
The file was modifiedllvm/test/CodeGen/X86/fold-pcmpeqd-2.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-load.ll
The file was modifiedllvm/test/CodeGen/X86/nontemporal-loads.ll
The file was modifiedllvm/test/CodeGen/X86/fma_patterns.ll
The file was modifiedllvm/test/CodeGen/X86/vec_extract.ll
The file was modifiedllvm/test/CodeGen/X86/pr47482.ll
The file was modifiedllvm/test/CodeGen/X86/combine-urem.ll
The file was modifiedllvm/test/CodeGen/X86/cmpxchg-clobber-flags.ll
The file was modifiedllvm/test/CodeGen/X86/fma-fneg-combine.ll
The file was modifiedllvm/test/CodeGen/X86/machine-trace-metrics-crash.ll
The file was modifiedllvm/test/CodeGen/X86/vec_partial.ll
The file was modifiedllvm/test/CodeGen/X86/horizontal-reduce-smax.ll
The file was modifiedllvm/test/CodeGen/X86/setcc.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-and-bool.ll
The file was modifiedllvm/test/CodeGen/X86/pr46585.ll
The file was modifiedllvm/test/CodeGen/X86/vector-popcnt-512.ll
The file was modifiedllvm/test/CodeGen/X86/vector-popcnt-512-ult-ugt.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arg-passing.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arith.ll
The file was modifiedllvm/test/CodeGen/X86/fma4-fneg-combine.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-tile-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/memset-nonzero.ll
The file was modifiedllvm/test/CodeGen/X86/stack-folding-int-avx2.ll
The file was modifiedllvm/test/CodeGen/X86/AMX/amx-int8-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/vector-popcnt-128-ult-ugt.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-compare.ll
The file was modifiedllvm/test/CodeGen/X86/ret-mmx.ll
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics-fma.ll
The file was modifiedllvm/test/CodeGen/X86/test-vs-bittest.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-illegal-types.ll
The file was modifiedllvm/test/CodeGen/X86/pr23103.ll
The file was modifiedllvm/test/CodeGen/X86/byval5.ll
The file was modifiedllvm/test/CodeGen/X86/signbit-shift.ll
The file was modifiedllvm/test/CodeGen/X86/pr31045.ll
The file was modifiedllvm/test/CodeGen/X86/machine-cp.ll
The file was modifiedllvm/test/CodeGen/X86/pr34292.ll
The file was modifiedllvm/test/CodeGen/X86/fptoui-sat-scalar.ll
The file was modifiedllvm/test/CodeGen/X86/pr33828.ll
The file was modifiedllvm/test/CodeGen/X86/sse3.ll
The file was modifiedllvm/test/CodeGen/X86/vec_umulo.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-idempotent.ll
The file was modifiedllvm/test/CodeGen/X86/callbr-asm-phi-placement.ll
The file was modifiedllvm/test/CodeGen/X86/sdiv-exact.ll
The file was modifiedllvm/test/CodeGen/X86/small-byval-memcpy.ll
The file was modifiedllvm/test/CodeGen/X86/fp-stack-set-st1.ll
The file was modifiedllvm/test/CodeGen/X86/fmf-flags.ll
The file was modifiedllvm/test/CodeGen/X86/pr34080-2.ll
The file was modifiedllvm/test/CodeGen/X86/pr47299.ll
The file was modifiedllvm/test/CodeGen/X86/urem-seteq-illegal-types.ll
The file was modifiedllvm/test/CodeGen/X86/alloca-overaligned.ll
The file was modifiedllvm/test/CodeGen/X86/cmov-fp.ll
The file was modifiedllvm/test/CodeGen/X86/pr42064.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp-minsize.ll
The file was modifiedllvm/test/CodeGen/X86/pr15309.ll
The file was modifiedllvm/test/CodeGen/X86/vec_shift4.ll
The file was modifiedllvm/test/CodeGen/X86/finite-libcalls.ll
The file was modifiedllvm/test/CodeGen/X86/pr32659.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-interleavedbits.ll
The file was modifiedllvm/test/CodeGen/X86/shrink-const.ll
The file was modifiedllvm/test/CodeGen/X86/scalar-fp-to-i64.ll
The file was modifiedllvm/test/CodeGen/X86/coalescer-remat.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_usat.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-non-integer-fp128.ll
The file was modifiedllvm/test/CodeGen/X86/rtm.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-extract.ll
The file was modifiedllvm/test/CodeGen/X86/fildll.ll
The file was modifiedllvm/test/CodeGen/X86/vselect.ll
The file was modifiedllvm/test/CodeGen/X86/fp-strict-scalar-fptoint.ll
The file was modifiedllvm/test/CodeGen/X86/2010-08-04-MaskedSignedCompare.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
The file was modifiedllvm/test/CodeGen/X86/pr34088.ll
The file was modifiedllvm/test/CodeGen/X86/srem-vector-lkk.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc_ssat.ll
The file was modifiedllvm/test/CodeGen/X86/mcu-abi.ll
The file was modifiedllvm/test/CodeGen/X86/avoid-sfb.ll
The file was modifiedllvm/test/CodeGen/X86/combine-bitselect.ll
The file was modifiedllvm/test/CodeGen/X86/pr45995.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-calling-conv.ll
The file was modifiedllvm/test/CodeGen/X86/pr38865-2.ll
The file was modifiedllvm/test/CodeGen/X86/machine-combiner.ll
The file was modifiedllvm/test/CodeGen/X86/avx-trunc.ll
The file was modifiedllvm/test/CodeGen/X86/hoist-invariant-load.ll
The file was modifiedllvm/test/CodeGen/X86/vec_fp_to_int.ll
The file was modifiedllvm/test/CodeGen/X86/combine-add-ssat.ll
The file was modifiedllvm/test/CodeGen/X86/trunc-and.ll
The file was modifiedllvm/test/CodeGen/X86/pr2656.ll
The file was modifiedllvm/test/CodeGen/X86/avx-logic.ll
The file was modifiedllvm/test/CodeGen/X86/prefer-avx256-wide-mul.ll
The file was modifiedllvm/test/CodeGen/X86/fmsubadd-combine.ll
The file was modifiedllvm/test/CodeGen/X86/cmov-double.ll
The file was modifiedllvm/test/CodeGen/X86/lsr-loop-exit-cond.ll
The file was modifiedllvm/test/CodeGen/X86/pr35761.ll
The file was modifiedllvm/test/CodeGen/X86/inline-0bh.ll
The file was modifiedllvm/test/CodeGen/X86/fma_patterns_wide.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-select.ll
The file was modifiedllvm/test/CodeGen/X86/atomic128.ll
The file was modifiedllvm/test/CodeGen/X86/pr34080.ll
The file was modifiedllvm/test/CodeGen/X86/sse41.ll
The file was modifiedllvm/test/CodeGen/X86/umul-with-carry.ll
The file was modifiedllvm/test/CodeGen/X86/vector-mul.ll
The file was modifiedllvm/test/CodeGen/X86/combine-add-usat.ll
The file was modifiedllvm/test/CodeGen/X86/pr34271.ll
The file was modifiedllvm/test/CodeGen/X86/2007-10-04-AvoidEFLAGSCopy.ll
The file was modifiedllvm/test/CodeGen/X86/enqcmd-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/sad.ll
The file was modifiedllvm/test/CodeGen/X86/vec_int_to_fp.ll
The file was modifiedllvm/test/CodeGen/X86/fold-rmw-ops.ll
The file was modifiedllvm/test/CodeGen/X86/vector-pack-256.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-unordered.ll
The file was modifiedllvm/test/CodeGen/X86/mmx-fold-zero.ll
The file was modifiedllvm/test/CodeGen/X86/ragreedy-hoist-spill.ll
The file was modifiedllvm/test/CodeGen/X86/fma-scalar-combine.ll
The file was modifiedllvm/test/CodeGen/X86/scalar-fp-to-i32.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-psub.ll
The file was modifiedllvm/test/CodeGen/X86/2009-01-31-BigShift.ll
The file was modifiedllvm/test/CodeGen/X86/cmpxchg8b.ll
The file was modifiedllvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
The file was modifiedllvm/test/CodeGen/X86/x86-store-gv-addr.ll
The file was modifiedllvm/test/CodeGen/X86/pr32329.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vl-arith.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-live-in.ll
The file was modifiedllvm/test/CodeGen/X86/select-of-fp-constants.ll
The file was modifiedllvm/test/CodeGen/X86/masked_store_trunc.ll
The file was modifiedllvm/test/CodeGen/X86/pr9517.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-trunc.ll
The file was modifiedllvm/test/CodeGen/X86/masked_gather.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-smin.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-gc-live.ll
The file was modifiedllvm/test/CodeGen/X86/rd-mod-wr-eflags.ll
The file was modifiedllvm/test/CodeGen/X86/pr47000.ll
The file was modifiedllvm/test/CodeGen/X86/scalarize-fp.ll
The file was modifiedllvm/test/CodeGen/X86/masked_gather_scatter.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-mmx.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-pic-9.ll
The file was modifiedllvm/test/CodeGen/X86/fma-fneg-combine-2.ll
The file was modifiedllvm/test/CodeGen/X86/vector-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/pr32588.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-or-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/innermost-loop-alignment.ll
The file was modifiedllvm/test/CodeGen/X86/pr2585.ll
The file was modifiedllvm/test/CodeGen/X86/pr35443.ll
The file was modifiedllvm/test/CodeGen/X86/widen_load-2.ll
The file was modifiedllvm/test/CodeGen/X86/sub-with-overflow.ll
The file was modifiedllvm/test/CodeGen/X86/2008-10-06-x87ld-nan-1.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-xop.ll
The file was modifiedllvm/test/CodeGen/X86/critical-anti-dep-breaker.ll
The file was modifiedllvm/test/CodeGen/X86/pr15981.ll
The file was modifiedllvm/test/CodeGen/X86/vec_setcc-2.ll
The file was modifiedllvm/test/CodeGen/X86/vec_fneg.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-udiv-512.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-vreg.ll
The file was modifiedllvm/test/CodeGen/X86/vector-lzcnt-128.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
The file was modifiedllvm/test/CodeGen/X86/avx512bwvl-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/bitcast-int-to-vector-bool.ll
The file was modifiedllvm/test/CodeGen/X86/tailcall-64.ll
The file was modifiedllvm/test/CodeGen/X86/var-permute-512.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-mask-op.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-pic-5.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-sdiv-128.ll
The file was modifiedllvm/test/CodeGen/X86/test-shrink-bug.ll
The file was modifiedllvm/test/CodeGen/X86/2007-07-03-GR64ToVR64.ll
The file was modifiedllvm/test/CodeGen/X86/insertelement-var-index.ll
The file was modifiedllvm/test/CodeGen/X86/peep-test-1.ll
The file was modifiedllvm/test/CodeGen/X86/vec_fabs.ll
The file was modifiedllvm/test/CodeGen/X86/setcc-lowering.ll
The file was modifiedllvm/test/CodeGen/X86/prefer-avx256-lzcnt.ll
The file was modifiedllvm/test/CodeGen/X86/break-anti-dependencies.ll
The file was modifiedllvm/test/CodeGen/X86/atomic-fp.ll
The file was modifiedllvm/test/CodeGen/X86/vector-tzcnt-128.ll
The file was modifiedllvm/test/CodeGen/X86/pr33960.ll
The file was modifiedllvm/test/CodeGen/X86/urem-power-of-two.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vl-vbroadcast.ll
The file was modifiedllvm/test/CodeGen/X86/copy-eflags.ll
The file was modifiedllvm/test/CodeGen/X86/avx-shift.ll
The file was modifiedllvm/test/CodeGen/X86/pr2326.ll
The file was modifiedllvm/test/CodeGen/X86/pr32284.ll
The file was modifiedllvm/test/CodeGen/X86/pr35765.ll
The file was modifiedllvm/test/CodeGen/X86/sse2-intrinsics-x86.ll
The file was modifiedllvm/test/CodeGen/X86/vselect-avx.ll
The file was modifiedllvm/test/CodeGen/X86/negative-stride-fptosi-user.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-vbroadcasti256.ll
The file was modifiedllvm/test/CodeGen/X86/mul-constant-result.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-interleavedbytehalves.ll
The file was modifiedllvm/test/CodeGen/X86/pr37826.ll
The file was modifiedllvm/test/CodeGen/X86/fptosi-sat-scalar.ll
The file was modifiedllvm/test/CodeGen/X86/pr22774.ll
The file was modifiedllvm/test/CodeGen/X86/fma-signed-zero.ll
The file was modifiedllvm/test/CodeGen/X86/fmul-combines.ll
The file was modifiedllvm/test/CodeGen/X86/pr14161.ll
The file was modifiedllvm/test/CodeGen/X86/shift-combine.ll
The file was modifiedllvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
The file was modifiedllvm/test/CodeGen/X86/consecutive-load-shuffle.ll
The file was modifiedllvm/test/CodeGen/X86/keylocker-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/cmov.ll
The file was modifiedllvm/test/CodeGen/X86/unaligned-load.ll
The file was modifiedllvm/test/CodeGen/X86/align-branch-boundary-suppressions.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-mem.ll
The file was modifiedllvm/test/CodeGen/X86/no-sse-x86.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vl-logic.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-gather-scatter-intrin.ll
The file was modifiedllvm/test/CodeGen/X86/test-shrink.ll
The file was modifiedllvm/test/CodeGen/X86/pr32345.ll
The file was modifiedllvm/test/CodeGen/X86/avx2-vbroadcasti128.ll
The file was modifiedllvm/test/CodeGen/X86/vmovq.ll
The file was modifiedllvm/test/CodeGen/X86/avx2-intrinsics-x86.ll
The file was modifiedllvm/test/CodeGen/X86/negate.ll
The file was modifiedllvm/test/CodeGen/X86/combine-and.ll
The file was modifiedllvm/test/CodeGen/X86/avx-load-store.ll
The file was modifiedllvm/test/CodeGen/X86/splat-for-size.ll
The file was modifiedllvm/test/CodeGen/X86/pr29112.ll
The file was modifiedllvm/test/CodeGen/X86/machine-cse.ll
The file was modifiedllvm/test/CodeGen/X86/shrink-fp-const1.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-v2i32.ll
The file was modifiedllvm/test/CodeGen/X86/vector-rotate-512.ll
The file was modifiedllvm/test/CodeGen/X86/vector-zext.ll
The file was modifiedllvm/test/CodeGen/X86/xchg-nofold.ll
The file was modifiedllvm/test/CodeGen/X86/combineIncDecVector-crash.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-libcalls-strict.ll
The file was modifiedllvm/test/CodeGen/X86/shrink_vmul.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-smax.ll
The file was modifiedllvm/test/CodeGen/X86/load-chain.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-varargs.ll
The file was modifiedllvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
The file was modifiedllvm/test/CodeGen/X86/shrink-compare.ll
The file was modifiedllvm/test/CodeGen/X86/pr32368.ll
The file was modifiedllvm/test/CodeGen/X86/vector-ext-logic.ll
The file was modifiedllvm/test/CodeGen/X86/avx2-shift.ll
The file was modifiedllvm/test/CodeGen/X86/pr5145.ll
The file was modifiedllvm/test/CodeGen/X86/avx-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/shrink-fp-const2.ll
The file was modifiedllvm/test/CodeGen/X86/urem-seteq-vec-tautological.ll
The file was modifiedllvm/test/CodeGen/X86/zext-fold.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-cvt.ll
The file was modifiedllvm/test/CodeGen/X86/sse1.ll
The file was modifiedllvm/test/CodeGen/X86/speculative-load-hardening.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-or-bool.ll
The file was modifiedllvm/test/CodeGen/X86/widen_cast-5.ll
The file was modifiedllvm/test/CodeGen/X86/haddsub-3.ll
The file was modifiedllvm/test/CodeGen/X86/cmpxchg-i128-i1.ll
The file was modifiedllvm/test/CodeGen/X86/vector-lzcnt-sub128.ll
The file was modifiedllvm/test/CodeGen/X86/freeze.ll
The file was modifiedllvm/test/CodeGen/X86/avx512vbmi2vl-funnel-shifts.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-fadd.ll
The file was modifiedllvm/test/CodeGen/X86/vector-popcnt-256.ll
The file was modifiedllvm/test/CodeGen/X86/vector-popcnt-128.ll
The file was modifiedllvm/test/CodeGen/X86/paddus.ll
The file was modifiedllvm/test/CodeGen/X86/urem-vector-lkk.ll
The file was modifiedllvm/test/CodeGen/X86/fp128-cast.ll
The file was modifiedllvm/test/CodeGen/X86/haddsub-broadcast.ll
The file was modifiedllvm/test/CodeGen/X86/umul-with-overflow.ll
The file was modifiedllvm/test/CodeGen/X86/fp-round.ll
The file was modifiedllvm/test/CodeGen/X86/vec_cast3.ll
The file was modifiedllvm/test/CodeGen/X86/addr-mode-matcher-2.ll
The file was modifiedllvm/test/CodeGen/X86/vselect-zero.ll
The file was modifiedllvm/test/CodeGen/X86/funnel-shift-rot.ll
The file was modifiedllvm/test/CodeGen/X86/vselect-constants.ll
The file was modifiedllvm/test/CodeGen/X86/urem-seteq-vec-splat.ll
The file was modifiedllvm/test/CodeGen/X86/uint_to_fp-2.ll
The file was modifiedllvm/test/CodeGen/X86/pr34421.ll
The file was modifiedllvm/test/CodeGen/X86/sadd_sat.ll
The file was modifiedllvm/test/CodeGen/X86/sse1-fcopysign.ll
The file was modifiedllvm/test/CodeGen/X86/combine-bextr.ll
The file was modifiedllvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll
The file was modifiedllvm/test/CodeGen/X86/vec_insert-mmx.ll
The file was modifiedllvm/test/CodeGen/X86/avx1-logical-load-folding.ll
The file was modifiedllvm/test/CodeGen/X86/lrshrink.ll
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-fmul.ll
The file was modifiedllvm/test/CodeGen/X86/midpoint-int-vec-512.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-pic-8.ll
The file was modifiedllvm/test/CodeGen/X86/pr34629.ll
The file was modifiedllvm/test/CodeGen/X86/hidden-vis-2.ll
The file was modifiedllvm/test/CodeGen/X86/shuffle-strided-with-offset-128.ll
The file was modifiedllvm/test/CodeGen/X86/pr37820.ll
The file was modifiedllvm/test/CodeGen/X86/avx2-nontemporal.ll
The file was modifiedllvm/test/CodeGen/X86/use-add-flags.ll
The file was modifiedllvm/test/CodeGen/X86/insert-into-constant-vector.ll
The file was modifiedllvm/test/CodeGen/X86/vector-unsigned-cmp.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-pic-4.ll
The file was modifiedllvm/test/CodeGen/X86/shift_minsize.ll
The file was modifiedllvm/test/CodeGen/X86/2009-08-12-badswitch.ll
The file was modifiedllvm/test/CodeGen/X86/packss.ll
The file was modifiedllvm/test/CodeGen/X86/SwitchLowering.ll
The file was modifiedllvm/test/CodeGen/X86/ssub_sat.ll
The file was modifiedllvm/test/CodeGen/X86/shift-pcmp.ll
The file was modifiedllvm/test/CodeGen/X86/sse-varargs.ll
The file was modifiedllvm/test/CodeGen/X86/i64-to-float.ll
The file was modifiedllvm/test/CodeGen/X86/pr48215.ll
The file was modifiedllvm/test/CodeGen/X86/ms-inline-asm-redundant-clobber.ll
The file was modifiedllvm/test/CodeGen/X86/pmul.ll
The file was modifiedllvm/test/CodeGen/X86/pr43952.ll
The file was modifiedllvm/test/CodeGen/X86/pr34381.ll
The file was modifiedllvm/test/CodeGen/X86/combine-udiv.ll
The file was modifiedllvm/test/CodeGen/X86/sse2.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-udiv-256.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
The file was modifiedllvm/test/CodeGen/X86/x86-interrupt_cc.ll
The file was modifiedllvm/test/CodeGen/X86/select-sra.ll
The file was modifiedllvm/test/CodeGen/X86/combine-umin.ll
The file was modifiedllvm/test/CodeGen/X86/setcc-narrowing.ll
The file was modifiedllvm/test/CodeGen/X86/pointer-vector.ll
The file was modifiedllvm/test/CodeGen/X86/shl-crash-on-legalize.ll
The file was modifiedllvm/test/CodeGen/X86/statepoint-no-realign-stack.ll
The file was modifiedllvm/test/CodeGen/X86/tail-opts.ll
The file was modifiedllvm/test/CodeGen/X86/shift-and.ll
The file was modifiedllvm/test/CodeGen/X86/tail-threshold.ll
The file was modifiedllvm/test/CodeGen/X86/shuffle-vs-trunc-128.ll
The file was modifiedllvm/test/CodeGen/X86/pr36865.ll
The file was modifiedllvm/test/CodeGen/X86/sar_fold64.ll
The file was modifiedllvm/test/CodeGen/X86/isint.ll
The file was modifiedllvm/test/CodeGen/X86/divmod128.ll
The file was modifiedllvm/test/CodeGen/X86/unfold-masked-merge-vector-variablemask-const.ll
The file was modifiedllvm/test/CodeGen/X86/2008-05-01-InvalidOrdCompare.ll
The file was modifiedllvm/test/CodeGen/X86/semantic-interposition-asm.ll
The file was modifiedllvm/test/CodeGen/X86/sse41-intrinsics-x86.ll
The file was modifiedllvm/test/CodeGen/X86/vec_logical.ll
The file was modifiedllvm/test/CodeGen/X86/narrow_op-1.ll
The file was modifiedllvm/test/CodeGen/X86/pr45067.ll
The file was modifiedllvm/test/CodeGen/X86/merge-consecutive-loads-256.ll
The file was modifiedllvm/test/CodeGen/X86/vec_unsafe-fp-math.ll
The file was modifiedllvm/test/CodeGen/X86/load-local-v4i5.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-sdiv-512.ll
The file was modifiedllvm/test/CodeGen/X86/PR40322.ll
The file was modifiedllvm/test/CodeGen/X86/avx-vperm2x128.ll
The file was modifiedllvm/test/CodeGen/X86/fma-intrinsics-fast-isel.ll
The file was modifiedllvm/test/CodeGen/X86/madd.ll
The file was modifiedllvm/test/CodeGen/X86/cmovcmov.ll
The file was modifiedllvm/test/CodeGen/X86/dag-update-nodetomatch.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-intrcc-uintr.ll
The file was modifiedllvm/test/CodeGen/X86/avx512-any_extend_load.ll
The file was modifiedllvm/test/CodeGen/X86/element-wise-atomic-memory-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/memcpy-inline-fsrm.ll
The file was modifiedllvm/test/CodeGen/X86/pr37916.ll
The file was modifiedllvm/test/CodeGen/X86/sat-add.ll
The file was modifiedllvm/test/CodeGen/X86/sink-addsub-of-const.ll
The file was modifiedllvm/test/CodeGen/X86/memcpy.ll
The file was modifiedllvm/test/CodeGen/X86/2011-10-19-LegelizeLoad.ll
The file was modifiedllvm/test/CodeGen/X86/vec_fptrunc.ll
The file was modifiedllvm/test/CodeGen/X86/concat-cast.ll
The file was modifiedllvm/test/CodeGen/X86/memcmp-pgso.ll
The file was modifiedllvm/test/CodeGen/X86/x86-no_caller_saved_registers-preserve.ll
The file was modifiedllvm/test/CodeGen/X86/ssub_sat_vec.ll
The file was modifiedllvm/test/CodeGen/X86/fp-stack-2results.ll
The file was modifiedllvm/test/CodeGen/X86/half-constrained.ll
The file was modifiedllvm/test/CodeGen/X86/callbr-asm-branch-folding.ll
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/lifetime-alias.ll
The file was modifiedllvm/test/CodeGen/X86/misched_phys_reg_assign_order.ll
The file was modifiedllvm/test/CodeGen/X86/vec_fpext.ll
The file was modifiedllvm/test/CodeGen/X86/known-bits-vector.ll
The file was modifiedllvm/test/CodeGen/X86/pr32420.ll
The file was modifiedllvm/test/CodeGen/X86/fp80-strict-libcalls.ll
The file was modifiedllvm/test/CodeGen/X86/srem-seteq-vec-splat.ll
The file was modifiedllvm/test/CodeGen/X86/avx-basic.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-inttofp-128.ll
Commit 60fde9542aac57d4b7b98bed0be746a3a82bd0eb by Raphael Isemann
[lldb] Remove GCC XFAIL for TestCPPAuto and TestClassTemplateParameterPack

Both tests are passing for GCC>8 on Linux so let's mark them as passing.

TestCPPAuto was originally disabled due to "an problem with debug info generation"
in ea35dbeff29f3095df3ad1d77cce3d9e5b197e7c .

TestClassTemplateParameterPack was disabled without explanation in
0f01fb39e3fe3d8e99df1dd185e75ad584b777b3 .
The file was modifiedlldb/test/API/lang/cpp/auto/TestCPPAuto.py
The file was modifiedlldb/test/API/lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
Commit 64720f57bea6a6bf033feef4a5751ab9c0c3b401 by andrew.litteken
[IRSim] Don't copy the Mapper for createCandidatesFromSuffixTree

Every invocation this was copying the Mapper for no reason. Take a const
ref instead.

Author: lanza
Reviewers: AndrewLitteken, plofti, paquette,

Differential Review: https://reviews.llvm.org/D92532
The file was modifiedllvm/lib/Analysis/IRSimilarityIdentifier.cpp
Commit 60084d490059719b950b5800715c3c0637218bc5 by kda
[sanitizer] Replace -mllvm -asan-use-after-return in compile-rt tests with -fsanitize-address-use-after-return (NFC)

for issue: https://github.com/google/sanitizers/issues/1394

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D104146
The file was modifiedcompiler-rt/test/asan/TestCases/heavy_uar_test.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Posix/stack-use-after-return.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/uar_and_exceptions.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/scariness_score_test.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Linux/uar_signals.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/pass-struct-byval-uar.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp
Commit 1d22596b2f6aef587af785744d8951668559113e by kda
[sanitizer] Remove numeric values from -asan-use-after-return flag. (NFC)

for issue: https://github.com/google/sanitizers/issues/1394

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D104152
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/debug_info.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedllvm/test/DebugInfo/X86/asan_debug_info.ll
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/fake-stack.ll
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/lifetime.ll
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/lifetime-throw.ll
Commit ad1d60bf5334ebdf6c6675f1e3b4a079078a5885 by spatel
[InstCombine] update test checks; NFC
The file was modifiedllvm/test/Transforms/InstCombine/intrinsics.ll
Commit 1c51bf3b78854fd1c8faff0533cf4307f7828ada by spatel
[InstCombine] add tests for bit manipulation intrinsics with bool values; NFC
The file was modifiedllvm/test/Transforms/InstCombine/intrinsics.ll
Commit 37a2c4517bbf93bca18f9c67d9c6cfb3a6a627ec by aeubanks
[NFC][OpaquePtr] Make getMemoryParamAllocType() compatible with opaque pointers

These ABI attributes now always require the type parameter.

sret was missing from the first set of checks but was covered by the
second set.
The file was modifiedllvm/lib/IR/Function.cpp
Commit b9af157fd18d375ac689ae241b831ccd95c42243 by rnk
[ASan/Win] Hide index from compiler to avoid new clang warning
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp
The file was modifiedcompiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp
Commit 0276cc742bfc0829a56dba043625510b0f61326a by alexshap
[llvm-objcopy][MachO] Do not strip symbols with the flag REFERENCED_DYNAMICALLY set

Do not strip symbols having the flag REFERENCED_DYNAMICALLY set.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D104092
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/Inputs/strip-all-with-dwarf.yaml
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/strip-all.test
Commit 541ccd1c1bb23e1e20a382844b35312c0caffd79 by Adrian Prantl
Allow signposts to take advantage of deferred string substitution

One nice feature of the os_signpost API is that format string
substitutions happen in the consumer, not the logging
application. LLVM's current Signpost class doesn't take advantage of
this though and instead always uses a static "Begin/End %s" format
string.

This patch uses variadic macros to allow the API to be used as
intended. Unfortunately, the primary use-case I had in mind (the
LLDB_SCOPED_TIMER() macro) does not get much better from this, because
__PRETTY_FUNCTION__ is *not* a macro, but a static string, so
signposts created by LLDB_SCOPED_TIMER() still use a static "%s"
format string. At least LLDB_SCOPED_TIMERF() works as intended.

Differential Revision: https://reviews.llvm.org/D103575
The file was modifiedllvm/lib/Support/Timer.cpp
The file was modifiedllvm/lib/Support/Signposts.cpp
The file was modifiedlldb/include/lldb/Utility/Timer.h
The file was modifiedllvm/include/llvm/Support/Signposts.h
The file was modifiedlldb/source/Utility/Timer.cpp
Commit 635b72136e95173e74d45ae66eca714d7e4e4f87 by Adrian Prantl
Disambiguate usage of struct mach_header and other MachO definitions.

Unfortunately the Darwin signpost header also pulls in the system
MachO header and so we need to make sure to use the LLVM versions of
those definitions.
The file was modifiedlldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
Commit f6dea2e7328b62f21d53511dfa42ec72dc5235c3 by andrew.litteken
[IRSim] Strip out the findSimilarity call from the constructor

Both doInitialize and runOnModule were running the entire analysis
due to the actual work being done in the constructor. Strip it out here
and only get the similarity during runOnModule.

Author: lanza
Reviewers: AndrewLitteken, paquette, plofti

Differential Revision: https://reviews.llvm.org/D92524
The file was modifiedllvm/lib/Analysis/IRSimilarityIdentifier.cpp
The file was modifiedllvm/include/llvm/Analysis/IRSimilarityIdentifier.h
Commit b90f9bea9673d07f2764006eb15fc4ea5e23be6d by Adrian Prantl
Revert "Allow signposts to take advantage of deferred string substitution"

I forgot to make the LLDB macro conditional on Linux.

This reverts commit 541ccd1c1bb23e1e20a382844b35312c0caffd79.
The file was modifiedllvm/include/llvm/Support/Signposts.h
The file was modifiedlldb/source/Utility/Timer.cpp
The file was modifiedllvm/lib/Support/Signposts.cpp
The file was modifiedlldb/include/lldb/Utility/Timer.h
The file was modifiedllvm/lib/Support/Timer.cpp
Commit 5d88f2dd947825750d487f91b3b3735d61f7aa8e by jezng
[lld-macho] Deduplicate fixed-width literals

Conceptually, the implementation is pretty straightforward: we put each
literal value into a hashtable, and then write out the keys of that
hashtable at the end.

In contrast with ELF, the Mach-O format does not support variable-length
literals that aren't strings. Its literals are either 4, 8, or 16 bytes
in length. LLD-ELF dedups its literals via sorting + uniq'ing, but since
we don't need to worry about overly-long values, we should be able to do
a faster job by just hashing.

That said, the implementation right now is far from optimal, because we
add to those hashtables serially. To parallelize this, we'll need a
basic concurrent hashtable (only needs to support concurrent writes w/o
interleave reads), which shouldn't be to hard to implement, but I'd like
to punt on it for now.

Numbers for linking chromium_framework on my 3.2 GHz 16-Core Intel Xeon W:

      N           Min           Max        Median           Avg        Stddev
  x  20          4.27          4.39         4.315        4.3225   0.033225703
  +  20          4.36          4.82          4.44        4.4845    0.13152846
  Difference at 95.0% confidence
          0.162 +/- 0.0613971
          3.74783% +/- 1.42041%
          (Student's t, pooled s = 0.0959262)

This corresponds to binary size savings of 2MB out of 335MB, or 0.6%.
It's not a great tradeoff as-is, but as mentioned our implementation can
be signficantly optimized, and literal dedup will unlock more
opportunities for ICF to identify identical structures that reference
the same literals.

Reviewed By: #lld-macho, gkm

Differential Revision: https://reviews.llvm.org/D103113
The file was modifiedlld/MachO/Writer.cpp
The file was addedlld/test/MachO/literal-dedup.s
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/test/MachO/mattrs.ll
The file was modifiedlld/MachO/SyntheticSections.h
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/MachO/SyntheticSections.cpp
Commit 7f2ba39b1688230c663986485f605cf8df90f895 by jezng
[lld-macho][nfc] Move liveness-tracking fields into ConcatInputSection

These fields currently live in the parent InputSection class,
but they should be specific to ConcatInputSection, since the other
InputSection classes (that contain literals) aren't atomically live or
dead -- rather their component string/int literals should have
individual liveness states. (An upcoming diff will add liveness bits for
StringPieces and fixed-sized literals.)

I also factored out some asserts for isCoalescedWeak() in MarkLive.cpp.
We now avoid putting coalesced sections in the `inputSections` vector,
so we don't have to check/assert against it everywhere.

Reviewed By: #lld-macho, thakis

Differential Revision: https://reviews.llvm.org/D103977
The file was modifiedlld/MachO/MarkLive.cpp
The file was modifiedlld/MachO/SymbolTable.cpp
The file was modifiedlld/MachO/Symbols.h
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/MachO/Symbols.cpp
The file was modifiedlld/MachO/UnwindInfoSection.h
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/UnwindInfoSection.cpp
The file was modifiedlld/MachO/Writer.cpp
Commit 681cfeb59119f2ddc5418e4e3a48c632dcd1aa3e by jezng
[lld-macho][nfc] Have InputSection ctors take some parameters

This is motivated by an upcoming diff in which the
WordLiteralInputSection ctor sets itself up based on the value of its
section flags. As such, it needs to be passed the `flags` value as part
of its ctor parameters, instead of having them assigned after the fact
in `parseSection()`. While refactoring code to make that possible, I
figured it would make sense for the other InputSections to also take
their initial values as ctor parameters.

Reviewed By: #lld-macho, thakis

Differential Revision: https://reviews.llvm.org/D103978
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/MachO/Driver.cpp
The file was modifiedlld/MachO/InputFiles.cpp
The file was modifiedlld/MachO/ConcatOutputSection.cpp
Commit 464d3dc3d11eec105023011fd41abb1871f46d5d by jezng
[lld-macho] Have dead-stripping work with literal sections

Literal sections are not atomically live or dead. Rather,
liveness is tracked for each individual literal they contain. CStrings
have their liveness tracked via a `live` bit in StringPiece, and
fixed-width literals have theirs tracked via a BitVector.

The live-marking code now needs to track the offset within each section
that is to be marked live, in order to identify the literal at that
particular offset.

Numbers for linking chromium_framework on my 3.2 GHz 16-Core Intel Xeon W
with both `-dead_strip` and `--deduplicate-literals`, with and without this diff
applied:

```
    N           Min           Max        Median           Avg        Stddev
x  20          4.32          4.44         4.375         4.372    0.03105174
+  20           4.3          4.39          4.36        4.3595   0.023277502
No difference proven at 95.0% confidence
```
This gives us size savings of about 0.4%.

Reviewed By: #lld-macho, thakis

Differential Revision: https://reviews.llvm.org/D103979
The file was modifiedlld/test/MachO/dead-strip.s
The file was modifiedlld/MachO/MarkLive.cpp
The file was modifiedlld/MachO/InputSection.h
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/MachO/SyntheticSections.cpp
Commit 4fc93a3a1f95ef5a0a57750fc621f2411ea445a8 by Adrian Prantl
Allow signposts to take advantage of deferred string substitution

One nice feature of the os_signpost API is that format string
substitutions happen in the consumer, not the logging
application. LLVM's current Signpost class doesn't take advantage of
this though and instead always uses a static "Begin/End %s" format
string.

This patch uses variadic macros to allow the API to be used as
intended. Unfortunately, the primary use-case I had in mind (the
LLDB_SCOPED_TIMER() macro) does not get much better from this, because
__PRETTY_FUNCTION__ is *not* a macro, but a static string, so
signposts created by LLDB_SCOPED_TIMER() still use a static "%s"
format string. At least LLDB_SCOPED_TIMERF() works as intended.

This reapplies the previsously reverted patch with support for
platforms where signposts are unavailable.

Differential Revision: https://reviews.llvm.org/D103575
The file was modifiedllvm/lib/Support/Signposts.cpp
The file was modifiedlldb/source/Utility/Timer.cpp
The file was modifiedlldb/include/lldb/Utility/Timer.h
The file was modifiedllvm/include/llvm/Support/Signposts.h
The file was modifiedllvm/lib/Support/Timer.cpp
Commit 6393164cf249a2d4ef5cb55107cda5d9476787a3 by lkail
[AIX][compiler-rt] Fix cmake build of libatomic for cmake-3.16+

cmake-3.16+ for AIX changes the default behavior of building a `SHARED` library which breaks AIX's build of libatomic, i.e., cmake-3.16+ builds `SHARED` as an archive of dynamic libraries. To fix it, we have to build `libatomic.so.1` as `MODULE` which keeps `libatomic.so.1` as an normal dynamic library.

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D103786
The file was modifiedcompiler-rt/cmake/Modules/AddCompilerRT.cmake
The file was modifiedcompiler-rt/cmake/Modules/CompilerRTAIXUtils.cmake
The file was modifiedcompiler-rt/lib/builtins/CMakeLists.txt
Commit c8b8e8e02223df98ebc26d4d94bab5ff64eabcdf by uday
[MLIR] Execution engine python binding support for shared libraries

Add support to Python bindings for the MLIR execution engine to load a
specified list of shared libraries - for eg. to use MLIR runtime
utility libraries.

Differential Revision: https://reviews.llvm.org/D104009
The file was modifiedmlir/test/python/execution_engine.py
The file was modifiedmlir/include/mlir-c/ExecutionEngine.h
The file was modifiedmlir/lib/CAPI/ExecutionEngine/ExecutionEngine.cpp
The file was modifiedmlir/lib/Bindings/Python/ExecutionEngine.cpp
The file was modifiedmlir/test/CAPI/execution_engine.c
Commit 5de7467e9821485f492eb97fafd796e1db4c6bb5 by jezng
[lld-macho] Fix debug build

D103977 broke a bunch of stuff as I had only tested the release build
which eliminated asserts.

I've retained the asserts where possible, but I also removed a bunch
instead of adding a whole lot of verbose ConcatInputSection casts.
The file was modifiedlld/MachO/MapFile.cpp
The file was modifiedlld/MachO/UnwindInfoSection.cpp
The file was modifiedlld/MachO/InputSection.cpp
The file was modifiedlld/MachO/InputSection.h
Commit b9095f5e1a7f6f3ee1d741a6931a318da050bed8 by alexshap
[lld][MachO] Fix function starts section

Sort the addresses stored in FunctionStarts section.
Previously we were encoding potentially large numbers (due to unsigned overflow).

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D103662
The file was modifiedlld/MachO/SyntheticSections.cpp
The file was modifiedlld/MachO/SyntheticSections.h
The file was modifiedlld/test/MachO/function-starts.s
Commit 8fb53dca2f61d2d15204ae0046339ee60b7f3b54 by Adrian Prantl
Improve materializer error messages to include type names.

rdar://79201552
The file was modifiedlldb/source/Expression/Materializer.cpp
Commit 984e270a9a7063c370bcc80ee1fb3ec874d92b93 by stephen.neuendorffer
[mlir] make normalizeAffineFor public

Previously this was just a static method.
The file was modifiedmlir/include/mlir/Dialect/Affine/Utils.h
The file was modifiedmlir/lib/Dialect/Affine/Transforms/AffineLoopNormalize.cpp
Commit dbc262968f8ed4b25281d5855eda8f5a699b95c6 by llvm-project
[Flang][test] Fix Windows buildbot.

Commit 1b241b9b400bdfc5b8e0d157f0f46436677927b8 /
patch https://reviews.llvm.org/D104130 introduced an new test which
calls a UNIX shell script. Add
REQUIRES: shell
to not run it on Windows.
The file was modifiedflang/test/Semantics/modfile41.f90
Commit 0a0800c4d10c250ffb152b5f059d6f9a19ed8efe by aktoon
A post-processing for BFI inference

The current implementation for computing relative block frequencies does
not handle correctly control-flow graphs containing irreducible loops. This
results in suboptimally generated binaries, whose perf can be up to 5%
worse than optimal.

To resolve the problem, we apply a post-processing step, which iteratively
updates block frequencies based on the frequencies of their predesessors.
This corresponds to finding the stationary point of the Markov chain by
an iterative method aka "PageRank computation". The algorithm takes at
most O(|E| * IterativeBFIMaxIterations) steps but typically converges faster.

It is turned on by passing option `use-iterative-bfi-inference`
and applied only for functions containing profile data and irreducible loops.

Tested on SPEC06/17, where it is helping to get correct profile counts for one of
the binaries (403.gcc). In prod binaries, we've seen a speedup of up to 2%-5%
for binaries containing functions with hot irreducible loops.

Reviewed By: hoy, wenlei, davidxl

Differential Revision: https://reviews.llvm.org/D103289
The file was addedllvm/test/Transforms/SampleProfile/profile-correlation-irreducible-loops.ll
The file was modifiedllvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
The file was modifiedllvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
The file was addedllvm/test/Transforms/SampleProfile/Inputs/profile-correlation-irreducible-loops.prof