SuccessChanges

Summary

  1. [NFC] Added triple to test file to avoid arm buildbots failures
  2. Fix test failures after r371640 r371640 evidently fixed bug 39481
  3. [ConstantHoisting] Fix non-determinism. Differential Revision: https://reviews.llvm.org/D66114
  4. [IRMover] Don't map globals if their types are the same Summary: During IR Linking, if the types of two globals in destination and source modules are the same, it can only be because the global in the destination module is originally from the source module and got added to the destination module from a shared metadata. We shouldn't map this type to itself in case the type's components get remapped to a new type from the destination (for instance, during the loop over SrcM->getIdentifiedStructTypes() further below in IRLinker::computeTypeMapping()). Fixes PR40312. Reviewers: tejohnson, pcc, srhines Subscribers: mehdi_amini, hiraditya, steven_wu, dexonsmith, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D66814
  5. [MS] Consder constexpr globals to be inline, as in C++17 Summary: Microsoft seems to do this regardless of the language mode, so we must also do it in order to be ABI compatible. Fixes PR36125 Reviewers: thakis Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D47956
  6. LiveIntervals: Split live intervals on multiple dead defs If there are multiple dead defs of the same virtual register, these are required to be split into multiple virtual registers with separate live intervals to avoid a verifier error.
  7. Consolidate swap, swap_ranges, and iter_swap in <type_traits>. NFC. Thanks to @Quuxplusone (Arthur O'Dwyer) for this change.
Revision 371646 by xbolva00:
[NFC] Added triple to test file to avoid arm buildbots failures
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/Sema/div-sizeof-array.cpp (diff)clang.src/test/Sema/div-sizeof-array.cpp
Revision 371645 by arsenm:
Fix test failures after r371640

r371640 evidently fixed bug 39481
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/DebugInfo/WebAssembly/dbg-value-move-reg-stackify.mir (diff)llvm.src/test/DebugInfo/WebAssembly/dbg-value-move-reg-stackify.mir
The file was modified/llvm/trunk/test/DebugInfo/X86/live-debug-vars-discard-invalid.mir (diff)llvm.src/test/DebugInfo/X86/live-debug-vars-discard-invalid.mir
Revision 371644 by efriedma:
[ConstantHoisting] Fix non-determinism.

Differential Revision: https://reviews.llvm.org/D66114
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Transforms/Scalar/ConstantHoisting.h (diff)llvm.src/include/llvm/Transforms/Scalar/ConstantHoisting.h
The file was modified/llvm/trunk/lib/Transforms/Scalar/ConstantHoisting.cpp (diff)llvm.src/lib/Transforms/Scalar/ConstantHoisting.cpp
Revision 371643 by pirama:
[IRMover] Don't map globals if their types are the same

Summary:
During IR Linking, if the types of two globals in destination and source
modules are the same, it can only be because the global in the
destination module is originally from the source module and got added to
the destination module from a shared metadata.

We shouldn't map this type to itself in case the type's components get
remapped to a new type from the destination (for instance, during the
loop over SrcM->getIdentifiedStructTypes() further below in
IRLinker::computeTypeMapping()).

Fixes PR40312.

Reviewers: tejohnson, pcc, srhines

Subscribers: mehdi_amini, hiraditya, steven_wu, dexonsmith, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D66814
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Linker/IRMover.cpp (diff)llvm.src/lib/Linker/IRMover.cpp
The file was added/llvm/trunk/test/LTO/X86/Inputs/type-mapping-bug3.llllvm.src/test/LTO/X86/Inputs/type-mapping-bug3.ll
The file was added/llvm/trunk/test/LTO/X86/type-mapping-bug3.llllvm.src/test/LTO/X86/type-mapping-bug3.ll
Revision 371642 by rnk:
[MS] Consder constexpr globals to be inline, as in C++17

Summary:
Microsoft seems to do this regardless of the language mode, so we must
also do it in order to be ABI compatible.

Fixes PR36125

Reviewers: thakis

Subscribers: cfe-commits

Differential Revision: https://reviews.llvm.org/D47956
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Sema/SemaDecl.cpp (diff)clang.src/lib/Sema/SemaDecl.cpp
The file was modified/cfe/trunk/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp (diff)clang.src/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp
The file was modified/cfe/trunk/test/CXX/drs/dr7xx.cpp (diff)clang.src/test/CXX/drs/dr7xx.cpp
The file was added/cfe/trunk/test/CodeGenCXX/ms-constexpr-static-data-member.cppclang.src/test/CodeGenCXX/ms-constexpr-static-data-member.cpp
The file was modified/cfe/trunk/test/CodeGenCXX/ms-integer-static-data-members-exported.cpp (diff)clang.src/test/CodeGenCXX/ms-integer-static-data-members-exported.cpp
The file was modified/cfe/trunk/test/CodeGenCXX/ms-integer-static-data-members.cpp (diff)clang.src/test/CodeGenCXX/ms-integer-static-data-members.cpp
The file was modified/cfe/trunk/test/SemaCXX/cxx1y-variable-templates_in_class.cpp (diff)clang.src/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
The file was modified/cfe/trunk/test/SemaCXX/dllexport.cpp (diff)clang.src/test/SemaCXX/dllexport.cpp
The file was modified/cfe/trunk/test/SemaCXX/dllimport.cpp (diff)clang.src/test/SemaCXX/dllimport.cpp
Revision 371640 by arsenm:
LiveIntervals: Split live intervals on multiple dead defs

If there are multiple dead defs of the same virtual register, these
are required to be split into multiple virtual registers with separate
live intervals to avoid a verifier error.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/LiveIntervals.cpp (diff)llvm.src/lib/CodeGen/LiveIntervals.cpp
The file was added/llvm/trunk/test/CodeGen/AMDGPU/live-intervals-multiple-dead-defs.mirllvm.src/test/CodeGen/AMDGPU/live-intervals-multiple-dead-defs.mir
Revision 371639 by zoecarver:
Consolidate swap, swap_ranges, and iter_swap in <type_traits>.

NFC. Thanks to @Quuxplusone (Arthur O'Dwyer) for this change.
Change TypePath in RepositoryPath in Workspace
The file was modified/libcxx/trunk/include/type_traits (diff)libcxx.src/include/type_traits
The file was modified/libcxx/trunk/include/utility (diff)libcxx.src/include/utility