Week 34

Fix build-webkit --no-webcl to disable WebCL build
  * https://github.com/SRA-SiliconValley/webkit-webcl/issues/281

Layout Tests:
  * New Layout Test: Interoperability with Texture
2013-08-26  Steven Eliuk  <s.eliuk@samsung.com>

        Create GPU specific kernels in Nbody example

        Nbody, WebCL CPU results slower than serial JS
        Issue #260

        Reviewed by Simon/Antonio.

        Polished by Afonso Costa <afonso.costa@samsung.com>

        * WebCL/Nbody/Controller.js:
        * WebCL/Nbody/SimCL.js:
        (InitCL):
        (SimulateCL):
        (GetWorkGroupSize):
        * WebCL/Nbody/index.html:
2013-08-28  Afonso R. Costa Jr.  <afonso.costa@samsung.com>

        Add in README.md file an instruction to run the layout tests.

        Reviewed by Antonio Gomes.

        * README.md:
2013-08-29  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        Separate WebCLContextProperties and WebCLGLContextProperties
        Issue #293

        Reviewed by Igor.

        WebCL spec needs WebCLContextProperties and
        WebCLGLContextProperties to be two different objects.
        See for example WebCLContext::getInfo(CONTEXT_PROPERTIES)
        and WebCLGLContext::getInfo(CONTEXT_PROPERTIES) return types.

        Patch slips WebCLContextProperties into two, but keeps the creation
        place unified.

        * Modules/webcl/WebCL.cpp:
        (WebCore::WebCL::defaultProperties):

        Changed to create non-specialized WebCLContextProperties object
        as default.

        * Modules/webcl/WebCLContextProperties.cpp:
        (WebCore::WebCLContextProperties::create):
        (WebCore::WebCLContextProperties::WebCLContextProperties):

        Moved GLSharedContext specific bits out of it.

        (WebCore::WebCLContextProperties::sharedContext):

        Renamed from webGLRenderingContext to match binding expectation.
        Also it is a no-op base class implementation

        (WebCore::WebCLContextProperties::setSharedContext):

        Ditto. Renamed from setWebGLRenderingContext.

        (WebCore::WebCLContextProperties::computeContextProperties):

        public interface for getting the CL properties (needed for context creation).
        It calls in computeContextPropertiesInternal, which is virtual.

        (WebCore::WebCLContextProperties::computeContextPropertiesInternal):

        Initializes the vector property if needed.

        * Modules/webcl/WebCLContextProperties.h:
        (WebCore::WebCLContextProperties::~WebCLContextProperties):
        * Modules/webcl/WebCLContextProperties.idl:
        * Modules/webcl/WebCLGLContextProperties.cpp: Added.
        (WebCore::WebCLGLContextProperties::create):
        (WebCore::WebCLGLContextProperties::WebCLGLContextProperties):

        Static ::create and ctor taking non-default GL context arguments.

        (WebCore::WebCLGLContextProperties::sharedContext):
        (WebCore::WebCLGLContextProperties::setSharedContext):

        Actual setter and getter. The base class variant of these
        are no-op.

        (WebCore::WebCLGLContextProperties::computeContextPropertiesInternal):

        GL specific bits are added to the property list. It calls in the base class
        variant.

        * Modules/webcl/WebCLGLContextProperties.h:
        (WebCore::WebCLGLContextProperties::~WebCLGLContextProperties):
        * Modules/webcl/WebCLGLContextProperties.idl:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSWebCLCustom.cpp:
        (WebCore::JSWebCL::createContext):
        * bindings/js/JSWebCLCustom.h:
        (WebCore::setSharedContext):
        (WebCore::parsePropertiesAndCreateContext):
        * bindings/js/JSWebCLGLCustom.cpp:
        (WebCore::JSWebCLGL::createContext):
2013-08-30  Antonio Gomes  <a1.gomes@sisa.samsung.com>

        WebCLGLContext::getInfo needs implementation
        Issue #274

        Reviewed by Igor.

        Implemented WebCLGLContext::getInfo(CONTEXT_PROPERTIES)
        in terms of its base class' method (WebCLContext).

        When we realize that the returned value is GL-capable,
        cast it to returned the expected value.

        * Modules/webcl/WebCLContextProperties.h:
        (WebCore::WebCLContextProperties::isGLCapable):
        * Modules/webcl/WebCLGLContext.idl:
        * Modules/webcl/WebCLGLContextProperties.h:
        (WebCore::WebCLGLContextProperties::isGLCapable):
        * Modules/webcl/WebCLGLContextProperties.idl:
        * bindings/js/JSWebCLCustom.cpp:
        (WebCore::toJS):
2013-09-02  Sharath Kamath  <s.kamath@samsung.com>

        Cache WebCLDevice in platform objects.
        Issue #294

        Reviewed by Antonio.

        Caching devices and type of the devices in WebCLPLatform.
        If an additional query (call to getDevices) happens with a different device type, the cache would be invalidated.
        This will avoid multiple copy of webcl device objects holding reference to same OpenCL object.

        No new tests (OOPS!).

        * Modules/webcl/WebCLPlatform.cpp:
        (WebCore::WebCLPlatform::WebCLPlatform):
        (WebCore::WebCLPlatform::getDevices):
        * Modules/webcl/WebCLPlatform.h:
Week 35

Demos
  * Nbody: enable device switch using radio buttons
  * PathIntegrals: disable CL<->GL interop when CPU is used

Layout Tests
  * Changed data structure in Image Test
  * Make a rebaseline in webcl-test-arg-types-const-expected.txt
  * Make a progression in webcl-test-instanceof.html

Build
  * Makes it possible to build WebCL without WebGL support