hanchenye-llvm-project/polly/test
Michael Kruse bc88a78cb4 [Simplify] Rewrite redundant write detection algorithm.
The previous algorithm was to search a writes and the sours of its value
operand, and see whether the write just stores the same read value back,
which includes a search whether there is another write access between
them. This is O(n^2) in the max number of accesses in a statement
(+ the complexity of isl comparing the access functions).

The new algorithm is more similar to the one used for searching for
overwrites and coalescable writes. It scans over all accesses in order
of execution while tracking which array elements still have the same
value since it was read. This is O(n), not counting the complexity
within isl. It should be more reliable than trying to catch all
non-conforming cases in the previous approach. It is also less code.

We now also support if the write is a partial write of the read's
domain, and to some extent non-affine subregions.

Differential Revision: https://reviews.llvm.org/D36137

llvm-svn: 309734
2017-08-01 20:01:34 +00:00
..
CodeGen [Polly] Fix code generation of llvm.expect intrinsic 2017-05-14 09:09:54 +00:00
DeLICM [test] Fix typo in filename. NFC. 2017-07-28 16:57:56 +00:00
DeadCodeElimination [Polly] Remove unwanted --check-prefix=CHECK from unit tests. NFC. 2016-04-15 06:12:29 +00:00
DependenceInfo Bump isl to isl-0.18-768-g033b61ae 2017-07-04 15:54:11 +00:00
FlattenSchedule Add -polly-flatten-schedule pass. 2016-09-08 15:02:36 +00:00
ForwardOpTree [ForwardOpTree] Support synthesizable values. 2017-07-31 19:46:21 +00:00
GPGPU [NFC] Add 'REQUIRES: pollyacc' on 'test/GPGPU/invariant-load-hoisting-of-array.ll' 2017-08-01 14:52:18 +00:00
Isl Remove offset parameter from llvm.dbg.value intrinsics in testcase 2017-07-28 21:08:53 +00:00
JSONExporter [tests] Set -polly-import-jscop-dir=%S always 2017-07-11 10:39:01 +00:00
PruneUnprofitable [PruneUnprofitable] Add -polly-prune-unprofitable pass. 2017-03-17 13:09:52 +00:00
ScheduleOptimizer [FIX] Update test/ScheduleOptimizer/pattern-matching-based-opts_11.ll. 2017-07-19 18:01:51 +00:00
ScopDetect [ScopDetect] add `-polly-ignore-func` flag to ignore functions by name. 2017-07-28 11:47:24 +00:00
ScopDetectionDiagnostics [Polly] [OptDiag] Updating Polly Diagnostics Remarks 2017-07-17 23:58:33 +00:00
ScopInfo [SCEVValidator] Loop exit values of loops before the SCoP are synthesizable. 2017-07-26 13:05:45 +00:00
Simplify [Simplify] Rewrite redundant write detection algorithm. 2017-08-01 20:01:34 +00:00
Unit [Polly][CMake] Skip unit-tests in lit if gtest is not available 2017-07-11 11:37:35 +00:00
UnitIsl [CMake] Fix polly-isl-test execution in out-of-LLVM-tree builds. 2017-04-22 23:02:53 +00:00
CMakeLists.txt [CMake] Fix r307650: Readd missing dependency. 2017-07-19 19:20:58 +00:00
README
create_ll.sh Make create_ll work with latest LLVM [NFC] 2017-07-07 04:20:55 +00:00
lit.cfg [Polly] [Tests] Update `lit.cfg` uses of `lit.util.capture` to `subprocess.check_output` 2017-07-12 09:42:05 +00:00
lit.site.cfg.in [GPGPU] Add support for NVIDIA libdevice 2017-07-31 14:03:16 +00:00
polly.ll
update_check.py Add -polly-flatten-schedule pass. 2016-09-08 15:02:36 +00:00

README

place tests here