SuccessChanges

Summary

  1. [ASTImporter] Fix inequivalence of ClassTemplateInstantiations Summary: We falsely state inequivalence if the template parameter is a qualified/nonquialified template in the first/second instantiation. Also, different kinds of TemplateName should be equal if the template decl (if available) is equal (even if the name kind is different). Reviewers: a_sidorin, a.sidorin Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64241
  2. [TargetLowering] SimplifyMultipleUseDemandedBits - add VECTOR_SHUFFLE support. If all the demanded elts are from one operand and are inline, then we can use the operand directly. The changes are mainly from SSE41 targets which has blendvpd but not cmpgtq, allowing the v2i64 comparison to be simplified as we only need the signbit from alternate v4i32 elements.
  3. Revert "[Object/ELF.h] - Improve testing of the fields in ELFFile<ELFT>::sections()." This reverts commit r366796 because it was causing ubsan buildbot failures.
  4. [llvm-ar] Fix support for archives with members larger than 4GB llvm-ar outputs a strange error message when handling archives with members larger than 4GB due to not checking file size when passing the value as an unsigned 32 bit integer. This overflow issue caused malformed archives to be created.: https://bugs.llvm.org/show_bug.cgi?id=38058 This change allows for members above 4GB and will error in a case that is over the formats size limit, a 10 digit decimal integer. Differential Revision: https://reviews.llvm.org/D65093
  5. [clangd] Log version, cwd, args, and transport on startup. NFC Reviewers: hokein Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D65146
  6. [ARM][LowOverheadLoops] Fix branch target codegen While lowering test.set.loop.iterations, it wasn't checked how the brcond was using the result and so the wls could branch to the loop preheader instead of not entering it. The same was true for loop.decrement.reg. So brcond and br_cc and now lowered manually when using the hwloop intrinsics. During this we now check whether the result has been negated and whether we're using SETEQ or SETNE and 0 or 1. We can then figure out which basic block the WLS and LE should be targeting. Differential Revision: https://reviews.llvm.org/D64616
  7. Fix MSVC warning about extending a uint32_t shift result to uint64_t. NFCI.
  8. [SLPVectorizer] Revert local change that got accidently got committed in rL366799 This wasn't part of D63281
  9. Revert [RISCV] Re-enable rv32i-aliases-invalid.s test This reverts r366797 (git commit 53f9fec8e8b58f5a904bbfb4a1d648cde65aa860)
Revision 366818 by martong:
[ASTImporter] Fix inequivalence of ClassTemplateInstantiations

Summary:
We falsely state inequivalence if the template parameter is a
qualified/nonquialified template in the first/second instantiation.
Also, different kinds of TemplateName should be equal if the template
decl (if available) is equal (even if the name kind is different).

Reviewers: a_sidorin, a.sidorin

Subscribers: rnkovacs, dkrupp, Szelethus, gamesh411, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64241
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/AST/ASTStructuralEquivalence.cpp (diff)clang.src/lib/AST/ASTStructuralEquivalence.cpp
The file was modified/cfe/trunk/unittests/AST/StructuralEquivalenceTest.cpp (diff)clang.src/unittests/AST/StructuralEquivalenceTest.cpp
Revision 366817 by rksimon:
[TargetLowering] SimplifyMultipleUseDemandedBits - add VECTOR_SHUFFLE support.

If all the demanded elts are from one operand and are inline, then we can use the operand directly.

The changes are mainly from SSE41 targets which has blendvpd but not cmpgtq, allowing the v2i64 comparison to be simplified as we only need the signbit from alternate v4i32 elements.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/SelectionDAG/TargetLowering.cpp (diff)llvm.src/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/midpoint-int-vec-128.ll (diff)llvm.src/test/CodeGen/X86/midpoint-int-vec-128.ll
The file was modified/llvm/trunk/test/CodeGen/X86/psubus.ll (diff)llvm.src/test/CodeGen/X86/psubus.ll
The file was modified/llvm/trunk/test/CodeGen/X86/sat-add.ll (diff)llvm.src/test/CodeGen/X86/sat-add.ll
The file was modified/llvm/trunk/test/CodeGen/X86/uadd_sat_vec.ll (diff)llvm.src/test/CodeGen/X86/uadd_sat_vec.ll
The file was modified/llvm/trunk/test/CodeGen/X86/usub_sat_vec.ll (diff)llvm.src/test/CodeGen/X86/usub_sat_vec.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vec_minmax_sint.ll (diff)llvm.src/test/CodeGen/X86/vec_minmax_sint.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vec_minmax_uint.ll (diff)llvm.src/test/CodeGen/X86/vec_minmax_uint.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-fshl-rot-512.ll (diff)llvm.src/test/CodeGen/X86/vector-fshl-rot-512.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-fshr-rot-512.ll (diff)llvm.src/test/CodeGen/X86/vector-fshr-rot-512.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-smax-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-smax-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-smax.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-smax.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-smin-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-smin-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-smin.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-smin.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-umax-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-umax-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-umax.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-umax.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-umin-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-umin-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-reduce-umin.ll (diff)llvm.src/test/CodeGen/X86/vector-reduce-umin.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-trunc-packus-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-trunc-packus-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-trunc-packus.ll (diff)llvm.src/test/CodeGen/X86/vector-trunc-packus.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-trunc-ssat-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-trunc-ssat-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-trunc-ssat.ll (diff)llvm.src/test/CodeGen/X86/vector-trunc-ssat.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-trunc-usat-widen.ll (diff)llvm.src/test/CodeGen/X86/vector-trunc-usat-widen.ll
The file was modified/llvm/trunk/test/CodeGen/X86/vector-trunc-usat.ll (diff)llvm.src/test/CodeGen/X86/vector-trunc-usat.ll
Revision 366815 by vlad.tsyrklevich:
Revert "[Object/ELF.h] - Improve testing of the fields in ELFFile<ELFT>::sections()."

