FailedChanges

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

Summary

  1. Promote transpose from linalg to standard dialect (details)
  2. [VE] Support register and frame-index pair correctly (details)
  3. [mlir] Fix SubViewOp doc in .td (details)
  4. [AMDGPU] Use tablegen for argument indices (details)
  5. Reland "[lldb] Don't send invalid region addresses to lldb server" (details)
  6. [AST][RecoveryExpr] Fix a crash on undeduced type. (details)
  7. [clangd] Remove unused using-decls in TypeHierarchyTests, NFC. (details)
  8. [TableGen] Added a function for identification of unsupported opcodes. (details)
  9. [AMDGPU][RegAlloc][SplitKit] Pre-commit test for D88821 (details)
  10. [ASTImporter][AST] Fix structural equivalency crash on dependent FieldDecl (details)
  11. [ValueTracking] canCreateUndefOrPoison - use APInt to check bounds instead of getZExtValue(). (details)
  12. [LV] Regenerate test. NFC (details)
  13. [clangd] Add isKeyword function. (details)
  14. [Parser] ParseMicrosoftAsmStatement - Replace bit '|' operator with logical '||' operator. (PR47071) (details)
  15. [VPlan] Clean up uses/operands on VPBB deletion. (details)
  16. [mlir][Linalg] Canonicalize TensorCastOp away when it feeds a LinalgOp. (details)
  17. [ARM]Fold select_cc(vecreduce_[u|s][min|max], x) into VMINV or VMAXV (details)
  18. [SystemZ] Add support for .insn directives for vector instructions. (details)
  19. [OpenMP][Tests] NFC: fix flaky test failure caused by rare scheduling (details)
  20. [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload (details)
  21. Revert SVML support for sqrt (details)
  22. [docs] Revise loop terminology reference. (details)
  23. [mlir] Split alloc-like op LLVM lowerings into base and separate derived classes. (details)
  24. [libc++/abi] Revert "[libc++] Move the weak symbols list to libc++abi" (details)
  25. [X86] isTargetShuffleEquivalent - merge duplicate array accesses. NFCI. (details)
  26. [InstCombine] Add or(shl(v,and(x,bw-1)),lshr(v,bw-and(x,bw-1))) funnel shift tests (details)
  27. [InstCombine] Extend 'shift with constants' vector tests (details)
  28. [SVE] Lower fixed length VECREDUCE_AND operation (details)
  29. Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload" (details)
  30. [flang] Introduce DiagnosticConsumer classes in libflangFrontend (details)
  31. Add definition for static constexpr member (NFC) (details)
  32. [mlir][Linalg] Remove unused variable. NFCI. (details)
  33. Revert "[DebugInfo] Improve dbg preservation in LSR." (details)
  34. [InstCombine] canEvaluateShifted - remove dead (and never used code). NFC. (details)
  35. [SelectionDAG] Don't remove unused negated constant immediately (details)
  36. [llvm-objcopy][MachO] Add support for universal binaries (details)
  37. Revert "[ARM]Fold select_cc(vecreduce_[u|s][min|max], x) into VMINV or VMAXV" (details)
  38. [InstCombine] FoldShiftByConstant - use m_Specific. NFCI. (details)
  39. [GlobalISel] Fix CSEMIRBuilder silently allowing use-before-def. (details)
  40. [llvm-objcopy][MachO] Add missing std::move. (details)
  41. [SVE][CodeGen] Fix TypeSize/ElementCount related warnings in sve-split-store.ll (details)
  42. docs: add documentation describing API Notes (details)
  43. [NFC][regalloc] Model weight normalization as a virtual (details)
  44. [clangd] Describe non-handling of most IWYU pragmas. NFC (details)
  45. [InstCombine] Add test for PR47730 (details)
  46. [InstCombine] Handle GEP inbounds in select op replacement (PR47730) (details)
  47. [gcov] Fix non-determinism (DenseMap iteration order) of checksum computation (details)
  48. [lldb/test] Catch invalid calls to expect() (details)
  49. [CodeGen][MachineSched] Fixup function name typo. NFC (details)
  50. [NFC][GCOV] Fix build: there's `llvm::stable_partition()` wrapper (details)
  51. [CUDA] Don't call __cudaRegisterVariable on C++17 inline variables (details)
  52. [LLD] [COFF] Fix parsing version numbers with leading zeros (details)
  53. [LLD] [COFF] Add a private option for setting the os version separately from subsystem version (details)
  54. [LLD] [MinGW] Simplify handling of os/subsystem version (details)
  55. [LLD] [MinGW] Support setting the subsystem version via the subsystem argument (details)
  56. [flang] Make binary->decimal conversion buffer sizes accurate (details)
  57. [libc++] Fix several debug mode tests (details)
  58. [SLC] Optimize mempcpy_chk to mempcpy (details)
  59. Revert "[SLC] Optimize mempcpy_chk to mempcpy" (details)
  60. [libc++] NFC: Remove unused <iostream> include in atomic.cpp (details)
  61. [libc++] NFC: Rename variant helpers to avoid name clashes (details)
  62. [libc++] Use __has_include instead of complex logic in thread.cpp (details)
Commit 6e2b267d1c85ce0de0e91eb446831607896a0f2b by benny.kra
Promote transpose from linalg to standard dialect

While affine maps are part of the builtin memref type, there is very
limited support for manipulating them in the standard dialect. Add
transpose to the set of ops to complement the existing view/subview ops.
This is a metadata transformation that encodes the transpose into the
strides of a memref.

I'm planning to use this when lowering operations on strided memrefs,
using the transpose to remove the stride without adding a dependency on
linalg dialect.

Differential Revision: https://reviews.llvm.org/D88651
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/docs/Dialects/Linalg.md
The file was modifiedmlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir
The file was modifiedmlir/test/Dialect/Linalg/standard.mlir
The file was modifiedmlir/lib/Conversion/LinalgToStandard/LinalgToStandard.cpp
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
The file was modifiedmlir/test/Dialect/Linalg/llvm.mlir
The file was modifiedmlir/test/Dialect/Linalg/invalid.mlir
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/Dialect/Standard/invalid.mlir
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
Commit 5b5e78a43124c0ced813f378195b36098f716c8f by jam
[VE] Support register and frame-index pair correctly

Support register and frame-index pair correctly as operands of
generic load/store instrucitons, e.g. LD1BZXrri, STLrri, and etc.
Add regression tests also.

Differential Revision: https://reviews.llvm.org/D88779
The file was modifiedllvm/lib/Target/VE/VEISelDAGToDAG.cpp
The file was addedllvm/test/CodeGen/VE/loadrri.ll
Commit d52211e384773ae06aabf476c78f16d2976660b0 by ntv
[mlir] Fix SubViewOp doc in .td
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
Commit 6a089ce0e40abbe4e0f26f05540e3caa60d98a29 by sebastian.neubauer
[AMDGPU] Use tablegen for argument indices

Use tablegen generic tables to get the index of image intrinsic
arguments.
Before, the computation of which image intrinsic argument is at which
index was scattered in a few places, tablegen, the SDag instruction
selection and GlobalISel. This patch changes that, so only tablegen
contains code to compute indices and the ImageDimIntrinsicInfo table
provides these information.

Differential Revision: https://reviews.llvm.org/D86270
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.h
The file was modifiedllvm/include/llvm/IR/IntrinsicsAMDGPU.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AMDGPU/MIMGInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUGlobalISelUtils.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Commit 71cf97e95b8c888367284d1d12925f79b38034eb by david.spickett
Reland "[lldb] Don't send invalid region addresses to lldb server"

This reverts commit c65627a1fe3be7521fc232d633bb6df577f55269.

The test immediately after the new invalid symbol test was
failing on Windows. This was because when we called
VirtualQueryEx to get the region info for 0x0,
even if it succeeded we would call GetLastError.

Which must have picked up the last error that was set while
trying to lookup "not_an_address". Which happened to be 2.
("The system cannot find the file specified.")

To fix this only call GetLastError when we know VirtualQueryEx
has failed. (when it returns 0, which we were also checking for anyway)

Also convert memory region to an early return style
to make the logic clearer.

Reviewed By: labath, stella.stamenova

Differential Revision: https://reviews.llvm.org/D88229
The file was modifiedlldb/test/API/functionalities/memory-region/TestMemoryRegion.py
The file was modifiedlldb/source/Commands/CommandObjectMemory.cpp
The file was modifiedlldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
Commit 7f05fe1aeeb005b552c6a3093b61659e7b578b14 by hokein.wu
[AST][RecoveryExpr] Fix a crash on undeduced type.

We should not capture the type if the function return type is undeduced.

Reviewed By: adamcz

Differential Revision: https://reviews.llvm.org/D87350
The file was modifiedclang/test/SemaCXX/recovery-expr-type.cpp
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/test/AST/ast-dump-recovery.cpp
Commit 96c8a17c800b2370f6d43fe67559ca10d5e44196 by hokein.wu
[clangd] Remove unused using-decls in TypeHierarchyTests, NFC.
The file was modifiedclang-tools-extra/clangd/unittests/TypeHierarchyTests.cpp
Commit e70e7d1019ca8562b614a67c26995da42c0336ad by dmitry.preobrazhensky
[TableGen] Added a function for identification of unsupported opcodes.

This change implements generation of a function which may be used by a backend to check if a given instruction is supported for a specific subtarget.

Reviewers: sdesmalen

Differential Revision: https://reviews.llvm.org/D88214
The file was modifiedllvm/utils/TableGen/AsmMatcherEmitter.cpp
Commit 707c3d4d4210f5386a79ef7a7e771f36bc7ad9ef by carl.ritson
[AMDGPU][RegAlloc][SplitKit] Pre-commit test for D88821
The file was modifiedllvm/test/CodeGen/AMDGPU/splitkit-copy-bundle.mir
Commit 007dd12d546814977519b33ca38b1cc8b31fee26 by gabor.marton
[ASTImporter][AST] Fix structural equivalency crash on dependent FieldDecl

Differential Revision: https://reviews.llvm.org/D88665
The file was modifiedclang/unittests/AST/StructuralEquivalenceTest.cpp
The file was modifiedclang/test/ASTMerge/struct/test.c
The file was modifiedclang/lib/AST/ASTStructuralEquivalence.cpp
Commit 2cd7b0e1305a71f4f9d89f25b140da641f2693f4 by llvm-dev
[ValueTracking] canCreateUndefOrPoison - use APInt to check bounds instead of getZExtValue().

Fixes OSS Fuzz #26135
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/InstCombine/shift.ll
Commit ff86acbb79c49128a93f074e44d4c75b68a2b88b by david.green
[LV] Regenerate test. NFC

This just reruns the update script to add the new
[[LOOP0:!llvm.loop !.*]] checks to remove them from
other diffs.
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr35432.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/if-pred-stores.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
Commit 1425c72236766ad9107d86cb645ee8c6a3ee0eb1 by hokein.wu
[clangd] Add isKeyword function.

This will be used in rename for doing basic name validation.

Differential Revision: https://reviews.llvm.org/D88810
The file was modifiedclang-tools-extra/clangd/SourceCode.h
The file was modifiedclang-tools-extra/clangd/unittests/SourceCodeTests.cpp
The file was modifiedclang-tools-extra/clangd/SourceCode.cpp
Commit 7a932f4f4ccbc0c4294c6911d404f74529f3259b by llvm-dev
[Parser] ParseMicrosoftAsmStatement - Replace bit '|' operator with logical '||' operator. (PR47071)

Fixes static analysis warning.
The file was modifiedclang/lib/Parse/ParseStmtAsm.cpp
Commit 348d85a6c7950a5f14ee6c8741380b5876d99afd by flo
[VPlan] Clean up uses/operands on VPBB deletion.

Update the code responsible for deleting VPBBs and recipes to properly
update users and release operands.

This is another preparation for D84680 & following patches towards
enabling modeling def-use chains in VPlan.
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanTest.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.h
The file was modifiedllvm/unittests/Transforms/Vectorize/VPlanSlpTest.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanValue.h
The file was modifiedllvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPlan.cpp
Commit 346b9d17720a0ccd920cd02b81811a4d2ddc67d6 by nicolas.vasilache
[mlir][Linalg] Canonicalize TensorCastOp away when it feeds a LinalgOp.

This canonicalization is the counterpart of MemRefCastOp -> LinalgOp but on tensors.

This is needed to properly canonicalize post linalg tiling on tensors.

Differential Revision: https://reviews.llvm.org/D88729
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/test/Dialect/Linalg/canonicalize.mlir
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.h
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
Commit 2573cf3c3d42c943cb91b6e85b803f7671260185 by samuel.tebbs
[ARM]Fold select_cc(vecreduce_[u|s][min|max], x) into VMINV or VMAXV

    This folds a select_cc or select(set_cc) of a max or min vector reduction with a scalar value into a VMAXV or VMINV.

    Differential Revision: https://reviews.llvm.org/D87836
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was addedllvm/test/CodeGen/Thumb2/mve-vmaxv-vminv-scalar.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit 34b61d6cd58aea88d44fef9fa4f409f2e324a4d4 by paulsson
[SystemZ] Add support for .insn directives for vector instructions.

Support VRI, VRR, VRS, VRV, VRX, VSI instruction formats with the .insn
directive.

Review: Ulrich Weigand
Differential Revision: https://reviews.llvm.org/D88357
The file was addedllvm/test/MC/SystemZ/directive-insn-vector.s
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.td
The file was modifiedllvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrFormats.td
Commit 34b34e90fc3299debfda4add0e277f59b0a699da by protze
[OpenMP][Tests] NFC: fix flaky test failure caused by rare scheduling

The worker thread can start execution of the task before creation of the second task
Fixes the spurious failure reported in https://reviews.llvm.org/D61657
The file was modifiedopenmp/runtime/test/ompt/tasks/task_memory.c
Commit eaf73293cb6b8d45dd85ffced57aea7ad4177754 by jhuber6
[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload

Summary:
This patch adds an error to Clang that detects if OpenMP offloading is
used between two architectures with incompatible pointer sizes. This
ensures that the data mapping can be done correctly and solves an issue
in code generation generating the wrong size pointer. This patch adds a
new lit substitution, %omp_powerpc_triple that, if the system is 32-bit or
64-bit, sets the powerpc triple accordingly. This was required to fix
some OpenMP tests that automatically populated the target architecture.

Reviewers: jdoerfert

Subscribers: cfe-commits guansong sstefan1 yaxunl delcypher

Tags: OpenMP clang LLVM

Differential Revision: https://reviews.llvm.org/D88594
The file was addedclang/test/OpenMP/target_incompatible_architecture_messages.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
The file was modifiedllvm/utils/lit/lit/llvm/config.py
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
Commit 89e8a8b223b2e20bb63e930ddb78cb80a3ed45a2 by aktoon
Revert SVML support for sqrt

As was brought up in D87169 by @craig.topper we shouldn't map llvm.sqrt to svml since there is a faster native instruction.
https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_mm_sqrt_p&expand=5824,5823,5356,5823,5825,5365,5356

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D88620
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/svml-calls.ll
The file was modifiedllvm/include/llvm/Analysis/VecFuncs.def
Commit c3f12dd6069ebfc913953a4a29e9db5dd4749160 by llvm-project
[docs] Revise loop terminology reference.

Motivated by D88183, this seeks to clarify the current loop nomenclature with added illustrations, examples for possibly unexpected situations (infinite loops not part of the "parent" loop, logical loops sharing the same header, ...), and clarification on what other sources may consider a loop. The current document also has multiple errors that are fixed here.

Some selected errors:
* Loops a defined as strongly-connected components. A component a partition of all nodes, i.e. a subloop can never be a component. That is, the document as it currently is only covers top-level loops, even it also uses the term SCC for subloops.
* "a block can be the header of two separate loops at the same time" (it is considered a single loop by LoopInfo)
* "execute before some interesting event happens" (some interesting event is not well-defined)

Reviewed By: baziotis, Whitney

Differential Revision: https://reviews.llvm.org/D88408
The file was addedllvm/docs/loop-merge.svg
The file was addedllvm/docs/loop-nonmaximal.svg
The file was addedllvm/docs/loop-irreducible.svg
The file was addedllvm/docs/loop-single.svg
The file was modifiedllvm/docs/LoopTerminology.rst
The file was addedllvm/docs/loop-guard.svg
The file was modifiedllvm/docs/LangRef.rst
The file was addedllvm/docs/loop-nested.svg
The file was addedllvm/docs/loop-separate.svg
The file was addedllvm/docs/loop-terminology.svg
Commit 665371d0b29910d7fba618a707d6b732e2037ee2 by csigg
[mlir] Split alloc-like op LLVM lowerings into base and separate derived classes.

The previous code did the lowering to alloca, malloc, and aligned_malloc
in a single class with different code paths that are somewhat difficult to
follow.

This change moves the common code to a base class and has a separte
derived class per lowering target that contains the specifics.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D88696
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-static-memref-ops.mlir
The file was modifiedmlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
The file was modifiedmlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir
Commit d5a6da84a3462d41be003f4e5d4d1d2e0364ce9d by Louis Dionne
[libc++/abi] Revert "[libc++] Move the weak symbols list to libc++abi"

This reverts commit c7d4aa711a. I am still investigating the issue,
but it looks like that commit has an interaction with ld64 that causes
new/delete weak re-exports not to work properly anymore. This is weird
because this commit did not touch the exports of new/delete -- I am
still investigating.
The file was addedlibcxx/lib/weak.exp
The file was modifiedlibcxx/src/CMakeLists.txt
The file was modifiedlibcxxabi/src/CMakeLists.txt
The file was removedlibcxxabi/lib/weak.exp
Commit 0ac210e5801ac8f80305613aac3f9a89ba0cc83d by llvm-dev
[X86] isTargetShuffleEquivalent - merge duplicate array accesses. NFCI.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 2efd9fd699ed59df2927074f318edac99533e402 by llvm-dev
[InstCombine] Add or(shl(v,and(x,bw-1)),lshr(v,bw-and(x,bw-1))) funnel shift tests

If we know the shift amount is less than the bitwidth we should be able to convert this to a funnel shift
The file was modifiedllvm/test/Transforms/InstCombine/funnel.ll
Commit 5ba084c42fdc80a51fc49c27f5f3ecf153953114 by llvm-dev
[InstCombine] Extend 'shift with constants' vector tests

Added missing test coverage for shl(add(and(lshr(x,c1),c2),y),c1) -> add(and(x,c2<<c1),shl(y,c1)) combine

Rename tests as 'foo' and 'bar' isn't very extensible

Added vector tests with undefs and nonuniform constants
The file was modifiedllvm/test/Transforms/InstCombine/pr19420.ll
Commit 9642ded8ba64590aca2720e4c124368d8e98cc8d by mcinally
[SVE] Lower fixed length VECREDUCE_AND operation

Differential Revision: https://reviews.llvm.org/D88707
The file was addedllvm/test/CodeGen/AArch64/sve-fixed-length-log-reduce.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 1dce692de1896412693f25a3afb4818883a611e7 by jhuber6
Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload"

Reverting because detecting architecture size doesn't work on all
platforms.

This reverts commit eaf73293cb6b8d45dd85ffced57aea7ad4177754.
The file was modifiedclang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
The file was modifiedclang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
The file was modifiedllvm/utils/lit/lit/llvm/config.py
The file was modifiedclang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
The file was removedclang/test/OpenMP/target_incompatible_architecture_messages.cpp
The file was modifiedclang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
Commit 8d51d37e0628bde3eb5a3200507ba7135dfc2751 by andrzej.warzynski
[flang] Introduce DiagnosticConsumer classes in libflangFrontend

Currently Flang uses TextDiagnostic, TextDiagnosticPrinter &
TestDiagnosticBuffer classes from Clang (more specifically, from
libclangFrontend). This patch introduces simplified equivalents of these
classes in Flang (i.e. it removes the dependency on libclangFrontend).

Flang only needs these diagnostics classes for the compiler driver
diagnostics. This is unlike in Clang in which similar diagnostic classes
are used for e.g. Lexing/Parsing/Sema diagnostics. For this reason, the
implementations introduced here are relatively basic. We can extend them
in the future if this is required.

This patch also enhances how the diagnostics are printed. In particular,
this is the diagnostic that you'd get _before_  the changes introduced here
(no text formatting):

```
$ bin/flang-new
error: no input files
```

This is the diagnostic that you get _after_ the changes introduced here
(in terminals that support it, the text is formatted - bold + red):

```
$ bin/flang-new
flang-new: error: no input files
```

Tests are updated accordingly and options related to enabling/disabling
color diagnostics are flagged as supported by Flang.

Reviewed By: sameeranjoshi, CarolineConcatto

Differential Revision: https://reviews.llvm.org/D87774
The file was modifiedflang/lib/Frontend/CMakeLists.txt
The file was addedflang/include/flang/Frontend/TextDiagnosticPrinter.h
The file was modifiedflang/unittests/Frontend/CompilerInstanceTest.cpp
The file was modifiedflang/test/Flang-Driver/driver-version.f90
The file was modifiedflang/lib/Frontend/CompilerInstance.cpp
The file was modifiedflang/test/Flang-Driver/missing-input.f90
The file was addedflang/lib/Frontend/TextDiagnosticBuffer.cpp
The file was modifiedflang/test/Flang-Driver/driver-help.f90
The file was addedflang/lib/Frontend/TextDiagnosticPrinter.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedflang/include/flang/Frontend/TextDiagnosticBuffer.h
The file was modifiedflang/test/Flang-Driver/driver-error-cc1.c
The file was modifiedflang/test/Flang-Driver/driver-error-cc1.cpp
The file was addedflang/include/flang/Frontend/TextDiagnostic.h
The file was modifiedflang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedflang/tools/flang-driver/driver.cpp
The file was modifiedflang/tools/flang-driver/fc1_main.cpp
The file was modifiedflang/include/flang/Frontend/CompilerInvocation.h
The file was addedflang/lib/Frontend/TextDiagnostic.cpp
Commit afd729edee4ca0dc63771448926ab5d346161511 by joker.eph
Add definition for static constexpr member (NFC)

Fix the build for some toolchain and config.
The file was modifiedmlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp
Commit 6bcaf6ff69e978cb7ecf10a16f9ba75e14ba19c2 by benny.kra
[mlir][Linalg] Remove unused variable. NFCI.
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
Commit 9d630297700b94cc9c0118c65115c496c782302b by nikita.ppv
Revert "[DebugInfo] Improve dbg preservation in LSR."

This reverts commit a3caf7f6102dc863425f9714b099af58397f0cd2.

The ReleaseLTO-g test-suite configuration has been failing
to build since this commit, because clang segfaults while
building 7zip.
The file was removedllvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/test/DebugInfo/COFF/fpo-shrink-wrap.ll
Commit 4ce61144cb49b48817f0215820173005c8d7d816 by llvm-dev
[InstCombine] canEvaluateShifted - remove dead (and never used code). NFC.

This was already #if'd out when it was added back in 2010 at rG18d7fc8fc6767 and has never been touched since.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
Commit b326d4ff946d2061a566a3fcce9f33b484759fe0 by qiucofan
[SelectionDAG] Don't remove unused negated constant immediately

This reverts partial of a2fb5446 (actually, 2508ef01) about removing
negated FP constant immediately if it has no uses. However, as discussed
in bug 47517, there're cases when NegX is folded into constant from
other places while NegY is removed by that line of code and NegX is
equal to NegY. In these cases, NegX is deleted before used and crash
happens. So revert the code and add necessary test case.
The file was modifiedllvm/test/CodeGen/X86/pr47517.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Commit 32c8435ef70031d7bd3dce48e41bdce65747e123 by alexshap
[llvm-objcopy][MachO] Add support for universal binaries

This diff adds support for universal binaries to llvm-objcopy.

Test plan: make check-all

Differential revision: https://reviews.llvm.org/D88400
The file was modifiedllvm/test/tools/llvm-objcopy/MachO/strip-all.test
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.h
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
The file was addedllvm/test/tools/llvm-objcopy/MachO/universal-object.test
The file was modifiedllvm/include/llvm/Object/MachOUniversalWriter.h
The file was modifiedllvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp
The file was addedllvm/tools/llvm-objcopy/llvm-objcopy.h
The file was modifiedllvm/lib/Object/MachOUniversalWriter.cpp
Commit c9f5cdd4531e2836f47ceb28b80fd7f418645d96 by Amara Emerson
Revert "[ARM]Fold select_cc(vecreduce_[u|s][min|max], x) into VMINV or VMAXV"

This reverts commit 2573cf3c3d42c943cb91b6e85b803f7671260185.

These seem to break some lit tests.
The file was removedllvm/test/CodeGen/Thumb2/mve-vmaxv-vminv-scalar.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit 8fb4645321765124aa89c8e798a989eae38739ce by llvm-dev
[InstCombine] FoldShiftByConstant - use m_Specific. NFCI.

Use m_Specific instead of m_Value followed by an equality check - we already do this for the similar folds above, it looks like an oversight in rG2b459fe7e1e where the original pattern match code looked a little different.
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
Commit c2bce848ecae0e17883e7cc4b8054c1e12ef1f98 by Amara Emerson
[GlobalISel] Fix CSEMIRBuilder silently allowing use-before-def.

If a CSEMIRBuilder query hits the instruction at the current insert point,
move insert point ahead one so that subsequent uses of the builder don't end up with
uses before defs.

This fix also shows that AMDGPU was also affected by this bug often, but got away
with it because it was using a G_IMPLICIT_DEF before the use.

Differential Revision: https://reviews.llvm.org/D88605
The file was modifiedllvm/unittests/CodeGen/GlobalISel/CSETest.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-implicit-def.mir
The file was modifiedllvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
Commit 6e25586990b93e2c9eaaa4f473b6720ccd646c46 by alexshap
[llvm-objcopy][MachO] Add missing std::move.

This change fixes the build issue introduced by 32c8435ef7
(detected by the buildbot fuchsia-x86_64-linux).

Test plan: make check-all
The file was modifiedllvm/tools/llvm-objcopy/llvm-objcopy.cpp
Commit fa0293081d62295140f8518cc7127473d6856cda by david.sherwood
[SVE][CodeGen] Fix TypeSize/ElementCount related warnings in sve-split-store.ll

I have fixed up a number of warnings resulting from TypeSize -> uint64_t
casts and calling getVectorNumElements() on scalable vector types. I
think most of the changes are fairly trivial except for those in
DAGTypeLegalizer::SplitVecRes_MSTORE I've tried to ensure we create
the MachineMemoryOperands in a sensible way for scalable vectors.

I have added a CHECK line to the following test:

CodeGen/AArch64/sve-split-store.ll

that ensures no new warnings are added.

Differential Revision: https://reviews.llvm.org/D86928
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
The file was modifiedllvm/test/CodeGen/AArch64/sve-split-store.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Commit 85d506400081e121ef876a4c66fb337b050dcae6 by Saleem Abdulrasool
docs: add documentation describing API Notes

API Notes are a feature which allows annotation of headers by an
auxiliary file that contains metadata for declarations pertaining to the
associated module.  This enables adding attributes to declarations
without requiring modification of the headers, enabling finer grained
control for library headers for consumers without having to modify
external headers.

Differential Revision: https://reviews.llvm.org/D88446
Reviewed By: Richard Smith, Marcel Hlopko
The file was addedclang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKitExplicitNullability.h
The file was addedclang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKit_private.apinotes
The file was addedclang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKit.h
The file was addedclang/test/APINotes/Inputs/Frameworks/SomeKit.framework/Headers/SomeKit.apinotes
The file was addedclang/docs/APINotes.rst
Commit 82ebbcfb059ba755ce4ae7711a27205fbe443990 by mtrofin
[NFC][regalloc] Model weight normalization as a virtual

Continuing from D88499, we can now model the normalization function as a
virtual member of VirtRegAuxInfo. Note that the default
(normalizeSpillWeight) is also used stand-alone in RAGreedy.

Differential Revision: https://reviews.llvm.org/D88713
The file was modifiedllvm/lib/CodeGen/RegAllocPBQP.cpp
The file was modifiedllvm/include/llvm/CodeGen/CalcSpillWeights.h
Commit 95262ee2be75daffd05e9a8a985ca2c8e34c9af7 by sam.mccall
[clangd] Describe non-handling of most IWYU pragmas. NFC

Differential Revision: https://reviews.llvm.org/D88822
The file was modifiedclang-tools-extra/clangd/index/CanonicalIncludes.h
Commit 0f8e4a5ed0e556af82592f7cae4a6082ab238da3 by nikita.ppv
[InstCombine] Add test for PR47730
The file was modifiedllvm/test/Transforms/InstCombine/select.ll
Commit 3641d375f6747237b1b55a25a55e9028d8a67a02 by nikita.ppv
[InstCombine] Handle GEP inbounds in select op replacement (PR47730)

When retrying the "simplify with operand replaced" select
optimization without poison flags, also handle inbounds on GEPs.

Of course, this particular example would also be safe to transform
while keeping inbounds, but the underlying machinery does not
know this (yet).
The file was modifiedllvm/test/Transforms/InstCombine/select.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
Commit e338f8fe69b869afd8adf53919bd578aaf14fb2f by i
[gcov] Fix non-determinism (DenseMap iteration order) of checksum computation

... by using MapVector. The issue was caused by 63182c2ac0b643a60d397274e8a31166fc7243fa.

Also use stable_partition instead of partition to get stable results
across different STL implementations.
The file was modifiedllvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
Commit 010d7a388b146cafaf4bc0b28b952d5852d62b6a by davelee.com
[lldb/test] Catch invalid calls to expect()

Add preconditions to `TestBase.expect()` that catch semantically invalid calls
that happen to succeed anyway. This also fixes the broken callsites caught by
these checks.

This prevents the following incorrect calls:

1. `self.expect("lldb command", "some substr")`
2. `self.expect("lldb command", "assert message", "some substr")`

Differential Revision: https://reviews.llvm.org/D88792
The file was modifiedlldb/test/API/commands/settings/TestSettings.py
The file was modifiedlldb/test/API/commands/frame/diagnose/virtual-method-call/TestDiagnoseDereferenceVirtualMethodCall.py
The file was modifiedlldb/test/API/commands/frame/diagnose/bad-reference/TestBadReference.py
The file was modifiedlldb/test/API/lang/cpp/constructors/TestCppConstructors.py
The file was modifiedlldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
The file was modifiedlldb/test/API/functionalities/data-formatter/data-formatter-objc/cmtime/TestDataFormatterCMTime.py
The file was modifiedlldb/test/API/assert_messages_test/TestAssertMessages.py
The file was modifiedlldb/test/API/commands/frame/diagnose/inheritance/TestDiagnoseInheritance.py
The file was modifiedlldb/test/API/commands/frame/diagnose/dereference-argument/TestDiagnoseDereferenceArgument.py
The file was modifiedlldb/test/API/commands/frame/diagnose/dereference-this/TestDiagnoseDereferenceThis.py
The file was modifiedlldb/test/API/commands/frame/diagnose/complicated-expression/TestComplicatedExpression.py
The file was modifiedlldb/test/API/driver/batch_mode/TestBatchMode.py
The file was modifiedlldb/test/API/commands/frame/diagnose/local-variable/TestLocalVariable.py
The file was modifiedlldb/test/API/types/TestRecursiveTypes.py
The file was modifiedlldb/test/API/functionalities/breakpoint/breakpoint_by_line_and_column/TestBreakpointByLineAndColumn.py
Commit db80cc397e7ec4aeefc7322e6a240651506e15a6 by jonathan_roelofs
[CodeGen][MachineSched] Fixup function name typo. NFC
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
Commit 59127de2435b54c6b1621f5b3e7fabc3e79ff248 by lebedev.ri
[NFC][GCOV] Fix build: there's `llvm::stable_partition()` wrapper
The file was modifiedllvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
Commit a2cc8833683dd124cf2ee96f6d17f7f835da1fc8 by i
[CUDA] Don't call __cudaRegisterVariable on C++17 inline variables

D17779: host-side shadow variables of external declarations of device-side
global variables have internal linkage and are referenced by
`__cuda_register_globals`.

nvcc from CUDA 11 does not allow `__device__ inline` or `__device__ constexpr`
(C++17 inline variables) but clang has incorrectly supported them for a while:

```
error: A __device__ variable cannot be marked constexpr
error: An inline __device__/__constant__/__managed__ variable must have internal linkage when the program is compiled in whole program mode (-rdc=false)
```

If such a variable (which has a comdat group) is discarded (a copy from another
translation unit is prevailing and selected), accessing the variable from
outside the section group (`__cuda_register_globals`) is a violation of the ELF
specification and will be rejected by linkers:

> A symbol table entry with STB_LOCAL binding that is defined relative to one of a group's sections, and that is contained in a symbol table section that is not part of the group, must be discarded if the group members are discarded. References to this symbol table entry from outside the group are not allowed.

As a workaround, don't register such inline variables for now.
(If we register the variables in all TUs, we will keep multiple instances of the shadow and break the C++ semantics for inline variables).
We should reject such variables in Sema but our internal users need some time to migrate.

Reviewed By: tra

Differential Revision: https://reviews.llvm.org/D88786
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was modifiedclang/test/CodeGenCUDA/device-stub.cu
Commit 19e86336efa75456469a2a3491fc58e65af6bd0a by martin
[LLD] [COFF] Fix parsing version numbers with leading zeros

Parse the components as decimal, instead of decuding the base from
the string. This avoids ambiguity if the second number contains leading
zeros, which previously were parsed as indicating an octal number.

MS link.exe doesn't support hexadecimal numbers in the version numbers,
neither in /version nor in /subsystem.

Differential Revision: https://reviews.llvm.org/D88801
The file was modifiedlld/COFF/DriverUtils.cpp
The file was modifiedlld/test/COFF/subsystem.test
The file was modifiedlld/test/COFF/version.test
Commit 45c4c54003641f2bb225eaf305c07906451d6096 by martin
[LLD] [COFF] Add a private option for setting the os version separately from subsystem version

The MinGW driver has separate options for OS and subsystem version.
Having this available in lld-link allows the MinGW driver to both match
GNU ld better and simplifies the code for merging two (potentially
mismatching) arguments into one.

Differential Revision: https://reviews.llvm.org/D88802
The file was modifiedlld/test/COFF/subsystem.test
The file was modifiedlld/COFF/Writer.cpp
The file was modifiedlld/COFF/Driver.cpp
The file was modifiedlld/COFF/Config.h
The file was modifiedlld/COFF/Driver.h
The file was modifiedlld/COFF/Options.td
The file was modifiedlld/COFF/DriverUtils.cpp
Commit bc8f3b424c7785754c1de8a2f5a1e2c16a997143 by martin
[LLD] [MinGW] Simplify handling of os/subsystem version

As they can be set independently after D88802, we can get rid of a bit
of extra code - simplifying the logic here before adding more
complication to it later.

Differential Revision: https://reviews.llvm.org/D88803
The file was modifiedlld/MinGW/Driver.cpp
The file was modifiedlld/test/MinGW/driver.test
The file was modifiedlld/COFF/Config.h
Commit 61e2f9fa2e514c053c571228639ccdb5d21fadd4 by martin
[LLD] [MinGW] Support setting the subsystem version via the subsystem argument

If a version is specified both with --{major,minor}-subsystem-version and
with --subsystem <name>:<version>, the one specified last (that actually
sets a version) takes precedance in GNU ld; thus doing the same here.

Differential Revision: https://reviews.llvm.org/D88804
The file was modifiedlld/MinGW/Driver.cpp
The file was modifiedlld/test/MinGW/driver.test
Commit 07cb4c013c43721565530f3be077c947804da8a6 by pklausler
[flang] Make binary->decimal conversion buffer sizes accurate

The binary values that produce the most significant decimal
digits in an exact conversion are those with the least normal
biased exponent (1) and all fractional bits set, not the
least-valued subnormals.  So the binary->decimal conversion
buffer sizes were a little short, and could cause a overrun crash.

Differential revision: https://reviews.llvm.org/D88688
The file was modifiedflang/include/flang/Common/real.h
Commit a506a66bd90cb15885833012fb2c2b7873bff541 by Louis Dionne
[libc++] Fix several debug mode tests

These tests were only being run when _LIBCPP_DEBUG was defined, which
isn't the case by default when we run the test suite. In other words,
all these debug mode tests were never being run. This commit makes sure
they are run, and in some cases, extracts them into a file under test/libcxx
to separate them from the Standard tests.

Differential Revision: https://reviews.llvm.org/D88836
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_7.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.map/bucket.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_3.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_2.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db3.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/db_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_2.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_5.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_back.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db4.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/pop_back_empty.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/erase_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db2.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/db_local_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/db_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/db_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/db_insert_hint_const_lvalue.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_7.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_iterators_8.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.access/db_front.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/db_local_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db1.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db4.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.access/db_index.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_rvalue.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_move.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_pop_back_db1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_4.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/db_local_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/db_bucket.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_6.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/erase_iter_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_cfront.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/db_move.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/db_move.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/erase_iter_db2.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/unord/unord.map/db_local_iterators_7.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_6.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db4.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/db_insert_hint_const_lvalue.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_iter_iter_db1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/db_iterators_7.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/unord.set.swap/db_swap_1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/db_iterators_8.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_7.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.access/db_cindex.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.access/db_cfront.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.access/db_cback.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_char_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_7.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/db_insert_hint_const_lvalue.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/db_iterators_8.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/db_move.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.access/db_cfront.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.access/db_back.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_6.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_rvalue.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db3.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_index.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/unord/unord.map/db_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/erase_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.access/db_back.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/db_iterators_7.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_cback.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_db2.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_cindex.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_const_lvalue.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/db_iterators_8.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db2.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db4.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/erase_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/erase_iter_iter_db1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_5.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db3.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_3.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.access/db_cback.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_front.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_8.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/unord/unord.map/db_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/db_insert_hint_const_lvalue.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/db_local_iterators_8.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/db_local_iterators_8.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multiset/db_local_iterators_7.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/clear_and_shrink_db1.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_iter_iter_db4.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/db_iterators_8.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/unord.multiset.swap/db_swap_1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/erase_iter_db1.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db3.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.iterators/db_iterators_3.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/db_local_iterators_7.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db3.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.set/erase_iter_iter_db2.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
The file was modifiedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_iter_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_5.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.set/erase_iter_db2.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_4.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.swap/db_swap_1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.access/db_cindex.pass.cpp
The file was modifiedlibcxx/test/libcxx/containers/sequences/vector/db_iterators_8.pass.cpp
The file was removedlibcxx/test/std/containers/unord/unord.multiset/erase_iter_iter_db1.pass.cpp
The file was modifiedlibcxx/test/libcxx/strings/basic.string/string.modifiers/insert_iter_size_char_db1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.access/db_index.pass.cpp
The file was addedlibcxx/test/libcxx/containers/unord/unord.map/unord.map.swap/db_swap_1.pass.cpp
The file was addedlibcxx/test/libcxx/strings/basic.string/string.access/db_front.pass.cpp
The file was removedlibcxx/test/std/strings/basic.string/string.iterators/db_iterators_4.pass.cpp
Commit 3f1fd59de3002e3d5a4eca98cd49c45755ab0110 by Dávid Bolvanský
[SLC] Optimize mempcpy_chk to mempcpy

As reported in PR46735:

void* f(void *d, const void *s, size_t l)
{
    return __builtin___mempcpy_chk(d, s, l, __builtin_object_size(d, 0));
}

This can be optimized to `return mempcpy(d, s, l);`.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D86019
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fortify-folding.ll
The file was modifiedllvm/lib/Transforms/Utils/BuildLibCalls.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetLibraryInfo.def
The file was modifiedllvm/include/llvm/Transforms/Utils/BuildLibCalls.h
Commit a4bae56ab8e9474c2bdb2640243ae7ea6a3e0619 by Dávid Bolvanský
Revert "[SLC] Optimize mempcpy_chk to mempcpy"

This reverts commit 3f1fd59de3002e3d5a4eca98cd49c45755ab0110.
The file was modifiedllvm/include/llvm/Transforms/Utils/BuildLibCalls.h
The file was modifiedllvm/lib/Analysis/TargetLibraryInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetLibraryInfo.def
The file was modifiedllvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
The file was modifiedllvm/lib/Transforms/Utils/BuildLibCalls.cpp
The file was modifiedllvm/test/Transforms/InstCombine/fortify-folding.ll
The file was modifiedllvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
Commit 32a2209b5c72571a2448bf0ffe88e96eb91b4784 by Louis Dionne
[libc++] NFC: Remove unused <iostream> include in atomic.cpp
The file was modifiedlibcxx/src/atomic.cpp
Commit fe7245b772d5bca4a5f6cc055b18c45cc8b46902 by Louis Dionne
[libc++] NFC: Rename variant helpers to avoid name clashes

Some system headers define __constructor and __destructor macros (for
Clang attributes constructor and destructor). While this is badly
behaved, it is easy for libc++ to work around this issue.
The file was modifiedlibcxx/include/variant
Commit 477a68760b24f07a45253fb41e89368328b3a4a8 by Louis Dionne
[libc++] Use __has_include instead of complex logic in thread.cpp

We might end up including more headers than strictly necessary this way,
but it's much simpler and it makes it easier to port thread.cpp to systems
not handled by the existing conditionals.
The file was modifiedlibcxx/src/thread.cpp