diff options
| author | Jason Henline <jhen@google.com> | 2016-08-30 23:35:24 +0000 |
|---|---|---|
| committer | Jason Henline <jhen@google.com> | 2016-08-30 23:35:24 +0000 |
| commit | 90ce6e1e6496b222cf8e3022ed6f80ccc45dfc0e (patch) | |
| tree | 1149505b8ef06568639106498cd7dfc057a57749 /parallel-libs/streamexecutor/lib/Kernel.cpp | |
| parent | ddb53dd080e233b7fe58bd69b46eafa3f093ca8c (diff) | |
| download | bcm5719-llvm-90ce6e1e6496b222cf8e3022ed6f80ccc45dfc0e.tar.gz bcm5719-llvm-90ce6e1e6496b222cf8e3022ed6f80ccc45dfc0e.zip | |
[StreamExecutor] Simplify Kernel classes
Summary:
Make the Kernel class follow the pattern of the other classes. It now
has a type-safe user wrapper and a typeless, platform-specific handle.
Reviewers: jlebar
Subscribers: jprice, parallel_libs-commits
Differential Revision: https://reviews.llvm.org/D24043
llvm-svn: 280176
Diffstat (limited to 'parallel-libs/streamexecutor/lib/Kernel.cpp')
| -rw-r--r-- | parallel-libs/streamexecutor/lib/Kernel.cpp | 24 |
1 files changed, 3 insertions, 21 deletions
diff --git a/parallel-libs/streamexecutor/lib/Kernel.cpp b/parallel-libs/streamexecutor/lib/Kernel.cpp index fa0992003a6..1f4218c4df3 100644 --- a/parallel-libs/streamexecutor/lib/Kernel.cpp +++ b/parallel-libs/streamexecutor/lib/Kernel.cpp @@ -20,26 +20,8 @@ namespace streamexecutor { -KernelBase::KernelBase(Device *Dev, const std::string &Name, - const std::string &DemangledName, - std::unique_ptr<KernelInterface> Implementation) - : TheDevice(Dev), Name(Name), DemangledName(DemangledName), - Implementation(std::move(Implementation)) {} - -KernelBase::~KernelBase() = default; - -Expected<KernelBase> KernelBase::create(Device *Dev, - const MultiKernelLoaderSpec &Spec) { - auto MaybeImplementation = Dev->getKernelImplementation(Spec); - if (!MaybeImplementation) { - return MaybeImplementation.takeError(); - } - std::string Name = Spec.getKernelName(); - std::string DemangledName = - llvm::symbolize::LLVMSymbolizer::DemangleName(Name, nullptr); - KernelBase Instance(Dev, Name, DemangledName, - std::move(*MaybeImplementation)); - return std::move(Instance); -} +KernelBase::KernelBase(llvm::StringRef Name) + : Name(Name), DemangledName(llvm::symbolize::LLVMSymbolizer::DemangleName( + Name, nullptr)) {} } // namespace streamexecutor |