This reverts commit r366796 because it was causing ubsan buildbot
failures.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Object/ELF.h (diff)llvm.src/include/llvm/Object/ELF.h
The file was modified/llvm/trunk/include/llvm/ObjectYAML/ELFYAML.h (diff)llvm.src/include/llvm/ObjectYAML/ELFYAML.h
The file was modified/llvm/trunk/test/Object/invalid.test (diff)llvm.src/test/Object/invalid.test
The file was modified/llvm/trunk/tools/yaml2obj/yaml2elf.cpp (diff)llvm.src/tools/yaml2obj/yaml2elf.cpp
Revision 366813 by gbreynoo:
[llvm-ar] Fix support for archives with members larger than 4GB

llvm-ar outputs a strange error message when handling archives with
members larger than 4GB due to not checking file size when passing the
value as an unsigned 32 bit integer. This overflow issue caused
malformed archives to be created.:

https://bugs.llvm.org/show_bug.cgi?id=38058

This change allows for members above 4GB and will error in a case that
is over the formats size limit, a 10 digit decimal integer.

Differential Revision: https://reviews.llvm.org/D65093
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Object/Archive.h (diff)llvm.src/include/llvm/Object/Archive.h
The file was modified/llvm/trunk/lib/Object/Archive.cpp (diff)llvm.src/lib/Object/Archive.cpp
The file was modified/llvm/trunk/lib/Object/ArchiveWriter.cpp (diff)llvm.src/lib/Object/ArchiveWriter.cpp
Revision 366811 by sammccall:
[clangd] Log version, cwd, args, and transport on startup. NFC

Reviewers: hokein

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D65146
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clangd/tool/ClangdMain.cpp (diff)clang-tools-extra.src/clangd/tool/ClangdMain.cpp
Revision 366809 by sam_parker:
[ARM][LowOverheadLoops] Fix branch target codegen
   
While lowering test.set.loop.iterations, it wasn't checked how the
brcond was using the result and so the wls could branch to the loop
preheader instead of not entering it. The same was true for
loop.decrement.reg.
   
So brcond and br_cc and now lowered manually when using the hwloop
intrinsics. During this we now check whether the result has been
negated and whether we're using SETEQ or SETNE and 0 or 1. We can
then figure out which basic block the WLS and LE should be targeting.

Differential Revision: https://reviews.llvm.org/D64616
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/ARM/ARMISelDAGToDAG.cpp (diff)llvm.src/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modified/llvm/trunk/lib/Target/ARM/ARMISelLowering.cpp (diff)llvm.src/lib/Target/ARM/ARMISelLowering.cpp
The file was modified/llvm/trunk/lib/Target/ARM/ARMISelLowering.h (diff)llvm.src/lib/Target/ARM/ARMISelLowering.h
The file was modified/llvm/trunk/lib/Target/ARM/ARMInstrInfo.td (diff)llvm.src/lib/Target/ARM/ARMInstrInfo.td
The file was added/llvm/trunk/test/CodeGen/Thumb2/LowOverheadLoops/branch-targets.llllvm.src/test/CodeGen/Thumb2/LowOverheadLoops/branch-targets.ll
Revision 366808 by rksimon:
Fix MSVC warning about extending a uint32_t shift result to uint64_t. NFCI.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUISelLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
Revision 366807 by rksimon:
[SLPVectorizer] Revert local change that got accidently got committed in rL366799

This wasn't part of D63281
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)llvm.src/lib/Transforms/Vectorize/SLPVectorizer.cpp
Revision 366806 by lenary:
Revert [RISCV] Re-enable rv32i-aliases-invalid.s test

This reverts r366797 (git commit 53f9fec8e8b58f5a904bbfb4a1d648cde65aa860)
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/MC/RISCV/rv32i-aliases-invalid.s (diff)llvm.src/test/MC/RISCV/rv32i-aliases-invalid.s