GPU-Calc: remove the flag of USE_HOST_PTR and ALLOC_HOST_PTR

Change-Id: I000688c93b0feeb6da213b0f1f307a5062a41504
diff --git a/sc/source/core/opencl/formulagroupcl.cxx b/sc/source/core/opencl/formulagroupcl.cxx
index 55668ee..82cafdb 100644
--- a/sc/source/core/opencl/formulagroupcl.cxx
+++ b/sc/source/core/opencl/formulagroupcl.cxx
@@ -96,11 +96,15 @@ size_t VectorRef::Marshal(cl_kernel k, int argno, int, cl_program)
    if (pHostBuffer)
    {
        mpClmem = clCreateBuffer(kEnv.mpkContext,
                (cl_mem_flags) CL_MEM_READ_ONLY|CL_MEM_USE_HOST_PTR,
                (cl_mem_flags) CL_MEM_READ_ONLY,
                szHostBuffer,
                pHostBuffer, &err);
                NULL, &err);
        if (CL_SUCCESS != err)
            throw OpenCLError(err);
        err = clEnqueueWriteBuffer(kEnv.mpkCmdQueue, mpClmem,CL_TRUE, 0, szHostBuffer,
                pHostBuffer, 0, NULL, NULL);
        if (CL_SUCCESS != err)
             throw OpenCLError(err);
    }
    else
    {
@@ -112,15 +116,15 @@ size_t VectorRef::Marshal(cl_kernel k, int argno, int, cl_program)
                szHostBuffer, NULL, &err);
        if (CL_SUCCESS != err)
            throw OpenCLError(err);
        double *pNanBuffer = (double*)clEnqueueMapBuffer(
                kEnv.mpkCmdQueue, mpClmem, CL_TRUE, CL_MAP_WRITE, 0,
                szHostBuffer, 0, NULL, NULL, &err);
        if (CL_SUCCESS != err)
            throw OpenCLError(err);
        double *pNanBuffer = new double[szHostBuffer/sizeof(double)];
        for (size_t i = 0; i < szHostBuffer/sizeof(double); i++)
            pNanBuffer[i] = NAN;
        err = clEnqueueUnmapMemObject(kEnv.mpkCmdQueue, mpClmem,
                pNanBuffer, 0, NULL, NULL);
        err = clEnqueueWriteBuffer(kEnv.mpkCmdQueue, mpClmem,CL_TRUE, 0, szHostBuffer,
              pNanBuffer, 0, NULL, NULL);
        if (CL_SUCCESS != err)
              throw OpenCLError(err);
        delete[] pNanBuffer;

    }

    err = clSetKernelArg(k, argno, sizeof(cl_mem), (void*)&mpClmem);
@@ -799,9 +803,15 @@ public:
                mpDVR->GetArrays()[Base::mnIndex].mpNumericArray);
        size_t szHostBuffer = nInput * sizeof(double);
        Base::mpClmem = clCreateBuffer(kEnv.mpkContext,
                (cl_mem_flags) CL_MEM_READ_ONLY|CL_MEM_USE_HOST_PTR,
                (cl_mem_flags) CL_MEM_READ_ONLY,
                szHostBuffer,
                pHostBuffer, &err);
                NULL, &err);
        if (CL_SUCCESS != err)
              throw OpenCLError(err);
        err = clEnqueueWriteBuffer(kEnv.mpkCmdQueue, Base::mpClmem,CL_TRUE, 0,
              szHostBuffer, pHostBuffer, 0, NULL, NULL);
        if (CL_SUCCESS != err)
              throw OpenCLError(err);
        mpClmem2 = clCreateBuffer(kEnv.mpkContext, CL_MEM_WRITE_ONLY,
                sizeof(double)*w, NULL, NULL);
        if (CL_SUCCESS != err)
@@ -2623,7 +2633,7 @@ public:
        cl_int err;
        // The results
        mpResClmem = clCreateBuffer(kEnv.mpkContext,
                (cl_mem_flags) CL_MEM_READ_WRITE|CL_MEM_ALLOC_HOST_PTR,
                (cl_mem_flags) CL_MEM_READ_WRITE,
                nr*sizeof(double), NULL, &err);
        if (CL_SUCCESS != err)
            throw OpenCLError(err);
@@ -2905,17 +2915,14 @@ bool FormulaGroupInterpreterOpenCL::interpret( ScDocument& rDoc,
        // Map results back
        cl_mem res = pKernel->GetResultBuffer();
        cl_int err;
        double *resbuf = (double*)clEnqueueMapBuffer(kEnv.mpkCmdQueue,
                res,
                CL_TRUE, CL_MAP_READ, 0,
                xGroup->mnLength*sizeof(double), 0, NULL, NULL,
                &err);
        double *resbuf = new double[xGroup->mnLength];
        err = clEnqueueReadBuffer(kEnv.mpkCmdQueue,res,
              CL_TRUE, 0, xGroup->mnLength*sizeof(double), resbuf, 0, NULL, NULL);
        if (err != CL_SUCCESS)
            throw OpenCLError(err);

        rDoc.SetFormulaResults(rTopPos, resbuf, xGroup->mnLength);
        err = clEnqueueUnmapMemObject(kEnv.mpkCmdQueue, res, resbuf, 0, NULL, NULL);
        if (err != CL_SUCCESS)
            throw OpenCLError(err);
        delete[] resbuf;
        if (xGroup->meCalcState == sc::GroupCalcRunning)
            delete pKernel;
    }