2014-02-07  Sharath Kamath  <s.kamath@samsung.com>

        [Part 2] Enqueue* API boundary checks.

        Issue #408

        Reviewed by Antonio.

        Mainly adding boundry checks for enqueueCopy* API's.
        This will ensure we validate the region being copied
        before we send the request to underlying OpenCL.

        /conformance/bindingTesting/queues/cl_commandQueue_enqueueCopyImage.html
        conformance/functionalityTesting/enqueueOperations/enqueueCopyImage.html

        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::enqueueWriteImageBase):
        (WebCore::WebCLCommandQueue::enqueueCopyImage):
        (WebCore::WebCLCommandQueue::enqueueCopyImageToBuffer):
        (WebCore::WebCLCommandQueue::enqueueCopyBufferToImage):
        (WebCore::WebCLCommandQueue::enqueueCopyBuffer):
        * Modules/webcl/WebCLImage.h:
        (WebCore::WebCLImage::imageDescriptor):
        * Modules/webcl/WebCLInputChecker.cpp:
        (WebCore::WebCLInputChecker::isValidRegionForImage):
        * Modules/webcl/WebCLInputChecker.h: