llvm-project/polly/test
Michael Kruse d72637f5cc [ScopBuilder] Fix bug 38358 by preserving correct order of ScopStmts.
ScopBuilder::buildEqivClassBlockStmts creates ScopStmts for instruction
groups in basic block and inserts these ScopStmts into Scop::StmtMap,
however, as described in llvm.org/PR38358, comment #5, StmtScops are
inserted into vector ScopStmt[BB] in wrong order.  As a result,
ScopBuilder::buildSchedule creates wrong order sequence node.

Looking closer to code, it's clear there is no equivalent classes with
interleaving isOrderedInstruction(memory access) instructions after
joinOrderedInstructions.  Afterwards, ScopStmts need to be created and
inserted in the original order of memory access instructions, however,
at the moment ScopStmts are inserted in the order of leader instructions
which are probably not memory access instructions.

The fix is simple with a standalone loop scanning
isOrderedInstruction(memory access) instructions in basic block and
inserting elements into LeaderToInstList one by one.  The patch also
removes double reversing operations which are now unnecessary.

New test preserve-equiv-class-order-in-basic_block.ll is also added.

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

llvm-svn: 375192
2019-10-17 23:55:35 +00:00
..
CodeGen Move code generation test case to test/CodeGen/ 2018-03-19 15:05:30 +00:00
DeLICM Revert "Update polly test for SCEV change." 2019-09-30 07:47:08 +00:00
DeadCodeElimination
DependenceInfo Remove irrelevant references to legacy git repositories from 2019-01-15 16:18:52 +00:00
FlattenSchedule
ForwardOpTree [ScopBuilder] Make -polly-stmt-granularity=scalar-indep the default. 2018-02-03 06:59:47 +00:00
GPGPU [Polly-ACC] Fix test after IR-printer change. 2019-08-13 22:42:08 +00:00
Isl [CodeGen] Handle outlining of CopyStmts. 2019-09-17 22:59:43 +00:00
JSONExporter [ScopBuilder] Make -polly-stmt-granularity=scalar-indep the default. 2018-02-03 06:59:47 +00:00
MaximalStaticExpansion [ScopBuilder] Make -polly-stmt-granularity=scalar-indep the default. 2018-02-03 06:59:47 +00:00
PruneUnprofitable [ScopBuilder] Make -polly-stmt-granularity=scalar-indep the default. 2018-02-03 06:59:47 +00:00
RewriteByReferenceParameters Add rewrite by-reference parameter pass 2017-08-17 05:25:08 +00:00
ScheduleOptimizer [ScheduleOptimizer] Hoist extension nodes after schedule optimization. 2019-05-31 19:26:57 +00:00
ScopDetect [ScopHelper] Provide support for recognising collective invariant loads 2018-06-29 07:29:45 +00:00
ScopDetectionDiagnostics Remove irrelevant references to legacy git repositories from 2019-01-15 16:18:52 +00:00
ScopInfo [ScopBuilder] Fix bug 38358 by preserving correct order of ScopStmts. 2019-10-17 23:55:35 +00:00
ScopInliner [ScopInliner] Add a simple Scop-based inliner to polly. 2017-08-17 21:57:23 +00:00
Simplify [test] Remove non-JSPON comments in JSCOP file. NFC. 2018-07-28 01:11:45 +00:00
Support [NewPM] Update pass registration for the LLVM plugin interface 2018-04-17 07:59:46 +00:00
Unit Assume the shared library path variable is LD_LIBRARY_PATH on systems 2018-01-20 14:35:05 +00:00
UnitIsl
CMakeLists.txt [Polly][CMake] Fix lit setup for building the in the mono repo 2018-03-05 14:43:04 +00:00
README
create_ll.sh Pass compiler arguments in the create_ll.sh script 2018-05-02 15:27:32 +00:00
lit.cfg Resubmit "[lit] Force site configs to run before source-tree configs" 2017-09-15 22:10:46 +00:00
lit.site.cfg.in [NewPM] Update pass registration for the LLVM plugin interface 2018-04-17 07:59:46 +00:00
polly.ll
update_check.py

README

place tests here