[PATCH] D42136: [Polly][StmtBuilder] Revise statement naming when there are multiple statements per BB.
Michael Kruse via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 16 14:52:18 PST 2018
Meinersbur created this revision.
Meinersbur added reviewers: grosser, eli.friedman.
Meinersbur added a project: Polly.
Herald added a reviewer: bollu.
The goal is to have -polly-stmt-granularity=bb and -polly-stmt-granularity=scalar-indep to have the same names if there is just one statement per basic block.
This fixes a fluke when Polybench's jacobi-2d is optimized differently depending on the -polly-stmt-granularity option, although both options create the same SCoP, just with different statement names.
The new naming scheme is:
With -polly-use-llvm-names=0:
Stmt<BBIdx as decimal><Idx within BB as letter>
With -polly-use-llvm-names=1:
Stmt_for_BBName_<Idx within BB as letter>
The <Idx within BB> part is omitted for the main statement of a BB. The main statement is either the one containing the first store or call (those cannot be removed by the simplifyer), or if there is no such instruction, the first. If after simplification there is just a single statement left, it should be the main statement and have the same names as with -polly-stmt-granularity=bb.
Repository:
rPLO Polly
https://reviews.llvm.org/D42136
Files:
lib/Analysis/ScopBuilder.cpp
test/ScopInfo/granularity_same_name.ll
test/ScopInfo/granularity_scalar-indep.ll
test/ScopInfo/granularity_scalar-indep_epilogue.ll
test/ScopInfo/stmt_split_exit_of_region_stmt.ll
test/ScopInfo/stmt_split_no_dependence.ll
test/ScopInfo/stmt_split_on_store.ll
test/ScopInfo/stmt_split_on_synthesizable.ll
test/ScopInfo/stmt_split_phi_in_beginning_bb.ll
test/ScopInfo/stmt_split_phi_in_stmt.ll
test/ScopInfo/stmt_split_scalar_dependence.ll
test/ScopInfo/stmt_split_within_loop.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42136.130035.patch
Type: text/x-patch
Size: 18394 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180116/3bd57491/attachment-0001.bin>
More information about the llvm-commits
mailing list