sycl icon indicating copy to clipboard operation
sycl copied to clipboard

[SYCL] Common functionality header for InSPIRation and SYCL runtime

Open agozillon opened this issue 5 years ago • 0 comments

At the moment the InSPIRation LLVM pass and SYCL runtime share some common code that should be refactored into a shared header that can be reused across the LLVM pass and runtime. This will make it easier to maintain long term.

Current Examples are: (0) program_manager.cpp: static std::string getUniqueName(const char *KernelName) (0) InSPIRation.cpp: void setUniqueName(Function &F) (1) kernel_properties.hpp: static std::vector<size_t> get_reqd_work_group_size(std::string mangledKernelName) (1) InSPIRation.cpp: SmallVector<llvm::Metadata *, 8> getReqdWorkGroupSize(const std::string& demangledName, LLVMContext &Ctx)

Another option would be to rework these components in the future so that the LLVM Pass and runtime are less intrinsically linked.

Related to discussion in: https://github.com/triSYCL/sycl/pull/19

agozillon avatar Apr 18 '19 01:04 agozillon