Fix zero-size buffer allocation with OpenCL devices
Fix zero-size buffer allocation with OpenCL devices

This is not really supported by OpenCL but might happen in certain
configurations. There might be some remained cases when this happens
but so far can not find any,

tangent-opensource/coreBlackbird,tangent-opensource/coreBlackbird,tangent-opensource/coreBlackbird