SuccessChanges

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

Summary

  1. DSE: fix bug where we would only check libcalls for name rather than (details)
  2. [X86] Add more complex tests for vector masks used with AND/OR/XOR. (details)
  3. [X86][AVX] Add lowerShuffleAsLanePermuteAndSHUFP lowering (details)
  4. Fix copy+paste typo in shuffle test name (details)
Commit 87407fc03c82d880cc42330a8e230e7a48174e3c by nunoplopes
DSE: fix bug where we would only check libcalls for name rather than
whole decl
The file was modifiedllvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
The file was modifiedllvm/test/Transforms/DeadStoreElimination/libcalls.ll
The file was addedllvm/test/Transforms/DeadStoreElimination/libcalls2.ll
Commit 5d069f4314a0d8b124a563e61d161c3c3d3b0536 by flo
[X86] Add more complex tests for vector masks used with AND/OR/XOR.
Additional test cases for D72524.
The file was modifiedllvm/test/CodeGen/X86/v8i1-masks.ll
Commit ce35010d782cb5a69102ad7785eb747f6d747eb4 by llvm-dev
[X86][AVX] Add lowerShuffleAsLanePermuteAndSHUFP lowering
Add initial support for lowering v4f64 shuffles to SHUFPD(VPERM2F128(V1,
V2), VPERM2F128(V1, V2)), eventually this could be used for v8f32 (and
maybe v8f64/v16f32) but I'm being conservative for the initial
implementation as only v4f64 can always succeed.
This currently is only called from lowerShuffleAsLanePermuteAndShuffle
so only gets used for unary shuffles, and we limit this to cases where
we use upper elements as otherwise concating 2 xmm shuffles is probably
the better case.
Helps with poor shuffles mentioned in D66004.
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 08275a52d83e623f0347fd9396c18f4d21a15c90 by llvm-dev
Fix copy+paste typo in shuffle test name
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-256-v8.ll