radeon/llvm: Implement radeon_llvm_get_num_kernels() using the C API

This commit is contained in:
Tom Stellard
2013-03-07 16:51:10 -05:00
parent 7e9abbea15
commit b34b8576ec

View File

@@ -43,12 +43,7 @@ extern "C" unsigned radeon_llvm_get_num_kernels(const unsigned char *bitcode,
unsigned bitcode_len) unsigned bitcode_len)
{ {
LLVMModuleRef mod = radeon_llvm_parse_bitcode(bitcode, bitcode_len); LLVMModuleRef mod = radeon_llvm_parse_bitcode(bitcode, bitcode_len);
llvm::Module *M = llvm::unwrap(mod); return LLVMGetNamedMetadataNumOperands(mod, "opencl.kernels");
const llvm::NamedMDNode *kernel_node
= M->getNamedMetadata("opencl.kernels");
unsigned kernel_count = kernel_node->getNumOperands();
delete M;
return kernel_count;
} }
extern "C" LLVMModuleRef radeon_llvm_get_kernel_module(unsigned index, extern "C" LLVMModuleRef radeon_llvm_get_kernel_module(unsigned index,