From 9620c61784ca0c78c591049b896f82b5329d9283 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Tue, 22 Sep 2015 19:28:13 -0500 Subject: [PATCH] Fix computation of check domains in the presence of boosting --- loopy/check.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/loopy/check.py b/loopy/check.py index 01a6e52c2..354c6bf35 100644 --- a/loopy/check.py +++ b/loopy/check.py @@ -1,7 +1,4 @@ -from __future__ import division -from __future__ import absolute_import -import six -from six.moves import range +from __future__ import absolute_import, division, print_function __copyright__ = "Copyright (C) 2012 Andreas Kloeckner" @@ -25,6 +22,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ +import six +from six.moves import range from islpy import dim_type import islpy as isl @@ -484,10 +483,14 @@ def check_implemented_domains(kernel, implemented_domains, code=None): .project_out_except(insn_inames, [dim_type.set])) insn_domain = kernel.get_inames_domain(insn_inames) + insn_parameters = frozenset(insn_domain.get_var_names(dim_type.param)) assumptions, insn_domain = align_two(assumption_non_param, insn_domain) desired_domain = ((insn_domain & assumptions) - .project_out_except(insn_inames, [dim_type.set])) + .project_out_except(insn_inames, [dim_type.set]) + .project_out_except(insn_parameters, [dim_type.param])) + insn_impl_domain = (insn_impl_domain + .project_out_except(insn_parameters, [dim_type.param])) insn_impl_domain, desired_domain = align_two( insn_impl_domain, desired_domain) -- GitLab