• Home
  • Raw
  • Download

Lines Matching refs:llvm

54                      llvm::raw_ostream *OS,  in RSBackend()
92 clang::FunctionDecl *FD = llvm::dyn_cast<clang::FunctionDecl>(*I); in HandleTopLevelDecl()
109 clang::FunctionDecl *FD = llvm::dyn_cast<clang::FunctionDecl>(*I); in HandleTopLevelDecl()
179 clang::FunctionDecl *FD = llvm::dyn_cast<clang::FunctionDecl>(*I); in HandleTranslationUnitPre()
190 void RSBackend::dumpExportVarInfo(llvm::Module *M) { in dumpExportVarInfo()
195 llvm::SmallVector<llvm::Value*, 2> ExportVarInfo; in dumpExportVarInfo()
210 llvm::MDString::get(mLLVMContext, EV->getName().c_str())); in dumpExportVarInfo()
218 llvm::MDString::get( in dumpExportVarInfo()
219 mLLVMContext, llvm::utostr_32(PT->getType()))); in dumpExportVarInfo()
227 llvm::MDString::get( in dumpExportVarInfo()
234 llvm::MDString::get( in dumpExportVarInfo()
235 mLLVMContext, llvm::utostr_32( in dumpExportVarInfo()
244 llvm::MDString::get(mLLVMContext, in dumpExportVarInfo()
251 llvm::MDNode::get(mLLVMContext, ExportVarInfo)); in dumpExportVarInfo()
260 mRSObjectSlotsMetadata->addOperand(llvm::MDNode::get(mLLVMContext, in dumpExportVarInfo()
261 llvm::MDString::get(mLLVMContext, llvm::utostr_32(slotCount)))); in dumpExportVarInfo()
268 void RSBackend::dumpExportFunctionInfo(llvm::Module *M) { in dumpExportFunctionInfo()
273 llvm::SmallVector<llvm::Value*, 1> ExportFuncInfo; in dumpExportFunctionInfo()
284 ExportFuncInfo.push_back(llvm::MDString::get(mLLVMContext, in dumpExportFunctionInfo()
287 llvm::Function *F = M->getFunction(EF->getName()); in dumpExportFunctionInfo()
288 llvm::Function *HelperFunction; in dumpExportFunctionInfo()
295 llvm::StructType *HelperFunctionParameterTy = NULL; in dumpExportFunctionInfo()
298 std::vector<llvm::Type*> HelperFunctionParameterTys; in dumpExportFunctionInfo()
299 for (llvm::Function::arg_iterator AI = F->arg_begin(), in dumpExportFunctionInfo()
304 llvm::StructType::get(mLLVMContext, HelperFunctionParameterTys); in dumpExportFunctionInfo()
323 std::vector<llvm::Type*> Params; in dumpExportFunctionInfo()
325 llvm::PointerType *HelperFunctionParameterTyP = in dumpExportFunctionInfo()
326 llvm::PointerType::getUnqual(HelperFunctionParameterTy); in dumpExportFunctionInfo()
330 llvm::FunctionType * HelperFunctionType = in dumpExportFunctionInfo()
331 llvm::FunctionType::get(F->getReturnType(), in dumpExportFunctionInfo()
336 llvm::Function::Create(HelperFunctionType, in dumpExportFunctionInfo()
337 llvm::GlobalValue::ExternalLinkage, in dumpExportFunctionInfo()
341 HelperFunction->addFnAttr(llvm::Attribute::NoInline); in dumpExportFunctionInfo()
346 llvm::Argument *HelperFunctionParameter = in dumpExportFunctionInfo()
348 llvm::BasicBlock *BB = in dumpExportFunctionInfo()
349 llvm::BasicBlock::Create(mLLVMContext, "entry", HelperFunction); in dumpExportFunctionInfo()
350 llvm::IRBuilder<> *IB = new llvm::IRBuilder<>(BB); in dumpExportFunctionInfo()
351 llvm::SmallVector<llvm::Value*, 6> Params; in dumpExportFunctionInfo()
352 llvm::Value *Idx[2]; in dumpExportFunctionInfo()
355 llvm::ConstantInt::get(llvm::Type::getInt32Ty(mLLVMContext), 0); in dumpExportFunctionInfo()
361 Idx[1] = llvm::ConstantInt::get( in dumpExportFunctionInfo()
362 llvm::Type::getInt32Ty(mLLVMContext), i); in dumpExportFunctionInfo()
364 llvm::Value *Ptr = in dumpExportFunctionInfo()
368 llvm::Value *V = IB->CreateLoad(Ptr); in dumpExportFunctionInfo()
373 llvm::CallInst *CI = IB->CreateCall(F, Params); in dumpExportFunctionInfo()
377 if (F->getReturnType() == llvm::Type::getVoidTy(mLLVMContext)) in dumpExportFunctionInfo()
387 llvm::MDString::get(mLLVMContext, HelperFunctionName.c_str())); in dumpExportFunctionInfo()
391 llvm::MDNode::get(mLLVMContext, ExportFuncInfo)); in dumpExportFunctionInfo()
396 void RSBackend::dumpExportForEachInfo(llvm::Module *M) { in dumpExportForEachInfo()
406 llvm::SmallVector<llvm::Value*, 1> ExportForEachName; in dumpExportForEachInfo()
407 llvm::SmallVector<llvm::Value*, 1> ExportForEachInfo; in dumpExportForEachInfo()
417 llvm::MDString::get(mLLVMContext, EFE->getName().c_str())); in dumpExportForEachInfo()
420 llvm::MDNode::get(mLLVMContext, ExportForEachName)); in dumpExportForEachInfo()
424 llvm::MDString::get(mLLVMContext, in dumpExportForEachInfo()
425 llvm::utostr_32(EFE->getSignatureMetadata()))); in dumpExportForEachInfo()
428 llvm::MDNode::get(mLLVMContext, ExportForEachInfo)); in dumpExportForEachInfo()
433 void RSBackend::dumpExportTypeInfo(llvm::Module *M) { in dumpExportTypeInfo()
434 llvm::SmallVector<llvm::Value*, 1> ExportTypeInfo; in dumpExportTypeInfo()
447 llvm::MDString::get(mLLVMContext, ET->getName().c_str())); in dumpExportTypeInfo()
458 llvm::MDNode::get(mLLVMContext, ExportTypeInfo)); in dumpExportTypeInfo()
463 llvm::NamedMDNode *StructInfoMetadata = in dumpExportTypeInfo()
465 llvm::SmallVector<llvm::Value*, 3> FieldInfo; in dumpExportTypeInfo()
476 FieldInfo.push_back(llvm::MDString::get(mLLVMContext, in dumpExportTypeInfo()
481 llvm::MDString::get(mLLVMContext, in dumpExportTypeInfo()
485 llvm::MDNode::get(mLLVMContext, FieldInfo)); in dumpExportTypeInfo()
492 void RSBackend::HandleTranslationUnitPost(llvm::Module *M) { in HandleTranslationUnitPost()