From fc14cb71fea3a0a07e989db376dceb53f24111f8 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Fri, 16 Sep 2016 10:31:14 -0500 Subject: [PATCH] Restore library_for_test (oops) (!2) --- test/library_for_test.py | 22 ++++++++++++++++++++++ test/test_loopy.py | 27 +++------------------------ 2 files changed, 25 insertions(+), 24 deletions(-) create mode 100644 test/library_for_test.py diff --git a/test/library_for_test.py b/test/library_for_test.py new file mode 100644 index 000000000..b2de0d402 --- /dev/null +++ b/test/library_for_test.py @@ -0,0 +1,22 @@ +# This exists because function handles can't be pickled. + +def no_ret_f_mangler(kernel, name, arg_dtypes): + if not isinstance(name, str): + return None + + if (name == "f" and len(arg_dtypes) == 0): + from loopy.kernel.data import CallMangleInfo + return CallMangleInfo( + target_name="f", + result_dtypes=arg_dtypes, + arg_dtypes=arg_dtypes) + + +def no_ret_f_preamble_gen(preamble_info): + yield ("10_define_f", + r""" + void f() + { + printf("Hi!\n"); + } + """) diff --git a/test/test_loopy.py b/test/test_loopy.py index dfc50fca0..cd6305e57 100644 --- a/test/test_loopy.py +++ b/test/test_loopy.py @@ -1282,28 +1282,6 @@ def test_finite_difference_expr_subst(ctx_factory): # {{{ call without returned values -def _f_mangler(kernel, name, arg_dtypes): - if not isinstance(name, str): - return None - - if (name == "f" and len(arg_dtypes) == 0): - from loopy.kernel.data import CallMangleInfo - return CallMangleInfo( - target_name="f", - result_dtypes=arg_dtypes, - arg_dtypes=arg_dtypes) - - -def _f_preamble_gen(preamble_info): - yield ("10_define_f", - r""" - void f() - { - printf("Hi!\n"); - } - """) - - def test_call_with_no_returned_value(ctx_factory): import pymbolic.primitives as p @@ -1315,8 +1293,9 @@ def test_call_with_no_returned_value(ctx_factory): [lp.CallInstruction((), p.Call(p.Variable("f"), ()))] ) - knl = lp.register_function_manglers(knl, [_f_mangler]) - knl = lp.register_preamble_generators(knl, [_f_preamble_gen]) + from library_for_test import no_ret_f_mangler, no_ret_f_preamble_gen + knl = lp.register_function_manglers(knl, [no_ret_f_mangler]) + knl = lp.register_preamble_generators(knl, [no_ret_f_preamble_gen]) evt, _ = knl(queue) -- GitLab