Lines Matching refs:Fn

585                                          llvm::Function *Fn) {  in EmitKernelMetadata()  argument
591 CGM.GenKernelArgMetadata(Fn, FD, this); in EmitKernelMetadata()
608 Fn->setMetadata("vec_type_hint", llvm::MDNode::get(Context, AttrMDArgs)); in EmitKernelMetadata()
616 Fn->setMetadata("work_group_size_hint", llvm::MDNode::get(Context, AttrMDArgs)); in EmitKernelMetadata()
624 Fn->setMetadata("reqd_work_group_size", llvm::MDNode::get(Context, AttrMDArgs)); in EmitKernelMetadata()
631 Fn->setMetadata("intel_reqd_sub_group_size", in EmitKernelMetadata()
652 void CodeGenFunction::markAsIgnoreThreadCheckingAtRuntime(llvm::Function *Fn) { in markAsIgnoreThreadCheckingAtRuntime() argument
654 Fn->addFnAttr("sanitize_thread_no_checking_at_run_time"); in markAsIgnoreThreadCheckingAtRuntime()
655 Fn->removeFnAttr(llvm::Attribute::SanitizeThread); in markAsIgnoreThreadCheckingAtRuntime()
696 llvm::Function *Fn, in StartFunction() argument
713 CurFn = Fn; in StartFunction()
724 if (CGM.isInNoSanitizeList(SanitizerKind::ID, Fn, Loc)) \ in StartFunction()
754 Fn->addFnAttr(llvm::Attribute::NoSanitizeBounds); in StartFunction()
757 Fn->addFnAttr(llvm::Attribute::NoSanitizeCoverage); in StartFunction()
765 Fn->addFnAttr(llvm::Attribute::SanitizeAddress); in StartFunction()
768 Fn->addFnAttr(llvm::Attribute::SanitizeHWAddress); in StartFunction()
770 Fn->addFnAttr(llvm::Attribute::SanitizeMemTag); in StartFunction()
772 Fn->addFnAttr(llvm::Attribute::SanitizeThread); in StartFunction()
774 Fn->addFnAttr(llvm::Attribute::SanitizeMemory); in StartFunction()
777 Fn->addFnAttr(llvm::Attribute::SafeStack); in StartFunction()
779 Fn->addFnAttr(llvm::Attribute::ShadowCallStack); in StartFunction()
783 Fn->addFnAttr(llvm::Attribute::OptForFuzzing); in StartFunction()
793 markAsIgnoreThreadCheckingAtRuntime(Fn); in StartFunction()
822 Fn->addFnAttr("function-instrument", "xray-always"); in StartFunction()
826 Fn->addFnAttr("function-instrument", "xray-never"); in StartFunction()
829 Fn->addFnAttr("xray-log-args", in StartFunction()
833 if (ShouldXRayInstrumentFunction() && !CGM.imbueXRayAttrs(Fn, Loc)) in StartFunction()
834 Fn->addFnAttr( in StartFunction()
841 Fn->addFnAttr("xray-ignore-loops"); in StartFunction()
845 Fn->addFnAttr("xray-skip-exit"); in StartFunction()
849 Fn->addFnAttr("xray-skip-entry"); in StartFunction()
858 Fn->addFnAttr("function-instrument", "xray-never"); in StartFunction()
863 switch (CGM.isFunctionBlockedFromProfileInstr(Fn, Loc)) { in StartFunction()
865 Fn->addFnAttr(llvm::Attribute::SkipProfile); in StartFunction()
868 Fn->addFnAttr(llvm::Attribute::NoProfile); in StartFunction()
885 Fn->addFnAttr("patchable-function-entry", std::to_string(Count - Offset)); in StartFunction()
887 Fn->addFnAttr("patchable-function-prefix", std::to_string(Offset)); in StartFunction()
897 Fn->addFnAttr("patchable-function", "prologue-short-redirect"); in StartFunction()
901 Fn->addFnAttr("no-jump-tables", "true"); in StartFunction()
905 Fn->addFnAttr("no-inline-line-tables"); in StartFunction()
909 Fn->addFnAttr("profile-sample-accurate"); in StartFunction()
912 Fn->addFnAttr("use-sample-profile"); in StartFunction()
915 Fn->addFnAttr("cfi-canonical-jump-table"); in StartFunction()
918 Fn->addFnAttr(llvm::Attribute::NoProfile); in StartFunction()
927 Fn->addFnAttr(llvm::Attribute::FnRetThunkExtern); in StartFunction()
931 Fn->addFnAttr(llvm::Attribute::FnRetThunkExtern); in StartFunction()
937 EmitKernelMetadata(FD, Fn); in StartFunction()
952 llvm::LLVMContext &Ctx = Fn->getContext(); in StartFunction()
954 Fn->setMetadata(llvm::LLVMContext::MD_func_sanitize, in StartFunction()
986 Fn->addFnAttr(llvm::Attribute::NoRecurse); in StartFunction()
997 Fn->addFnAttr(llvm::Attribute::StrictFP); in StartFunction()
1004 Fn->addFnAttr("stackrealign"); in StartFunction()
1008 Fn->removeFnAttr("zero-call-used-regs"); in StartFunction()
1060 Fn->addFnAttr("fentry-call", "true"); in StartFunction()
1062 Fn->addFnAttr("instrument-function-entry-inlined", in StartFunction()
1069 Fn->addFnAttr("mnop-mcount"); in StartFunction()
1076 Fn->addFnAttr("mrecord-mcount"); in StartFunction()
1086 Fn->addFnAttr("packed-stack"); in StartFunction()
1091 Fn->addFnAttr("warn-stack-size", in StartFunction()
1152 CGM.getHLSLRuntime().emitEntryFunction(FD, Fn); in StartFunction()
1339 void CodeGenFunction::GenerateCode(GlobalDecl GD, llvm::Function *Fn, in GenerateCode() argument
1341 assert(Fn && "generating code for null Function"); in GenerateCode()
1352 std::string FDInlineName = (Fn->getName() + ".inline").str(); in GenerateCode()
1353 llvm::Module *M = Fn->getParent(); in GenerateCode()
1356 Clone = llvm::Function::Create(Fn->getFunctionType(), in GenerateCode()
1358 Fn->getAddressSpace(), FDInlineName, M); in GenerateCode()
1361 Fn->setLinkage(llvm::GlobalValue::ExternalLinkage); in GenerateCode()
1362 Fn = Clone; in GenerateCode()
1372 std::string FDInlineName = (Fn->getName() + ".inline").str(); in GenerateCode()
1373 llvm::Module *M = Fn->getParent(); in GenerateCode()
1375 Clone->replaceAllUsesWith(Fn); in GenerateCode()
1387 Fn->setSubprogram(nullptr); in GenerateCode()
1428 StartFunction(GD, ResTy, Fn, FnInfo, Args, Loc, BodyRange.getBegin()); in GenerateCode()