FailedChanges

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

Summary

  1. [ARM] MVE big endian bitcasts (details)
  2. [ORC] Remove a layer of indirection when locking the mutex. NFCI. (details)
  3. [X86] SimplifyMultipleUseDemandedBits - Add target shuffle support (details)
  4. Fix signed/unsigned comparison warning. NFC. (details)
  5. [X86] lowerShuffleAsSpecificZeroOrAnyExtend - use undef PSHUFB mask (details)
  6. [clang-tidy] Add FixItHint for performance-noexcept-move-constructor (details)
  7. [UpdateTestChecks] Add end_function directive to regex matcher for (details)
  8. Regenerate test for an upcoming patch. (details)
  9. [TargetLowering][X86] Teach SimplifyDemandedVectorElts to replace the (details)
  10. [Attributor][NFC] Invalid DerefState is at fixpoint (details)
  11. [Attributor][NFC] Simplify common pattern wrt. fixpoints (details)
  12. [Attributor][Fix] Resolve various liveness issues (details)
  13. [Attributor][NFC] Improve debug output (details)
  14. [Attributor][NFC] Create some attributes earlier (details)
Commit 91296295d02e26830e9e0cbe03f02982c90e0056 by david.green
[ARM] MVE big endian bitcasts
This adds big endian MVE patterns for bitcasts. They are defined in llvm
as being the same as a store of the existing type and the load into the
new. This means that they have to become a VREV between the two types,
working in the same way that NEON works in big-endian. This also adds
some example tests for bigendian, showing where code is and isn't
different.
The main difference, especially from a testing perspective is that
vectors are passed as v2f64, and so are VREV into and out of call
arguments, and the parameters are passed in a v2f64 format. Same happens
for inline assembly where the register class is used, so it is VREV to a
v16i8.
So some of this is probably not correct yet, but it is (mostly)
self-consistent and seems to be consistent with how llvm treats vectors.
The rest we can hopefully fix later. More details about big endian neon
can be found in https://llvm.org/docs/BigEndianNEON.html.
Differential Revision: https://reviews.llvm.org/D65581
llvm-svn: 367780
The file was modifiedllvm/lib/Target/ARM/ARMInstrMVE.td
The file was addedllvm/test/CodeGen/Thumb2/mve-be.ll
Commit 6f0ac30ae16054e3b4117f34c80135f94eaeb189 by benny.kra
[ORC] Remove a layer of indirection when locking the mutex. NFCI.
llvm-svn: 367781
The file was modifiedllvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h
Commit e16901844d31d745868403ade45e43d1773c617a by llvm-dev
[X86] SimplifyMultipleUseDemandedBits - Add target shuffle support
llvm-svn: 367782
The file was modifiedllvm/test/CodeGen/X86/vector-reduce-mul-widen.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vec_smulo.ll
Commit c5891eaa34e2a6dc9be9ef8d6af54b3428de95f1 by llvm-dev
Fix signed/unsigned comparison warning. NFC.
llvm-svn: 367783
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 436fd52a71217094afc0d0c5b48d5e6fa438bf5b by llvm-dev
[X86] lowerShuffleAsSpecificZeroOrAnyExtend - use undef PSHUFB mask
indices for ANY_EXTEND shuffles
llvm-svn: 367784
The file was modifiedllvm/test/CodeGen/X86/bitcast-vector-bool.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
Commit 6d83ab0870c49416593943aceebe81d81b6d49d6 by Zinovy Nis
[clang-tidy] Add FixItHint for performance-noexcept-move-constructor
Differential Revision: https://reviews.llvm.org/D65104
llvm-svn: 367785
The file was addedclang-tools-extra/test/clang-tidy/performance-noexcept-move-constructor-fix.cpp
The file was modifiedclang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.cpp
Commit 6d2e8eb9cac046d9243c776cb871a6842c16312d by llvm-dev
[UpdateTestChecks] Add end_function directive to regex matcher for
wasm32 function body
llvm-svn: 367786
The file was modifiedllvm/utils/UpdateTestChecks/asm.py
Commit 295f99265b83e12d3bca45707ec1c5a4fa4df55b by llvm-dev
Regenerate test for an upcoming patch.
I managed to use the update_llc_test_checks script for this, but had to
set -asm-verbose=true and then manually tweak the result (PR42882)
llvm-svn: 367787
The file was modifiedllvm/test/CodeGen/WebAssembly/simd-extended-extract.ll
Commit 5a4989e2ac74d60bd52791ac42a1b800b6c605aa by craig.topper
[TargetLowering][X86] Teach SimplifyDemandedVectorElts to replace the
base vector of INSERT_SUBVECTOR with undef if none of the elements are
demanded even if the node has other users.
Summary: The SimplifyDemandedVectorElts function can replace with undef
when no elements are demanded, but due to how it interacts with
TargetLoweringOpts, it can only do this when the node has no other
users.
Remove a now unneeded DAG combine from the X86 backend.
Reviewers: RKSimon, spatel
Reviewed By: RKSimon
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65713
llvm-svn: 367788
The file was modifiedllvm/test/CodeGen/X86/masked_expandload.ll
The file was modifiedllvm/test/CodeGen/X86/x86-interleaved-access.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit b6acee5c7b190de451f4f4e13a82238cb3e68f6e by jdoerfert
[Attributor][NFC] Invalid DerefState is at fixpoint
Summary: If the DerefBytesState (and thereby the DerefState) is invalid,
we reached a fixpoint for the whole DerefState as we will not
manifest/provide information then.
Reviewers: uenoku, sstefan1
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65586
llvm-svn: 367789
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit d1c3793563bf1caf05b6babe10e3ff32ab446f2a by jdoerfert
[Attributor][NFC] Simplify common pattern wrt. fixpoints
When a fixpoint is indicated the change status is known due to the
fixpoint kind. This simplifies a common code pattern by making the
connection explicit.
llvm-svn: 367790
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit 4361da24acab41e378136906d5c12b372ac2b0bc by jdoerfert
[Attributor][Fix] Resolve various liveness issues
Summary: This contains various fixes:
- Explicitly determine and return the next noreturn instruction.
- If an invoke calls a noreturn function which is not nounwind we
   keep the unwind destination live. This also means we require an
   invoke. Though we can still add the unreachable to the normal
   destination block.
- Check if the return instructions are dead after we look for calls
   to avoid triggering an optimistic fixpoint in the presence of
   assumed liveness information.
- Make the interface work with "const" pointers.
- Some simplifications
While additional tests are included, full coverage is achieved only with
D59978.
Reviewers: sstefan1, uenoku
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D65701
llvm-svn: 367791
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was modifiedllvm/test/Transforms/FunctionAttrs/liveness.ll
Commit 6471bb6f18fd7524984283fdab44c324587225ef by jdoerfert
[Attributor][NFC] Improve debug output
llvm-svn: 367792
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
Commit 305b961f64b75e73110e309341535f6d5a48ed72 by jdoerfert
[Attributor][NFC] Create some attributes earlier
llvm-svn: 367793
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp