diff --git a/loopy/check.py b/loopy/check.py index 477a6336f995c977cfcf5fb52e6d972d95a74468..266aa72013a2cfbd0e50f880924f1d0bdcb15bc6 100644 --- a/loopy/check.py +++ b/loopy/check.py @@ -483,13 +483,18 @@ def check_implemented_domains(kernel, implemented_domains, code=None): for i in range(insn_domain.dim(dim_type.param))) lines = [] - for kind, diff_set in [ - ("implemented, but not desired", i_minus_d), - ("desired, but not implemented", d_minus_i)]: + for kind, diff_set, gist_domain in [ + ("implemented, but not desired", i_minus_d, + desired_domain.gist(insn_impl_domain)), + ("desired, but not implemented", d_minus_i, + insn_impl_domain.gist(desired_domain))]: + + if diff_set.is_empty(): + continue + diff_set = diff_set.coalesce() pt = diff_set.sample_point() - if pt.is_void(): - continue + assert not pt.is_void() #pt_set = isl.Set.from_point(pt) #lines.append("point implemented: %s" % (pt_set <= insn_impl_domain)) @@ -503,7 +508,9 @@ def check_implemented_domains(kernel, implemented_domains, code=None): iname, pt.get_coordinate_val(tp, dim).to_python())) lines.append( - "sample point %s: %s" % (kind, ", ".join(point_axes))) + "sample point in %s: %s" % (kind, ", ".join(point_axes))) + lines.append( + "gist of %s: %s" % (kind, gist_domain)) if code is not None: print(79*"-")