SuccessChanges

Summary

  1. [X86][AVX512] Improve support and testing for CTLZ of 512-bit vectors without CDI
  2. Empty CMAKE_C_FLAGS_{build_type} when setting flags manually. This is for lnt runtest test-suite. When requesting specific compiler flags, users probably don't want whatever the cmake defaults are for a particular build type to be injected too into the build command line. For example, 'lnt runtest test-suite --cppflags="-O0 -g"', would still build the test-suite at -O3, since the test-suite sets CMAKE_BUILD_TYPE to RELEASE by default, which appends flags "-O3 -DNDEBUG" after "-O0 -g" on the command line (at least on my linux setup). To make sure that doesn't happen, clear the default build flags for all cmake build types, when the user requested specific build flags.
  3. Fix handling of signWrappedSets in access relations Since r294891, in MemoryAccess::computeBoundsOnAccessRelation(), we skip manually bounding the access relation in case the parameter of the load instruction is already a wrapped set. Later on we assume that the lower bound on the set is always smaller or equal to the upper bound on the set. Bug 32715 manages to construct a sign wrapped set, in which case the assertion does not necessarily hold. Fix this by handling a sign wrapped set similar to a normal wrapped set, that is skipping the computation. Contributed-by: Maximilian Falkenstein <falkensm@student.ethz.ch> Reviewers: grosser Subscribers: pollydev, llvm-commits Tags: #Polly Differential Revision: https://reviews.llvm.org/D32893
  4. [X86] Remove duplicate operation actions. NFCI.
  5. [X86][AVX512CDI] Move v2i64/v4i64 and v4i32/v8i32 VPLZCNT lowering to tablegen Extend NoVLX targets to use the 512-bit versions
  6. Remove stale live-ins in the branch folder Hoisting common code can cause registers that live-in in the successor blocks to no longer be live-in. The live-in information needs to be updated to reflect this, or otherwise incorrect code can be generated later on. Differential Revision: https://reviews.llvm.org/D32661
Revision 302233 by rksimon:
[X86][AVX512] Improve support and testing for CTLZ of 512-bit vectors without CDI
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff)llvm-revision.src/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/vector-lzcnt-512.ll (diff)llvm-revision.src/llvm/trunk/test/CodeGen/X86/vector-lzcnt-512.ll
Revision 302232 by kbeyls:
Empty CMAKE_C_FLAGS_{build_type} when setting flags manually.

This is for lnt runtest test-suite.
When requesting specific compiler flags, users probably don't want
whatever the cmake defaults are for a particular build type to be
injected too into the build command line.
For example, 'lnt runtest test-suite --cppflags="-O0 -g"', would still
build the test-suite at -O3, since the test-suite sets CMAKE_BUILD_TYPE to
RELEASE by default, which appends flags "-O3 -DNDEBUG" after "-O0 -g" on the
command line (at least on my linux setup).
To make sure that doesn't happen, clear the default build flags for
all cmake build types, when the user requested specific build flags.
Change TypePath in RepositoryPath in Workspace
The file was modified/lnt/trunk/lnt/tests/test_suite.py (diff)llvm-revision.src/lnt/trunk/lnt/tests/test_suite.py
The file was modified/lnt/trunk/tests/runtest/test_suite.py (diff)llvm-revision.src/lnt/trunk/tests/runtest/test_suite.py
Revision 302231 by grosser:
Fix handling of signWrappedSets in access relations

Since r294891, in MemoryAccess::computeBoundsOnAccessRelation(), we skip
manually bounding the access relation in case the parameter of the load
instruction is already a wrapped set. Later on we assume that the lower
bound on the set is always smaller or equal to the upper bound on the
set. Bug 32715 manages to construct a sign wrapped set, in which case
the assertion does not necessarily hold. Fix this by handling a sign
wrapped set similar to a normal wrapped set, that is skipping the
computation.

Contributed-by: Maximilian Falkenstein <falkensm@student.ethz.ch>

Reviewers: grosser

Subscribers: pollydev, llvm-commits

Tags: #Polly

Differential Revision: https://reviews.llvm.org/D32893
Change TypePath in RepositoryPath in Workspace
The file was modified/polly/trunk/lib/Analysis/ScopInfo.cpp (diff)llvm-revision.src/polly/trunk/lib/Analysis/ScopInfo.cpp
The file was added/polly/trunk/test/ScopInfo/sign_wrapped_set.llllvm-revision.src/polly/trunk/test/ScopInfo/sign_wrapped_set.ll
Revision 302230 by rksimon:
[X86] Remove duplicate operation actions. NFCI.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff)llvm-revision.src/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
Revision 302229 by rksimon:
[X86][AVX512CDI] Move v2i64/v4i64 and v4i32/v8i32 VPLZCNT lowering to tablegen

Extend NoVLX targets to use the 512-bit versions
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff)llvm-revision.src/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
The file was modified/llvm/trunk/lib/Target/X86/X86InstrAVX512.td (diff)llvm-revision.src/llvm/trunk/lib/Target/X86/X86InstrAVX512.td
Revision 302228 by kparzysz:
Remove stale live-ins in the branch folder

Hoisting common code can cause registers that live-in in the successor
blocks to no longer be live-in. The live-in information needs to be
updated to reflect this, or otherwise incorrect code can be generated
later on.

Differential Revision: https://reviews.llvm.org/D32661
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/CodeGen/BranchFolding.cpp (diff)llvm-revision.src/llvm/trunk/lib/CodeGen/BranchFolding.cpp
The file was added/llvm/trunk/test/CodeGen/Hexagon/branch-folder-hoist-kills.mirllvm-revision.src/llvm/trunk/test/CodeGen/Hexagon/branch-folder-hoist-kills.mir