summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhaochen <haochen@multicorewareinc.com>2014-06-11 12:59:37 +0800
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2014-06-17 08:12:01 +0200
commitc1dfbcdd114929cb5f03972e419e0452c3bbd9ef (patch)
tree038060ec600d7c4cd2d4dec64e2daf482314d6ee
parent848c76d5e3e9b477dbce735d8a0bd734cd5e389c (diff)
GPU Calc:Add more judge for NAN in SingleVector parameter
Change-Id: I01f2576e9d8f6a2e677d1fb08097bc81f15bfbe0
-rw-r--r--sc/source/core/opencl/opbase.cxx8
1 files changed, 4 insertions, 4 deletions
diff --git a/sc/source/core/opencl/opbase.cxx b/sc/source/core/opencl/opbase.cxx
index ccd653c938db..02b9c37bb28d 100644
--- a/sc/source/core/opencl/opbase.cxx
+++ b/sc/source/core/opencl/opbase.cxx
@@ -64,10 +64,10 @@ std::string VectorRef::GenSlidingWindowDeclRef(bool nested) const
std::stringstream ss;
formula::SingleVectorRefToken *pSVR =
dynamic_cast<formula::SingleVectorRefToken*>(DynamicKernelArgument::GetFormulaToken());
- if (pSVR&&nested)
+ if (pSVR&&!nested)
ss << "(gid0 < " << pSVR->GetArrayLength() << "?";
ss << mSymName << "[gid0]";
- if (pSVR&&nested)
+ if (pSVR&&!nested)
ss << ":NAN)";
return ss.str();
}
@@ -155,7 +155,7 @@ void CheckVariables::CheckSubArgumentIsNan( std::stringstream & ss,
ss<< " if(";
}
ss<< "isNan(";
- ss<< vSubArguments[i]->GenSlidingWindowDeclRef(false);
+ ss<< vSubArguments[i]->GenSlidingWindowDeclRef(true);
ss<<"))\n";
ss<< " tmp";
ss<< i;
@@ -164,7 +164,7 @@ void CheckVariables::CheckSubArgumentIsNan( std::stringstream & ss,
ss <<" tmp";
ss <<i;
ss << "=";
- ss << vSubArguments[i]->GenSlidingWindowDeclRef(false);
+ ss << vSubArguments[i]->GenSlidingWindowDeclRef(true);
ss<<";\n";
}