Lines Matching defs:llvmFunc
1255 /// `value` to LLVM function `llvmFunc`. Reports errors at `loc` if any. If the
1261 llvm::Function *llvmFunc,
1266 llvmFunc->addFnAttr(key, value);
1276 llvmFunc->addFnAttr(
1277 llvm::Attribute::get(llvmFunc->getContext(), kind, result));
1279 llvmFunc->addFnAttr(key, value);
1288 llvmFunc->addFnAttr(kind);
1327 /// Attaches the attributes listed in the given array attribute to `llvmFunc`.
1336 llvm::Function *llvmFunc) {
1343 checkedAddLLVMFnAttribute(loc, llvmFunc, stringAttr.getValue())))
1359 if (failed(checkedAddLLVMFnAttribute(loc, llvmFunc, keyAttr.getValue(),
1372 llvm::Function *llvmFunc = lookupFunction(func.getName());
1376 llvm::zip(func.getArguments(), llvmFunc->args()))
1381 llvm::Type *ty = llvm::PointerType::getUnqual(llvmFunc->getContext());
1384 llvmFunc->setPersonalityFn(pfunc);
1388 llvmFunc->setSection(*section);
1391 llvmFunc->addFnAttr("aarch64_pstate_sm_enabled");
1393 llvmFunc->addFnAttr("aarch64_pstate_sm_body");
1395 llvmFunc->addFnAttr("aarch64_pstate_sm_compatible");
1398 llvmFunc->addFnAttr("aarch64_new_za");
1400 llvmFunc->addFnAttr("aarch64_in_za");
1402 llvmFunc->addFnAttr("aarch64_out_za");
1404 llvmFunc->addFnAttr("aarch64_inout_za");
1406 llvmFunc->addFnAttr("aarch64_preserves_za");
1409 llvmFunc->addFnAttr("target-cpu", *targetCpu);
1412 llvmFunc->addFnAttr("tune-cpu", *tuneCpu);
1415 llvmFunc->addFnAttr("target-features", targetFeatures->getFeaturesString());
1418 llvmFunc->addFnAttr(llvm::Attribute::getWithVScaleRangeArgs(
1423 llvmFunc->addFnAttr("unsafe-fp-math", llvm::toStringRef(*unsafeFpMath));
1426 llvmFunc->addFnAttr("no-infs-fp-math", llvm::toStringRef(*noInfsFpMath));
1429 llvmFunc->addFnAttr("no-nans-fp-math", llvm::toStringRef(*noNansFpMath));
1432 llvmFunc->addFnAttr("approx-func-fp-math",
1436 llvmFunc->addFnAttr("no-signed-zeros-fp-math",
1440 llvmFunc->addFnAttr("denormal-fp-math", *denormalFpMath);
1443 llvmFunc->addFnAttr("denormal-fp-math-f32", *denormalFpMathF32);
1446 llvmFunc->addFnAttr("fp-contract", *fpContract);
1450 llvmFunc->addFnAttr("frame-pointer",
1455 llvm::LLVMContext &llvmContext = llvmFunc->getContext();
1458 llvmBB->insertInto(llvmFunc);
1489 /// `llvmFunc`.
1491 llvm::Function *llvmFunc) {
1507 llvmFunc->setMemoryEffects(newMemEffects);
1510 /// Converts function attributes from `func` and attaches them to `llvmFunc`.
1512 llvm::Function *llvmFunc) {
1514 llvmFunc->addFnAttr(llvm::Attribute::NoInline);
1516 llvmFunc->addFnAttr(llvm::Attribute::AlwaysInline);
1518 llvmFunc->addFnAttr(llvm::Attribute::OptimizeNone);
1520 llvmFunc->addFnAttr(llvm::Attribute::Convergent);
1522 llvmFunc->addFnAttr(llvm::Attribute::NoUnwind);
1524 llvmFunc->addFnAttr(llvm::Attribute::WillReturn);
1525 convertFunctionMemoryAttributes(func, llvmFunc);
1528 /// Converts function attributes from `func` and attaches them to `llvmFunc`.
1530 llvm::Function *llvmFunc,
1532 llvm::LLVMContext &llvmContext = llvmFunc->getContext();
1538 llvmFunc->setMetadata(
1545 llvmFunc->setMetadata(
1552 llvmFunc->setMetadata(
1559 llvmFunc->setMetadata(
1606 llvm::Function *llvmFunc = cast<llvm::Function>(llvmFuncCst.getCallee());
1607 llvmFunc->setLinkage(convertLinkageToLLVM(function.getLinkage()));
1608 llvmFunc->setCallingConv(convertCConvToLLVM(function.getCConv()));
1609 mapFunction(function.getName(), llvmFunc);
1610 addRuntimePreemptionSpecifier(function.getDsoLocal(), llvmFunc);
1613 convertFunctionAttributes(function, llvmFunc);
1616 convertFunctionKernelAttributes(function, llvmFunc, *this);
1620 llvmFunc->setEntryCount(entryCount.value());
1629 llvmFunc->addRetAttrs(*attrBuilder);
1633 for (auto [argIdx, llvmArg] : llvm::enumerate(llvmFunc->args())) {
1645 function.getLoc(), function.getPassthrough(), llvmFunc)))
1649 llvmFunc->setVisibility(convertVisibilityToLLVM(function.getVisibility_()));
1655 llvmFunc->setComdat(comdatMapping.lookup(selectorOp));
1659 llvmFunc->setGC(gc->str());
1662 llvmFunc->setUnnamedAddr(convertUnnamedAddrToLLVM(*unnamedAddr));
1665 llvmFunc->setAlignment(llvm::MaybeAlign(*alignment));
1668 debugTranslation->translate(function, *llvmFunc);