FailedChanges

Summary

  1. [ScopDetection] Check for already known required-invariant loads [NFC] For certain test cases we spent over 50% of the scop detection time in checking if a load is likely invariant. We can avoid most of these checks by testing early on if a load is expected to be invariant. Doing this reduces scop-detection time on a large benchmark from 52 seconds to just 25 seconds. No functional change is expected.
  2. MainLoop: Add unit tests Summary: This adds a couple of unit tests to the MainLoop class. To get the kqueue based version of the signal handling passing, I needed to modify the implementation a bit to make the queue object persistent. Otherwise, only the signals which are send during the Run call would get processed, which did not match the ppoll behaviour. I also took the opportunity to remove the ForEach template functions and replace them with something more reasonable. Reviewers: beanz, eugene Subscribers: lldb-commits, mgorny Differential Revision: https://reviews.llvm.org/D32753
  3. Adjust test case to not trigger the SCEV optimization committed in r302096 This makes sure we still test the case that a PHI-NODE cannot be analyzed by scalar evolution and consequently must be code generated explicitly. As Michael's optimization triggers only on a very specific "add %iv, %step" pattern, just changing 'add' to 'mul' adds back test coverage.
Revision 302134 by grosser:
[ScopDetection] Check for already known required-invariant loads [NFC]

For certain test cases we spent over 50% of the scop detection time in
checking if a load is likely invariant. We can avoid most of these checks by
testing early on if a load is expected to be invariant. Doing this reduces
scop-detection time on a large benchmark from 52 seconds to just 25 seconds.

No functional change is expected.
Change TypePath in RepositoryPath in Workspace
The file was modified/polly/trunk/lib/Analysis/ScopDetection.cpp (diff)llvm-revision.src/polly/trunk/lib/Analysis/ScopDetection.cpp
Revision 302133 by labath:
MainLoop: Add unit tests

Summary:
This adds a couple of unit tests to the MainLoop class. To get the
kqueue based version of the signal handling passing, I needed to
modify the implementation a bit to make the queue object persistent.
Otherwise, only the signals which are send during the Run call would get
processed, which did not match the ppoll behaviour.

I also took the opportunity to remove the ForEach template functions and
replace them with something more reasonable.

Reviewers: beanz, eugene

Subscribers: lldb-commits, mgorny

Differential Revision: https://reviews.llvm.org/D32753
Change TypePath in RepositoryPath in Workspace
The file was modified/lldb/trunk/include/lldb/Host/MainLoop.h (diff)llvm-revision.src/lldb/trunk/include/lldb/Host/MainLoop.h
The file was modified/lldb/trunk/source/Host/common/MainLoop.cpp (diff)llvm-revision.src/lldb/trunk/source/Host/common/MainLoop.cpp
The file was modified/lldb/trunk/unittests/Host/CMakeLists.txt (diff)llvm-revision.src/lldb/trunk/unittests/Host/CMakeLists.txt
The file was added/lldb/trunk/unittests/Host/MainLoopTest.cppllvm-revision.src/lldb/trunk/unittests/Host/MainLoopTest.cpp
Revision 302132 by grosser:
Adjust test case to not trigger the SCEV optimization committed in r302096

This makes sure we still test the case that a PHI-NODE cannot be analyzed by
scalar evolution and consequently must be code generated explicitly.  As
Michael's optimization triggers only on a very specific "add %iv, %step"
pattern, just changing 'add' to 'mul' adds back test coverage.
Change TypePath in RepositoryPath in Workspace
The file was modified/polly/trunk/test/Isl/CodeGen/scop_expander_insert_point.ll (diff)llvm-revision.src/polly/trunk/test/Isl/CodeGen/scop_expander_insert_point.ll