diff options
author | Gunes Bayir <gunes.bayir@arm.com> | 2023-07-11 14:57:36 +0100 |
---|---|---|
committer | Gunes Bayir <gunes.bayir@arm.com> | 2023-07-12 10:09:19 +0000 |
commit | ab0b75054ca3ddd62cff34518f331aa8474daa5a (patch) | |
tree | bf23ec6a1baee5b7359af1b91fb4b3a462760e2f /compute_kernel_writer/src/KernelWriter.cpp | |
parent | 653b96c9a72b2b6d4d82d6ee67b51be66351c617 (diff) | |
download | ComputeLibrary-ab0b75054ca3ddd62cff34518f331aa8474daa5a.tar.gz |
Add tile declaration capability in KernelWriter
Resolves: COMPMID-5816
Signed-off-by: Gunes Bayir <gunes.bayir@arm.com>
Change-Id: Ibd885707a842550a058252f9d01e072129896055
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/9901
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Viet-Hoa Do <viet-hoa.do@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Benchmark: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'compute_kernel_writer/src/KernelWriter.cpp')
-rw-r--r-- | compute_kernel_writer/src/KernelWriter.cpp | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/compute_kernel_writer/src/KernelWriter.cpp b/compute_kernel_writer/src/KernelWriter.cpp index eb8399a7ef..ab5ede8c77 100644 --- a/compute_kernel_writer/src/KernelWriter.cpp +++ b/compute_kernel_writer/src/KernelWriter.cpp @@ -22,15 +22,22 @@ * SOFTWARE. */ -#include "ckw/KernelWriter.h" #include "ckw/Error.h" +#include "ckw/ITileOperand.h" +#include "ckw/KernelWriter.h" +#include "ckw/types/TargetArchitecture.h" +#include "ckw/types/TargetLanguage.h" #include "src/cl/CLKernelWriter.h" +#include <iterator> namespace ckw { +KernelWriter::~KernelWriter() = default; + std::unique_ptr<KernelWriter> KernelWriter::create_instance(TargetArchitecture architecture, TargetLanguage language) { + CKW_UNUSED(architecture); switch(language) { case TargetLanguage::OpenCL: @@ -43,6 +50,20 @@ std::unique_ptr<KernelWriter> KernelWriter::create_instance(TargetArchitecture a } } -KernelWriter::~KernelWriter() = default; +int32_t KernelWriter::id_space() const +{ + return _id_space; +} + +ITileOperand &KernelWriter::add_operand(std::unique_ptr<ITileOperand> &operand_ptr) +{ + auto it = _operands.insert(std::move(operand_ptr)); + return *it.first->get(); +} + +std::string KernelWriter::generate_full_name(const std::string &name) const +{ + return "G" + std::to_string(id_space()) + "__" + name; +} } // namespace ckw |