SuccessChanges

Summary

  1. [libc++] Use _EnableIf instead of std::enable_if in deduction guides for map and set
  2. [libc++] Integrate the PSTL into libc++ Summary: This commit allows specifying LIBCXX_ENABLE_PARALLEL_ALGORITHMS when configuring libc++ in CMake. When that option is enabled, libc++ will assume that the PSTL can be found somewhere on the CMake module path, and it will provide the C++17 parallel algorithms based on the PSTL (that is assumed to be available). The commit also adds support for running the PSTL tests as part of the libc++ test suite. Reviewers: rodgert, EricWF Subscribers: mgorny, christof, jkorous, dexonsmith, libcxx-commits, mclow.lists, EricWF Tags: #libc Differential Revision: https://reviews.llvm.org/D60480
  3. Fix asan infinite loop on undefined symbol Fix llvm#39641 Recommit of r366413 Differential Revision: https://reviews.llvm.org/D63877
  4. AMDGPU: Attempt to fix bot error Manually remove file name from check line, since it somehow ends up being different on an msvc bot.
  5. AMDGPU/GlobalISel: Selection for fminnum/fmaxnum v2f16 case doesn't work yet because the VOP3P complex patterns haven't been ported yet.
  6. AMDGPU/GlobalISel: Support arguments with multiple registers Handles structs used directly in argument lists.
  7. AMDGPU/GlobalISel: Rewrite lowerFormalArguments This should now handle everything except structs passed as multiple registers. I think most of the packing logic should be handled by handleAssignments, but I'm unclear on what the contract is for multiple registers. This is copying how x86 handles this. This does change the behavior of the test_sgpr_alignment0 amdgpu_vs test. I don't think shader arguments should try to follow the alignment, and registers need to be repacked. I also don't think it matters, since I think the pointers are packed to the beginning of the argument list anyway.
  8. [libc++] Add missing %link_flags to .sh.cpp test Without the link flags, the test always fails on Linux. For some reason, however, it works on Darwin -- which is why it wasn't caught at first.
  9. AMDGPU: Decompose all values to 32-bit pieces for calling conventions This is the more natural lowering, and presents more opportunities to reduce 64-bit ops to 32-bit. This should also help avoid issues graphics shaders have had with 64-bit values, and simplify argument lowering in globalisel.
  10. [clangd] Provide a way to publish highlightings in non-racy manner Summary: By exposing a callback that can guard code publishing results of 'onMainAST' callback in the same manner we guard diagnostics. Reviewers: sammccall Reviewed By: sammccall Subscribers: javed.absar, MaskRay, jkorous, arphaman, kadircet, hokein, jvikstrom, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64985
  11. gn build: Set +x on symlink_or_copy.py
  12. [clangd] Disable background-index on lit-tests by default Summary: Since background-index can perform disk writes, we don't want to turn it on tests that won't clear it. Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64990
  13. DAG: Handle dbg_value for arguments split into multiple subregs This was handled previously for arguments split due to not fitting in an MVT. This was dropping the register for argument registers split due to TLI::getRegisterTypeForCallingConv.
  14. lld-link: Demangle symbols from archives in diagnostics Also add test coverage for thin archives (which are the only way I could come up with to test at least some of the diagnostic changes). Differential Revision: https://reviews.llvm.org/D64927
  15. [NFC] include cstdint/string prior to using uint8_t/string Summary: include proper header prior to use of uint8_t typedef and std::string. Subscribers: llvm-commits Reviewers: cherry Tags: #llvm Differential Revision: https://reviews.llvm.org/D64937
  16. [AMDGPU][MC] Corrected parsing of branch offsets See bug 40820: https://bugs.llvm.org/show_bug.cgi?id=40820 Reviewers: artem.tamazov, arsenm Differential Revision: https://reviews.llvm.org/D64629
  17. [MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs. Summary: Current PRE hoists common computations into CMBB = DT->findNearestCommonDominator(MBB, MBB1). However, if CMBB is in a hot loop body, we might get performance degradation. Differential Revision: https://reviews.llvm.org/D64394
  18. [X86] for split stack, not save/restore nested arg if unused Summary: For split-stack, if the nested argument (i.e. R10) is not used, no need to save/restore it in the prologue. Reviewers: thanm Reviewed By: thanm Subscribers: mstorsjo, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D64673
  19. [Clangd] Fixed ExtractVariable test
  20. [NFC][InstCombine] Tests for 'rem' formation from sub-of-mul-by-'div' (PR42673) https://rise4fun.com/Alive/8Rp https://bugs.llvm.org/show_bug.cgi?id=42673
  21. [NFC][InstCombine] Redundant masking before left-shift: tests with assume If the legality check is `(shiftNbits-maskNbits) s>= 0`, then we can simplify it to `shiftNbits u>= maskNbits`, which is easier to check for. However, currently switching the `dropRedundantMaskingOfLeftShiftInput()` to `SimplifyICmpInst()` does not catch these cases and regresses currently-handled cases, so i'll leave it as is for now. https://rise4fun.com/Alive/25P
  22. Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFCI.
Revision 366594 by Louis Dionne:
[libc++] Use _EnableIf instead of std::enable_if in deduction guides for map and set
Change TypePath in RepositoryPath in Workspace
The file was modified/libcxx/trunk/include/map (diff)libcxx.src/include/map
The file was modified/libcxx/trunk/include/set (diff)libcxx.src/include/set
Revision 366593 by Louis Dionne:
[libc++] Integrate the PSTL into libc++

Summary:
This commit allows specifying LIBCXX_ENABLE_PARALLEL_ALGORITHMS when
configuring libc++ in CMake. When that option is enabled, libc++ will
assume that the PSTL can be found somewhere on the CMake module path,
and it will provide the C++17 parallel algorithms based on the PSTL
(that is assumed to be available).

The commit also adds support for running the PSTL tests as part of
the libc++ test suite.

Reviewers: rodgert, EricWF

Subscribers: mgorny, christof, jkorous, dexonsmith, libcxx-commits, mclow.lists, EricWF

Tags: #libc

Differential Revision: https://reviews.llvm.org/D60480
Change TypePath in RepositoryPath in Workspace
The file was modified/libcxx/trunk/CMakeLists.txt (diff)libcxx.src/CMakeLists.txt
The file was modified/libcxx/trunk/include/CMakeLists.txt (diff)libcxx.src/include/CMakeLists.txt
The file was modified/libcxx/trunk/include/__config_site.in (diff)libcxx.src/include/__config_site.in
The file was modified/libcxx/trunk/include/algorithm (diff)libcxx.src/include/algorithm
The file was added/libcxx/trunk/include/executionlibcxx.src/include/execution
The file was modified/libcxx/trunk/include/memory (diff)libcxx.src/include/memory
The file was modified/libcxx/trunk/include/module.modulemap (diff)libcxx.src/include/module.modulemap
The file was modified/libcxx/trunk/include/numeric (diff)libcxx.src/include/numeric
The file was modified/libcxx/trunk/src/CMakeLists.txt (diff)libcxx.src/src/CMakeLists.txt
The file was modified/libcxx/trunk/test/CMakeLists.txt (diff)libcxx.src/test/CMakeLists.txt
The file was modified/libcxx/trunk/test/libcxx/double_include.sh.cpp (diff)libcxx.src/test/libcxx/double_include.sh.cpp
The file was modified/libcxx/trunk/test/lit.site.cfg.in (diff)libcxx.src/test/lit.site.cfg.in
The file was added/libcxx/trunk/test/std/pstllibcxx.src/test/std/pstl
The file was modified/libcxx/trunk/utils/libcxx/test/config.py (diff)libcxx.src/utils/libcxx/test/config.py
The file was modified/libcxxabi/trunk/src/CMakeLists.txt (diff)N/A
The file was modified/llvm/trunk/projects/CMakeLists.txt (diff)N/A
The file was added/pstl/trunk/test/std/lit.local.cfgN/A
Revision 366588 by serge_sans_paille:
Fix asan infinite loop on undefined symbol

Fix llvm#39641

Recommit of r366413

Differential Revision: https://reviews.llvm.org/D63877
Change TypePath in RepositoryPath in Workspace
The file was modified/compiler-rt/trunk/lib/interception/interception_linux.cc (diff)compiler-rt.src/lib/interception/interception_linux.cc
The file was added/compiler-rt/trunk/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.ccompiler-rt.src/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.c
Revision 366586 by arsenm:
AMDGPU: Attempt to fix bot error

Manually remove file name from check line, since it somehow ends
up being different on an msvc bot.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/split-arg-dbg-value.ll (diff)llvm.src/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
Revision 366585 by arsenm:
AMDGPU/GlobalISel: Selection for fminnum/fmaxnum

v2f16 case doesn't work yet because the VOP3P complex patterns haven't
been ported yet.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Target/GlobalISel/SelectionDAGCompat.td (diff)llvm.src/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmaxnum-ieee.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmaxnum-ieee.mir
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmaxnum.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmaxnum.mir
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fminnum-ieee.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fminnum-ieee.mir
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-fminnum.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-fminnum.mir
The file was removed/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-maxnum.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-maxnum.mir
The file was removed/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/inst-select-minnum.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/inst-select-minnum.mir
The file was removed/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/regbankselect-maxnum.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/regbankselect-maxnum.mir
The file was removed/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/regbankselect-minnum.mirllvm.src/test/CodeGen/AMDGPU/GlobalISel/regbankselect-minnum.mir
Revision 366584 by arsenm:
AMDGPU/GlobalISel: Support arguments with multiple registers

Handles structs used directly in argument lists.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUCallLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUCallLowering.h (diff)llvm.src/lib/Target/AMDGPU/AMDGPUCallLowering.h
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_ps.ll (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_ps.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
Revision 366582 by arsenm:
AMDGPU/GlobalISel: Rewrite lowerFormalArguments

This should now handle everything except structs passed as multiple
registers.

I think most of the packing logic should be handled by
handleAssignments, but I'm unclear on what the contract is for
multiple registers. This is copying how x86 handles this.

This does change the behavior of the test_sgpr_alignment0 amdgpu_vs
test. I don't think shader arguments should try to follow the
alignment, and registers need to be repacked. I also don't think it
matters, since I think the pointers are packed to the beginning of the
argument list anyway.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUCallLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUCallLowering.h (diff)llvm.src/lib/Target/AMDGPU/AMDGPUCallLowering.h
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIISelLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIISelLowering.h (diff)llvm.src/lib/Target/AMDGPU/SIISelLowering.h
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll
The file was added/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.llllvm.src/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
Revision 366579 by Louis Dionne:
[libc++] Add missing %link_flags to .sh.cpp test

Without the link flags, the test always fails on Linux. For some reason,
however, it works on Darwin -- which is why it wasn't caught at first.
Change TypePath in RepositoryPath in Workspace
The file was modified/libcxx/trunk/test/libcxx/strings/basic.string/PR42676.sh.cpp (diff)libcxx.src/test/libcxx/strings/basic.string/PR42676.sh.cpp
Revision 366578 by arsenm:
AMDGPU: Decompose all values to 32-bit pieces for calling conventions

This is the more natural lowering, and presents more opportunities to
reduce 64-bit ops to 32-bit.

This should also help avoid issues graphics shaders have had with
64-bit values, and simplify argument lowering in globalisel.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUCallingConv.td (diff)llvm.src/lib/Target/AMDGPU/AMDGPUCallingConv.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUISelLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIISelLowering.cpp (diff)llvm.src/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll (diff)llvm.src/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/call-argument-types.ll (diff)llvm.src/test/CodeGen/AMDGPU/call-argument-types.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/debug-value2.ll (diff)llvm.src/test/CodeGen/AMDGPU/debug-value2.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/implicit-def-muse.ll (diff)llvm.src/test/CodeGen/AMDGPU/implicit-def-muse.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/reduce-build-vec-ext-to-ext-build-vec.ll (diff)llvm.src/test/CodeGen/AMDGPU/reduce-build-vec-ext-to-ext-build-vec.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/shift-i128.ll (diff)llvm.src/test/CodeGen/AMDGPU/shift-i128.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/si-scheduler.ll (diff)llvm.src/test/CodeGen/AMDGPU/si-scheduler.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/split-arg-dbg-value.ll (diff)llvm.src/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/vector_shuffle.packed.ll (diff)llvm.src/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/wait.ll (diff)llvm.src/test/CodeGen/AMDGPU/wait.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/wwm-reserved.ll (diff)llvm.src/test/CodeGen/AMDGPU/wwm-reserved.ll
Revision 366577 by ibiryukov:
[clangd] Provide a way to publish highlightings in non-racy manner

Summary:
By exposing a callback that can guard code publishing results of
'onMainAST' callback in the same manner we guard diagnostics.

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: javed.absar, MaskRay, jkorous, arphaman, kadircet, hokein, jvikstrom, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64985
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clangd/ClangdServer.cpp (diff)clang-tools-extra.src/clangd/ClangdServer.cpp
The file was modified/clang-tools-extra/trunk/clangd/TUScheduler.cpp (diff)clang-tools-extra.src/clangd/TUScheduler.cpp
The file was modified/clang-tools-extra/trunk/clangd/TUScheduler.h (diff)clang-tools-extra.src/clangd/TUScheduler.h
The file was modified/clang-tools-extra/trunk/clangd/unittests/TUSchedulerTests.cpp (diff)clang-tools-extra.src/clangd/unittests/TUSchedulerTests.cpp
Revision 366576 by nico:
gn build: Set +x on symlink_or_copy.py
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/utils/gn/build/symlink_or_copy.py (diff)llvm.src/utils/gn/build/symlink_or_copy.py
Revision 366575 by kadircet:
[clangd] Disable background-index on lit-tests by default

Summary:
Since background-index can perform disk writes, we don't want to turn
it on tests that won't clear it.

Reviewers: sammccall

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

Tags: #clang

Differential Revision: https://reviews.llvm.org/D64990
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 366574 by arsenm:
DAG: Handle dbg_value for arguments split into multiple subregs

This was handled previously for arguments split due to not fitting in
an MVT. This was dropping the register for argument registers split
due to TLI::getRegisterTypeForCallingConv.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp (diff)llvm.src/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was added/llvm/trunk/test/CodeGen/AMDGPU/split-arg-dbg-value.llllvm.src/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
Revision 366573 by nico:
lld-link: Demangle symbols from archives in diagnostics

Also add test coverage for thin archives (which are the only way I could
come up with to test at least some of the diagnostic changes).

Differential Revision: https://reviews.llvm.org/D64927
Change TypePath in RepositoryPath in Workspace
The file was modified/lld/trunk/COFF/Driver.cpp (diff)lld.src/COFF/Driver.cpp
The file was modified/lld/trunk/COFF/Driver.h (diff)lld.src/COFF/Driver.h
The file was modified/lld/trunk/COFF/InputFiles.cpp (diff)lld.src/COFF/InputFiles.cpp
The file was modified/lld/trunk/COFF/InputFiles.h (diff)lld.src/COFF/InputFiles.h
The file was modified/lld/trunk/COFF/SymbolTable.cpp (diff)lld.src/COFF/SymbolTable.cpp
The file was modified/lld/trunk/COFF/SymbolTable.h (diff)lld.src/COFF/SymbolTable.h
The file was modified/lld/trunk/COFF/Symbols.cpp (diff)lld.src/COFF/Symbols.cpp
The file was modified/lld/trunk/COFF/Symbols.h (diff)lld.src/COFF/Symbols.h
The file was added/lld/trunk/test/COFF/Inputs/mangled-symbol.slld.src/test/COFF/Inputs/mangled-symbol.s
The file was added/lld/trunk/test/COFF/thin-archive.slld.src/test/COFF/thin-archive.s
Revision 366572 by thanm:
[NFC] include cstdint/string prior to using uint8_t/string

Summary: include proper header prior to use of uint8_t typedef
and std::string.

Subscribers: llvm-commits

Reviewers: cherry

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64937
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Demangle/MicrosoftDemangleNodes.h (diff)llvm.src/include/llvm/Demangle/MicrosoftDemangleNodes.h
Revision 366571 by dpreobra:
[AMDGPU][MC] Corrected parsing of branch offsets

See bug 40820: https://bugs.llvm.org/show_bug.cgi?id=40820

Reviewers: artem.tamazov, arsenm

Differential Revision: https://reviews.llvm.org/D64629
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp (diff)llvm.src/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modified/llvm/trunk/test/MC/AMDGPU/branch-comment.s (diff)llvm.src/test/MC/AMDGPU/branch-comment.s
The file was modified/llvm/trunk/test/MC/AMDGPU/sopk.s (diff)llvm.src/test/MC/AMDGPU/sopk.s
The file was modified/llvm/trunk/test/MC/AMDGPU/sopp-err.s (diff)llvm.src/test/MC/AMDGPU/sopp-err.s
The file was modified/llvm/trunk/test/MC/AMDGPU/sopp.s (diff)llvm.src/test/MC/AMDGPU/sopp.s
Revision 366570 by lkail:
[MachineCSE][MachinePRE] Avoid hoisting code from code regions into hot BBs.

Summary:
Current PRE hoists common computations into
CMBB = DT->findNearestCommonDominator(MBB, MBB1).
However, if CMBB is in a hot loop body, we might get performance
degradation.

Differential Revision: https://reviews.llvm.org/D64394
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/MachineCSE.cpp (diff)llvm.src/lib/CodeGen/MachineCSE.cpp
The file was modified/llvm/trunk/test/CodeGen/AArch64/O3-pipeline.ll (diff)llvm.src/test/CodeGen/AArch64/O3-pipeline.ll
The file was modified/llvm/trunk/test/CodeGen/ARM/O3-pipeline.ll (diff)llvm.src/test/CodeGen/ARM/O3-pipeline.ll
The file was modified/llvm/trunk/test/CodeGen/PowerPC/machine-pre.ll (diff)llvm.src/test/CodeGen/PowerPC/machine-pre.ll
The file was modified/llvm/trunk/test/CodeGen/X86/O3-pipeline.ll (diff)llvm.src/test/CodeGen/X86/O3-pipeline.ll
Revision 366569 by thanm:
[X86] for split stack, not save/restore nested arg if unused

Summary:
For split-stack, if the nested argument (i.e. R10) is not used, no need to save/restore it in the prologue.

Reviewers: thanm

Reviewed By: thanm

Subscribers: mstorsjo, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D64673
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86FrameLowering.cpp (diff)llvm.src/lib/Target/X86/X86FrameLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/segmented-stacks.ll (diff)llvm.src/test/CodeGen/X86/segmented-stacks.ll
Revision 366568 by sureyeaah:
[Clangd] Fixed ExtractVariable test
Change TypePath in RepositoryPath in Workspace
The file was modified/clang-tools-extra/trunk/clangd/unittests/TweakTests.cpp (diff)clang-tools-extra.src/clangd/unittests/TweakTests.cpp
Revision 366565 by lebedevri:
[NFC][InstCombine] Tests for 'rem' formation from sub-of-mul-by-'div' (PR42673)

https://rise4fun.com/Alive/8Rp
https://bugs.llvm.org/show_bug.cgi?id=42673
Change TypePath in RepositoryPath in Workspace
The file was added/llvm/trunk/test/Transforms/InstCombine/srem-via-sdiv-mul-sub.llllvm.src/test/Transforms/InstCombine/srem-via-sdiv-mul-sub.ll
The file was added/llvm/trunk/test/Transforms/InstCombine/urem-via-udiv-mul-sub.llllvm.src/test/Transforms/InstCombine/urem-via-udiv-mul-sub.ll
Revision 366564 by lebedevri:
[NFC][InstCombine] Redundant masking before left-shift: tests with assume

If the legality check is `(shiftNbits-maskNbits) s>= 0`,
then we can simplify it to `shiftNbits u>= maskNbits`,
which is easier to check for.

However, currently switching the `dropRedundantMaskingOfLeftShiftInput()`
to `SimplifyICmpInst()` does not catch these cases and regresses
currently-handled cases, so i'll leave it as is for now.

https://rise4fun.com/Alive/25P
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-c.ll (diff)llvm.src/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-c.ll
The file was modified/llvm/trunk/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-d.ll (diff)llvm.src/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-d.ll
The file was modified/llvm/trunk/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-e.ll (diff)llvm.src/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-e.ll
The file was modified/llvm/trunk/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-f.ll (diff)llvm.src/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-f.ll
Revision 366563 by rksimon:
Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFCI.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/tools/llvm-lipo/llvm-lipo.cpp (diff)llvm.src/tools/llvm-lipo/llvm-lipo.cpp