diff --git a/loopy/kernel.py b/loopy/kernel.py index 8d81d2aa0e755c97bebd1e43a78a54106b66664a..8ac9c12045e29c3969ab0f5133db5aafb2798765 100644 --- a/loopy/kernel.py +++ b/loopy/kernel.py @@ -1038,8 +1038,10 @@ class LoopKernel(Record): """ assert isinstance(domains, tuple) # for caching + if not domains: + return isl.BasicSet.universe(self.domains[0].get_space()) + result = None - assert domains for dom_index in domains: dom = self.domains[dom_index] if result is None: diff --git a/test/test_loopy.py b/test/test_loopy.py index 7ade22467009271eb2747c55db4b388f3ccb3cf7..1de7eeb0323773dbd0e7d7e9c2acd96c68a0cf0c 100644 --- a/test/test_loopy.py +++ b/test/test_loopy.py @@ -224,8 +224,8 @@ def make_random_expression(var_values, size): return make_random_expression(var_values, size) / make_random_expression(var_values, size) -def generate_random_fuzz_examples(): - for i in xrange(20): +def generate_random_fuzz_examples(count): + for i in xrange(count): size = [0] var_values = {} expr = make_random_expression(var_values, size) @@ -235,8 +235,8 @@ def test_fuzz_code_generator(ctx_factory): ctx = ctx_factory() queue = cl.CommandQueue(ctx) - from expr_fuzz import get_fuzz_examples - for expr, var_values in generate_random_fuzz_examples(): + #from expr_fuzz import get_fuzz_examples + for expr, var_values in generate_random_fuzz_examples(20): #for expr, var_values in get_fuzz_examples(): from pymbolic import evaluate true_value = evaluate(expr, var_values) @@ -255,7 +255,7 @@ def test_fuzz_code_generator(ctx_factory): for name, val in var_values.iteritems() ]) ck = lp.CompiledKernel(ctx, knl) - evt, (lp_value,) = ck(queue, **var_values) + evt, (lp_value,) = ck(queue, out_host=True, **var_values) err = abs(true_value-lp_value)/abs(true_value) if abs(err) > 1e-10: print "---------------------------------------------------------------------"