summaryrefslogtreecommitdiff
path: root/src/routines/levelx/xomatcopy.cpp
diff options
context:
space:
mode:
authorIvan Shapovalov <intelfx@intelfx.name>2016-10-18 04:53:06 +0300
committerIvan Shapovalov <intelfx@intelfx.name>2016-10-22 08:45:27 +0300
commit56f300607b1d0b81ab3269894fda5a066c46cdeb (patch)
tree60b4c5566cc4bbfad15a7791a4e20c2a60e16707 /src/routines/levelx/xomatcopy.cpp
parentb98af44fcf89b9946e1de438b1f5527e6bf28905 (diff)
Routine: get rid of ::SetUp()
Since we now use C++ exceptions inside the implementation (and exceptions can be thrown from constructors), there is no need for a separate Routine::SetUp() function. For this, we also change the way how the kernel source string is constructed. The kernel-specific source code is now passed to the Routine ctor via an initializer_list of C strings to avoid unnecessary data copying while also working around C1091 of MSVC 2013.
Diffstat (limited to 'src/routines/levelx/xomatcopy.cpp')
-rw-r--r--src/routines/levelx/xomatcopy.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/routines/levelx/xomatcopy.cpp b/src/routines/levelx/xomatcopy.cpp
index e053c076..875ca7d2 100644
--- a/src/routines/levelx/xomatcopy.cpp
+++ b/src/routines/levelx/xomatcopy.cpp
@@ -22,14 +22,13 @@ namespace clblast {
// Constructor: forwards to base class constructor
template <typename T>
Xomatcopy<T>::Xomatcopy(Queue &queue, EventPointer event, const std::string &name):
- Routine(queue, event, name, {"Copy","Pad","Transpose","Padtranspose"}, PrecisionValue<T>()) {
- source_string_ =
+ Routine(queue, event, name, {"Copy","Pad","Transpose","Padtranspose"}, PrecisionValue<T>(), {}, {
#include "../../kernels/level3/level3.opencl"
#include "../../kernels/level3/copy_fast.opencl"
#include "../../kernels/level3/copy_pad.opencl"
#include "../../kernels/level3/transpose_fast.opencl"
#include "../../kernels/level3/transpose_pad.opencl"
- ;
+ }) {
}
// =================================================================================================