FailedChanges

Summary

  1. [tools][remarks-shlib] Don't build libRemarks.so without PIC (details)
  2. [X86] Rename combineExtInVec to combineEXTEND_VECTOR_INREG. NFCI. (details)
  3. [MemLoc] Support lllvm.memcpy.inline in MemoryLocation::getForArgument (details)
  4. JSONCompilationDatabase.cpp - cleanup key parsing error checks. NFCI. (details)
  5. [X86] combineX86ShufflesRecursively - fix use after move warning. NFCI. (details)
  6. DWARFYAML::emitDebugSections - fix use after std::move warnings. NFCI. (details)
  7. [X86] Rename getExtendInVec to getEXTEND_VECTOR_INREG. NFCI. (details)
  8. [X86][SSE] Enable ZERO_EXTEND_VECTOR_INREG shuffle combining on SSE41 targets. (details)
  9. [X86][SSE] Fold EXTEND_VECTOR_INREG(EXTEND_VECTOR_INREG(X)) -> EXTEND_VECTOR_INREG(X) (details)
  10. [Diagnostics] Fixed -Wsizeof-array-div false positive when divisor is sizeof reference type (PR47495) (details)
Commit 26947d7b63809413b96b0bb6033f168488836289 by ro
[tools][remarks-shlib] Don't build libRemarks.so without PIC

A build on `sparcv9-sun-solaris2.11` with `-DLLVM_ENABLE_PIC=Off` failed
linking `libRemarks.so`:

  [27/2297] Linking CXX shared library lib/libRemarks.so.12git
  FAILED: lib/libRemarks.so.12git
  [...]
  ld: fatal: relocation error: R_SPARC_H44: file lib/libLLVMRemarks.a(Remark.cpp.o): symbol _ZTVN4llvm18raw_string_ostreamE: invalid shared object relocation type: ABS44 code model unsupported
  [...]

On Solaris/sparcv9 as on many other targets you cannot link non-PIC objects
into a shared object.

The following patch avoids this by not building the library with PIC.  It
allowed the build to complete and `ninja check-all` showed no errors.

Differential Revision: https://reviews.llvm.org/D85626
The file was modifiedllvm/tools/remarks-shlib/CMakeLists.txt
Commit e17686ae60faa85857e61052632bb6e6c0230ae0 by llvm-dev
[X86] Rename combineExtInVec to combineEXTEND_VECTOR_INREG. NFCI.

Make it easier to find the method by naming it after the ops it actually handles. We already do this for lowering.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 2990518b0324eedca455b2bbf93b69f287dd6d52 by Dávid Bolvanský
 [MemLoc] Support lllvm.memcpy.inline in MemoryLocation::getForArgument

Reviewed By: fhahn

Differential Revision: https://reviews.llvm.org/D87971
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/memintrinsics.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/memset-and-memcpy.ll
The file was modifiedllvm/lib/Analysis/MemoryLocation.cpp
Commit a735d6eae2847b039d12c75d4c794862dad59bc1 by llvm-dev
JSONCompilationDatabase.cpp - cleanup key parsing error checks. NFCI.

Merge the key + sequence/value checks with the key handling code.

Reduces the number of key string comparisons and avoids a number of clang static analyzer null dereference warnings.
The file was modifiedclang/lib/Tooling/JSONCompilationDatabase.cpp
Commit 91720ee561b2da4161df6abaddfd8a677aebb504 by llvm-dev
[X86] combineX86ShufflesRecursively - fix use after move warning. NFCI.

After moving WidenedMask is in an undefined state, so reduce scope of the variable so its reinitialized every iteration - we should still retain any memory allocation savings.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 6bb912336804822cc4b09f6849f1fd7d12057132 by llvm-dev
DWARFYAML::emitDebugSections - fix use after std::move warnings. NFCI.

We were using Err after it had been moved into cantFail - avoid this by calling cantFail with Error::success() directly.
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp
Commit 2b634a9d0e144a619ba68fc064dab0771f725063 by llvm-dev
[X86] Rename getExtendInVec to getEXTEND_VECTOR_INREG. NFCI.

Make it easier to find the method by naming it after the ops it actually handles. We already do this for lowering/combining.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit a0c8793ce691d77453bca9d31b0031d39d07a5b4 by llvm-dev
[X86][SSE] Enable ZERO_EXTEND_VECTOR_INREG shuffle combining on SSE41 targets.

Allows ZERO_EXTEND_VECTOR_INREG to be shuffle combined on all targets where it is legal.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/pmul.ll
The file was modifiedllvm/test/CodeGen/X86/vec_int_to_fp.ll
The file was modifiedllvm/test/CodeGen/X86/cast-vsel.ll
The file was modifiedllvm/test/CodeGen/X86/vector-pcmp.ll
The file was modifiedllvm/test/CodeGen/X86/vector-idiv-udiv-128.ll
The file was modifiedllvm/test/CodeGen/X86/combine-shl.ll
The file was modifiedllvm/test/CodeGen/X86/widen_conv-4.ll
The file was modifiedllvm/test/CodeGen/X86/psubus.ll
The file was modifiedllvm/test/CodeGen/X86/2011-12-28-vselecti8.ll
The file was modifiedllvm/test/CodeGen/X86/pmulh.ll
The file was modifiedllvm/test/CodeGen/X86/vector-zext.ll
The file was modifiedllvm/test/CodeGen/X86/slow-pmulld.ll
Commit 15c8306056beefa61533a895e8d836db72fccd14 by llvm-dev
[X86][SSE] Fold EXTEND_VECTOR_INREG(EXTEND_VECTOR_INREG(X)) -> EXTEND_VECTOR_INREG(X)

It should be possible to make this generic, but we're not great at checking legality of *_EXTEND_VECTOR_INREG ops so I'm conservatively putting this inside X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/masked_load.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 2ae182258c49724e4daaae196de829ea65c116e8 by Dávid Bolvanský
[Diagnostics] Fixed -Wsizeof-array-div false positive when divisor is sizeof reference type (PR47495)
The file was modifiedclang/test/Sema/div-sizeof-array.cpp
The file was modifiedclang/lib/Sema/SemaExpr.cpp