Jan Vesely <jan.ves...@rutgers.edu> writes: > Signed-off-by: Jan Vesely <jan.ves...@rutgers.edu> > --- > src/gallium/state_trackers/clover/api/memory.cpp | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/src/gallium/state_trackers/clover/api/memory.cpp > b/src/gallium/state_trackers/clover/api/memory.cpp > index 785a509..15f5b7f 100644 > --- a/src/gallium/state_trackers/clover/api/memory.cpp > +++ b/src/gallium/state_trackers/clover/api/memory.cpp > @@ -43,6 +43,21 @@ clCreateBuffer(cl_context d_ctx, cl_mem_flags flags, > size_t size, > CL_MEM_COPY_HOST_PTR)) > throw error(CL_INVALID_VALUE); > > + if ((flags & CL_MEM_WRITE_ONLY) && (flags & CL_MEM_READ_ONLY)) > + throw error(CL_INVALID_VALUE); > + > + if ((flags & CL_MEM_READ_WRITE) && (flags & CL_MEM_READ_ONLY)) > + throw error(CL_INVALID_VALUE); > + > + if ((flags & CL_MEM_READ_WRITE) && (flags & CL_MEM_WRITE_ONLY)) > + throw error(CL_INVALID_VALUE); > + > + if ((flags & CL_MEM_COPY_HOST_PTR) && (flags & CL_MEM_USE_HOST_PTR)) > + throw error(CL_INVALID_VALUE); > + > + if ((flags & CL_MEM_ALLOC_HOST_PTR) && (flags & CL_MEM_USE_HOST_PTR)) > + throw error(CL_INVALID_VALUE); > +
Wouldn't it be easier to do something like: | if (util_bitcount(flags & (CL_MEM_READ_ONLY | CL_MEM_WRITE_ONLY | | CL_MEM_READ_WRITE)) > 1) | throw error(CL_INVALID_VALUE); | | if ((flags & CL_MEM_USE_HOST_PTR) && | (flags & (CL_MEM_COPY_HOST_PTR | CL_MEM_ALLOC_HOST_PTR))) | throw error(CL_INVALID_VALUE); With that fixed, Reviewed-by: Francisco Jerez <curroje...@riseup.net> > ret_error(r_errcode, CL_SUCCESS); > return new root_buffer(ctx, flags, size, host_ptr); > > -- > 1.8.3.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev
pgpmiO0VYtCB5.pgp
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev