diff --git a/loopy/target/opencl.py b/loopy/target/opencl.py index 7ffd91309b9b82a86c17357abca9fe381a145e33..77ae6a9570b92faef6316dc545ee7d83020e68fa 100644 --- a/loopy/target/opencl.py +++ b/loopy/target/opencl.py @@ -276,7 +276,7 @@ def opencl_with_types(in_knl_callable, arg_id_to_dtype): dtype = arg_id_to_dtype[0] scalar_dtype, offset, field_name = dtype.numpy_dtype.fields["s0"] return in_knl_callable.copy(name_in_target=name, - arg_id_to_dtype={-1: scalar_dtype, 0: dtype, 1: dtype}) + arg_id_to_dtype={-1: NumpyType(scalar_dtype), 0: dtype, 1: dtype}) if name in _CL_SIMPLE_MULTI_ARG_FUNCTIONS: num_args = _CL_SIMPLE_MULTI_ARG_FUNCTIONS[name] diff --git a/loopy/target/pyopencl.py b/loopy/target/pyopencl.py index 4dace7ec2ade8648d736c8094a19b2e696e0c1e4..2952964442b5fd5b45f54b282deec9e1ac26b3fe 100644 --- a/loopy/target/pyopencl.py +++ b/loopy/target/pyopencl.py @@ -264,11 +264,12 @@ def pyopencl_with_types(in_knl_callable, arg_id_to_dtype): "sinh", "cosh", "tanh", "conj"]: return in_knl_callable.copy(name_in_target="%s_%s" % (tpname, name), - arg_id_to_dtype={0: dtype, -1: dtype}) + arg_id_to_dtype={0: NumpyType(dtype), -1: NumpyType(dtype)}) if name in ["real", "imag", "abs"]: return in_knl_callable.copy(name_in_target="%s_%s" % (tpname, name), - arg_id_to_dtype={0: dtype, -1: dtype.numpy_dtype.type(0).real}) + arg_id_to_dtype={0: NumpyType(dtype), -1: NumpyType( + dtype.numpy_dtype.type(0).real)}) return None