SuccessChanges

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

Summary

  1. [flang] Make implicit conversion explicit in assignment (details)
  2. [clangd] Fix data race in BackgroundIndex test (details)
  3. [lldb/debugserver] Include TargetConditionals.h where needed (details)
  4. [NFC] Small rework to RenamerClangTidyCheck addUsage (details)
  5. [ARM] Convert VDUPLANE to VDUP under MVE (details)
Commit b05c8c5756e473e9ec51ed65869f6ed42c552404 by tkeith
[flang] Make implicit conversion explicit in assignment

When intrinsic types are assigned there are some implicit conversions
that take place. This change make them explicit in the types
representation of assignments.

Differential Revision: https://reviews.llvm.org/D79637
The file was modifiedflang/lib/Semantics/expression.cpp
Commit c746781f5085a965cfc64bd8ddf904217b797ab8 by kadircet
[clangd] Fix data race in BackgroundIndex test

MockFSProvider is not thread-safe. Make sure we don't modify it while
background index is working.
The file was modifiedclang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
Commit c9537b9cc862b7ec1ba502043e42bc6ebd24dec0 by Fred Riss
[lldb/debugserver] Include TargetConditionals.h where needed

MachProcess.mm uses a TARGET_OS_ macro without directly including
TargetConditionals.h. This currently works as we get the header
as an indirect dependency, but might not in the future.

I just spent some time investigating an internal regression
caused by a similar issue, so I audited the codebase for such
cases.
The file was modifiedlldb/tools/debugserver/source/MacOSX/MachProcess.mm
Commit 0e49ac73eaf554ad4135f51b03ea4eadaebf0466 by n.james93
[NFC] Small rework to RenamerClangTidyCheck addUsage
The file was modifiedclang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
Commit 6eee2d9b5bdd5dacb2669c0b8f5a76cb64f363e3 by david.green
[ARM] Convert VDUPLANE to VDUP under MVE

Unlike Neon, MVE does not have a way of duplicating from a vector lane,
so a VDUPLANE currently selects to a VDUP(move_from_lane(..)). This
forces that to be done earlier as a dag combine to allow other folds to
happen.

It converts to a VDUP(EXTRACT). On FP16 this is then folded to a
VGETLANEu to prevent it from creating a vmovx;vmovhr pair, using a
single move_from_reg instead.

Differential Revision: https://reviews.llvm.org/D79606
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld3.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vdup.ll
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst3.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was modifiedllvm/test/CodeGen/Thumb2/mve-pred-shuffle.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vld4.ll