diff options
author | I-Jui (Ray) Sung <ray@multicorewareinc.com> | 2013-11-29 00:29:50 -0600 |
---|---|---|
committer | I-Jui (Ray) Sung <ray@multicorewareinc.com> | 2013-11-29 00:29:50 -0600 |
commit | 6eda7db090d35f556e1e8e988f118efa4a8a53b9 (patch) | |
tree | 07528ca42d25d5c7b3695eb4cf60113e43836289 /sc | |
parent | 2e819caf36ba2a15c56bca5bce61e49920ea1765 (diff) |
GPU Calc: fix compilation failures
Change-Id: Idafbd9fb3fb71a1da9ba6b7a39007eac3865c932
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/core/opencl/formulagroupcl.cxx | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/sc/source/core/opencl/formulagroupcl.cxx b/sc/source/core/opencl/formulagroupcl.cxx index d11711e10b04..cc4fc04d52b7 100644 --- a/sc/source/core/opencl/formulagroupcl.cxx +++ b/sc/source/core/opencl/formulagroupcl.cxx @@ -1421,7 +1421,14 @@ public: } virtual std::string BinFuncName(void) const { return "fsop"; } }; - +namespace { +struct SumIfsArgs { + SumIfsArgs(cl_mem x): mCLMem(x), mConst(0.0) {} + SumIfsArgs(double x): mCLMem(NULL), mConst(x) {} + cl_mem mCLMem; + double mConst; +}; +} /// Helper functions that have multiple buffers class DynamicKernelSoPArguments: public DynamicKernelArgument { @@ -1454,12 +1461,6 @@ public: if (OpSumCodeGen->NeedReductionKernel()) { - struct SumIfsArgs { - SumIfsArgs(cl_mem x): mCLMem(x), mConst(0.0) {} - SumIfsArgs(double x): mCLMem(NULL), mConst(x) {} - cl_mem mCLMem; - double mConst; - }; assert(slidingArgPtr); size_t nInput = slidingArgPtr -> GetArrayLength(); size_t nCurWindowSize = slidingArgPtr -> GetWindowSize(); @@ -1469,13 +1470,13 @@ public: e= mvSubArguments.end(); it!=e; ++it) { if (VectorRef *VR = dynamic_cast<VectorRef *>(it->get())) - vclmem.push_back(VR->GetCLBuffer()); + vclmem.push_back(SumIfsArgs(VR->GetCLBuffer())); else if (DynamicKernelConstantArgument *CA = dynamic_cast< DynamicKernelConstantArgument *>(it->get())) - vclmem.push_back(CA->GetDouble()); + vclmem.push_back(SumIfsArgs(CA->GetDouble())); else - vclmem.push_back((cl_mem)NULL); + vclmem.push_back(SumIfsArgs((cl_mem)NULL)); } mpClmem2 = clCreateBuffer(kEnv.mpkContext, CL_MEM_READ_WRITE, sizeof(double)*nVectorWidth, NULL, &err); |