Kaydet (Commit) 64e00fab authored tarafından Kohei Yoshida's avatar Kohei Yoshida

More C++11 specific features we aren't supposed to be using...

* No 'auto'.
* No std::unique_ptr.

Change-Id: Iaceab28b9ad0b515bf77db2767018573c8de61de
üst 8817dcb8
......@@ -661,7 +661,8 @@ template<class Op>
class DynamicKernelSoPArguments: public DynamicKernelArgument
{
public:
typedef std::unique_ptr<DynamicKernelArgument> SubArgument;
typedef boost::shared_ptr<DynamicKernelArgument> SubArgument;
typedef std::vector<SubArgument> SubArgumentsType;
DynamicKernelSoPArguments(const std::string &s,
boost::shared_ptr<FormulaTreeNode> ft);
......@@ -670,8 +671,9 @@ public:
virtual size_t Marshal(cl_kernel k, int argno, int nVectorWidth)
{
unsigned i = 0;
for(auto it = mvSubArguments.begin(), e= mvSubArguments.end(); it!=e;
++it) {
for (SubArgumentsType::iterator it = mvSubArguments.begin(), e= mvSubArguments.end(); it!=e;
++it)
{
i += (*it)->Marshal(k, argno + i, nVectorWidth);
}
return i;
......@@ -716,8 +718,9 @@ public:
/// When declared as input to a sliding window function
virtual void GenSlidingWindowDecl(std::stringstream &ss) const
{
for(auto it = mvSubArguments.begin(), e= mvSubArguments.end(); it!=e;
++it) {
for (SubArgumentsType::const_iterator it = mvSubArguments.begin(), e= mvSubArguments.end(); it!=e;
++it)
{
if (it != mvSubArguments.begin())
ss << ", ";
(*it)->GenSlidingWindowDecl(ss);
......@@ -757,7 +760,7 @@ public:
return t;
}
private:
std::vector<SubArgument> mvSubArguments;
SubArgumentsType mvSubArguments;
Op CodeGen;
};
......
......@@ -65,15 +65,18 @@ size_t DynamicKernelArgument::GetWindowSize(void) const
{
FormulaToken *pCur = mFormulaTree->GetFormulaToken();
assert(pCur);
if (auto *pCurDVR =
dynamic_cast<const formula::DoubleVectorRefToken *>(pCur))
if (const formula::DoubleVectorRefToken* pCurDVR =
dynamic_cast<const formula::DoubleVectorRefToken *>(pCur))
{
return pCurDVR->GetRefRowSize();
} else if (dynamic_cast<const formula::SingleVectorRefToken *>(pCur))
}
else if (dynamic_cast<const formula::SingleVectorRefToken *>(pCur))
{
// Prepare intermediate results (on CPU for now)
return 1;
} else {
}
else
{
throw Unhandled();
}
return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment