scheduler: replace split_parallel by split_scaled option
authorSven Verdoolaege <skimo@kotnet.org>
Sun, 29 Jan 2012 13:42:16 +0000 (14:42 +0100)
committerSven Verdoolaege <skimo@kotnet.org>
Mon, 30 Jan 2012 15:20:17 +0000 (16:20 +0100)
commit3c66541593a6bf3b5a3d35d31567abe6c9e5a04b
treea9635c03a31e0bd547c135c668e9dc374a0f8f36
parent64736c6f748bace12e7f6f152eb7b1fa09b83703
scheduler: replace split_parallel by split_scaled option

The split_parallel option was ill-conceived.
The condition split_parallel looked for was too specific
and the implementation was wrong.  Part of this has been fixed
in 1b2fdb6 (schedule.c: split_parallel: avoid invalid memory accesses,
Mon Jan 30 15:23:18 2012 +0100), but the code could in principle
still produce an incorrect schedule because it didn't check the sizes
of the constant terms.

The new option essentially applies strip-mining and should therefore
be safe.  In particular, it is applied when the linear parts of the
schedules have a non-trivial common divisor.  The strip-mining is
then performed with respect to this common divisor.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
doc/user.pod
include/isl/schedule.h
isl_options.c
isl_options_private.h
isl_schedule.c