Lines Matching refs:cir
70 VoidTy = cir::VoidType::get(&getMLIRContext());
71 VoidPtrTy = cir::PointerType::get(VoidTy);
72 SInt8Ty = cir::IntType::get(&getMLIRContext(), 8, /*isSigned=*/true);
73 SInt16Ty = cir::IntType::get(&getMLIRContext(), 16, /*isSigned=*/true);
74 SInt32Ty = cir::IntType::get(&getMLIRContext(), 32, /*isSigned=*/true);
75 SInt64Ty = cir::IntType::get(&getMLIRContext(), 64, /*isSigned=*/true);
76 SInt128Ty = cir::IntType::get(&getMLIRContext(), 128, /*isSigned=*/true);
77 UInt8Ty = cir::IntType::get(&getMLIRContext(), 8, /*isSigned=*/false);
78 UInt16Ty = cir::IntType::get(&getMLIRContext(), 16, /*isSigned=*/false);
79 UInt32Ty = cir::IntType::get(&getMLIRContext(), 32, /*isSigned=*/false);
80 UInt64Ty = cir::IntType::get(&getMLIRContext(), 64, /*isSigned=*/false);
81 UInt128Ty = cir::IntType::get(&getMLIRContext(), 128, /*isSigned=*/false);
82 FP16Ty = cir::FP16Type::get(&getMLIRContext());
83 BFloat16Ty = cir::BF16Type::get(&getMLIRContext());
84 FloatTy = cir::SingleType::get(&getMLIRContext());
85 DoubleTy = cir::DoubleType::get(&getMLIRContext());
86 FP80Ty = cir::FP80Type::get(&getMLIRContext());
87 FP128Ty = cir::FP128Type::get(&getMLIRContext());
101 cir::IntType::get(&getMLIRContext(), sizeTypeSize, /*isSigned=*/false);
103 cir::IntType::get(&getMLIRContext(), sizeTypeSize, /*isSigned=*/true);
105 theModule->setAttr(cir::CIRDialect::getTripleAttrName(),
109 theModule->setAttr(cir::CIRDialect::getOptInfoAttrName(),
110 cir::OptInfoAttr::get(&mlirContext,
138 assert(!cir::MissingFeatures::opTBAA()); in getNaturalTypeAlignment()
177 assert(!cir::MissingFeatures::alignCXXRecordDecl()); in getNaturalTypeAlignment()
198 assert(!cir::MissingFeatures::targetCIRGenInfoArch()); in getTargetCIRGenInfo()
206 assert(!cir::MissingFeatures::targetCIRGenInfoOS()); in getTargetCIRGenInfo()
247 cir::FuncType ty = getTypes().getFunctionType(fi); in getAddrOfGlobal()
254 cir::FuncType ty = getTypes().getFunctionType(fi); in getAddrOfGlobal()
285 if (auto gv = dyn_cast<cir::GetGlobalOp>(op)) in emitGlobalDecl()
290 dyn_cast<cir::CIRGlobalValueInterface>(globalValueOp)) in emitGlobalDecl()
295 assert(!cir::MissingFeatures::openMP()); in emitGlobalDecl()
306 assert(!cir::MissingFeatures::openMP()); in emitDeferred()
307 assert(!cir::MissingFeatures::deferredVtables()); in emitDeferred()
308 assert(!cir::MissingFeatures::cudaSupport()); in emitDeferred()
358 assert(!cir::MissingFeatures::openMP()); in emitGlobal()
382 assert(!cir::MissingFeatures::deferredCXXGlobalInit()); in emitGlobal()
403 cir::FuncType funcType = getTypes().getFunctionType(fi); in emitGlobalFunctionDefinition()
404 cir::FuncOp funcOp = dyn_cast_if_present<cir::FuncOp>(op); in emitGlobalFunctionDefinition()
416 assert(!cir::MissingFeatures::opFuncMaybeHandleStaticInExternC()); in emitGlobalFunctionDefinition()
418 assert(!cir::MissingFeatures::setLLVMFunctionFEnvAttributes()); in emitGlobalFunctionDefinition()
429 assert(!cir::MissingFeatures::opFuncAttributesForDefinition()); in emitGlobalFunctionDefinition()
444 cir::GlobalOp CIRGenModule::createGlobalOp(CIRGenModule &cgm, in createGlobalOp()
448 cir::GlobalOp g; in createGlobalOp()
467 g = builder.create<cir::GlobalOp>(loc, name, t); in createGlobalOp()
483 assert(!cir::MissingFeatures::defaultVisibility()); in setCommonAttributes()
484 assert(!cir::MissingFeatures::opGlobalUsedOrCompilerUsed()); in setCommonAttributes()
490 assert(!cir::MissingFeatures::opGlobalUsedOrCompilerUsed()); in setNonAliasAttributes()
491 assert(!cir::MissingFeatures::opGlobalSection()); in setNonAliasAttributes()
492 assert(!cir::MissingFeatures::opFuncCPUAndFeaturesAttributes()); in setNonAliasAttributes()
493 assert(!cir::MissingFeatures::opFuncSection()); in setNonAliasAttributes()
495 assert(!cir::MissingFeatures::setTargetAttributes()); in setNonAliasAttributes()
498 static void setLinkageForGV(cir::GlobalOp &gv, const NamedDecl *nd) { in setLinkageForGV()
506 gv.setLinkage(cir::GlobalLinkageKind::ExternalWeakLinkage); in setLinkageForGV()
523 cir::GlobalOp
528 cir::GlobalOp entry; in getOrCreateCIRGlobal()
530 if (!isa<cir::GlobalOp>(v)) in getOrCreateCIRGlobal()
532 entry = cast<cir::GlobalOp>(v); in getOrCreateCIRGlobal()
536 assert(!cir::MissingFeatures::addressSpace()); in getOrCreateCIRGlobal()
537 assert(!cir::MissingFeatures::opGlobalWeakRef()); in getOrCreateCIRGlobal()
539 assert(!cir::MissingFeatures::setDLLStorageClass()); in getOrCreateCIRGlobal()
540 assert(!cir::MissingFeatures::openMP()); in getOrCreateCIRGlobal()
568 cir::GlobalOp gv = in getOrCreateCIRGlobal()
589 assert(!cir::MissingFeatures::opGlobalConstant()); in getOrCreateCIRGlobal()
603 assert(!cir::MissingFeatures::opGlobalSection()); in getOrCreateCIRGlobal()
623 cir::GlobalOp
649 assert(!cir::MissingFeatures::opGlobalThreadLocal()); in getAddrOfGlobalVar()
651 cir::GlobalOp g = getOrCreateCIRGlobal(d, ty, isForDefinition); in getAddrOfGlobalVar()
653 return builder.create<cir::GetGlobalOp>(getLoc(d->getSourceRange()), ptrTy, in getAddrOfGlobalVar()
671 assert(!cir::MissingFeatures::needsGlobalCtorDtor()); in emitGlobalVarDefinition()
689 assert(!cir::MissingFeatures::cudaSupport()); in emitGlobalVarDefinition()
744 cir::GlobalOp gv = in emitGlobalVarDefinition()
753 assert(!cir::MissingFeatures::maybeHandleStaticInExternC()); in emitGlobalVarDefinition()
769 cir::GlobalLinkageKind linkage = in emitGlobalVarDefinition()
776 assert(!cir::MissingFeatures::opGlobalDLLImportExport()); in emitGlobalVarDefinition()
777 if (linkage == cir::GlobalLinkageKind::CommonLinkage) in emitGlobalVarDefinition()
782 assert(!cir::MissingFeatures::opGlobalThreadLocal()); in emitGlobalVarDefinition()
879 if (auto globalOp = dyn_cast_or_null<cir::GlobalOp>(op)) { in maybeSetTrivialComdat()
882 auto funcOp = cast<cir::FuncOp>(op); in maybeSetTrivialComdat()
896 void CIRGenModule::replacePointerTypeArgs(cir::FuncOp oldF, cir::FuncOp newF) { in replacePointerTypeArgs()
904 auto call = mlir::dyn_cast<cir::CallOp>(u.getUser()); in replacePointerTypeArgs()
928 assert(isa<cir::FuncOp>(entry) && "expected function"); in applyReplacements()
929 auto oldF = cast<cir::FuncOp>(entry); in applyReplacements()
930 auto newF = dyn_cast<cir::FuncOp>(replacement); in applyReplacements()
1028 cir::GlobalLinkageKind CIRGenModule::getCIRLinkageForDeclarator( in getCIRLinkageForDeclarator()
1031 return cir::GlobalLinkageKind::InternalLinkage; in getCIRLinkageForDeclarator()
1035 return cir::GlobalLinkageKind::WeakODRLinkage; in getCIRLinkageForDeclarator()
1036 return cir::GlobalLinkageKind::WeakAnyLinkage; in getCIRLinkageForDeclarator()
1041 return cir::GlobalLinkageKind::LinkOnceAnyLinkage; in getCIRLinkageForDeclarator()
1046 return cir::GlobalLinkageKind::AvailableExternallyLinkage; in getCIRLinkageForDeclarator()
1061 ? cir::GlobalLinkageKind::LinkOnceODRLinkage in getCIRLinkageForDeclarator()
1062 : cir::GlobalLinkageKind::InternalLinkage; in getCIRLinkageForDeclarator()
1076 return cir::GlobalLinkageKind::ExternalLinkage; in getCIRLinkageForDeclarator()
1080 ? cir::GlobalLinkageKind::ExternalLinkage in getCIRLinkageForDeclarator()
1081 : cir::GlobalLinkageKind::InternalLinkage; in getCIRLinkageForDeclarator()
1082 return cir::GlobalLinkageKind::WeakODRLinkage; in getCIRLinkageForDeclarator()
1091 return cir::GlobalLinkageKind::CommonLinkage; in getCIRLinkageForDeclarator()
1099 return cir::GlobalLinkageKind::WeakODRLinkage; in getCIRLinkageForDeclarator()
1103 return cir::GlobalLinkageKind::ExternalLinkage; in getCIRLinkageForDeclarator()
1106 cir::GlobalLinkageKind
1113 cir::GlobalLinkageKind CIRGenModule::getFunctionLinkage(GlobalDecl gd) { in getFunctionLinkage()
1124 static cir::GlobalOp
1126 cir::GlobalLinkageKind lt, CIRGenModule &cgm, in generateStringLiteral()
1128 assert(!cir::MissingFeatures::addressSpace()); in generateStringLiteral()
1132 cir::GlobalOp gv = in generateStringLiteral()
1138 cir::GlobalLinkageKindAttr::get(cgm.getBuilder().getContext(), lt)); in generateStringLiteral()
1139 assert(!cir::MissingFeatures::opGlobalThreadLocal()); in generateStringLiteral()
1140 assert(!cir::MissingFeatures::opGlobalUnnamedAddr()); in generateStringLiteral()
1175 cir::GlobalOp CIRGenModule::getGlobalForStringLiteral(const StringLiteral *s, in getGlobalForStringLiteral()
1201 cir::GlobalOp gv = in getGlobalForStringLiteral()
1202 generateStringLiteral(loc, typedC, cir::GlobalLinkageKind::PrivateLinkage, in getGlobalForStringLiteral()
1206 assert(!cir::MissingFeatures::sanitizers()); in getGlobalForStringLiteral()
1266 assert(!cir::MissingFeatures::generateDebugInfo()); in emitTopLevelDecl()
1289 assert(!cir::MissingFeatures::generateDebugInfo()); in emitTopLevelDecl()
1290 assert(!cir::MissingFeatures::cxxRecordStaticMembers()); in emitTopLevelDecl()
1295 void CIRGenModule::setInitializer(cir::GlobalOp &op, mlir::Attribute value) { in setInitializer()
1298 assert(!cir::MissingFeatures::opGlobalVisibility()); in setInitializer()
1301 std::pair<cir::FuncType, cir::FuncOp> CIRGenModule::getAddrAndTypeOfCXXStructor( in getAddrAndTypeOfCXXStructor()
1302 GlobalDecl gd, const CIRGenFunctionInfo *fnInfo, cir::FuncType fnType, in getAddrAndTypeOfCXXStructor()
1329 cir::FuncOp CIRGenModule::getAddrOfFunction(clang::GlobalDecl gd, in getAddrOfFunction()
1353 cir::FuncOp func = in getAddrOfFunction()
1366 assert(!cir::MissingFeatures::moduleNameHash()); in getMangledNameImpl()
1392 assert(!cir::MissingFeatures::moduleNameHash()); in getMangledNameImpl()
1438 if (gv && !mlir::cast<cir::GlobalOp>(gv).isDeclaration()) in emitTentativeDefinition()
1519 cir::CIRGlobalValueInterface gv) { in shouldAssumeDSOLocal()
1529 assert(!cir::MissingFeatures::opGlobalDLLImportExport()); in shouldAssumeDSOLocal()
1571 if (!(isa<cir::FuncOp>(gv) && gv.canBenefitFromLocalAlias())) in shouldAssumeDSOLocal()
1596 if (auto globalOp = dyn_cast<cir::GlobalOp>(gv.getOperation())) { in shouldAssumeDSOLocal()
1598 assert(!cir::MissingFeatures::opGlobalThreadLocal()); in shouldAssumeDSOLocal()
1608 if (isa<cir::FuncOp>(gv) && !cgOpts.NoPLT && rm == llvm::Reloc::Static) in shouldAssumeDSOLocal()
1621 assert(!cir::MissingFeatures::opGlobalVisibility()); in setGlobalVisibility()
1624 void CIRGenModule::setDSOLocal(cir::CIRGlobalValueInterface gv) const { in setDSOLocal()
1629 if (auto globalValue = dyn_cast<cir::CIRGlobalValueInterface>(op)) in setDSOLocal()
1635 assert(!cir::MissingFeatures::opGlobalDLLImportExport()); in setGVProperties()
1643 assert(!cir::MissingFeatures::opGlobalPartition()); in setGVPropertiesAux()
1647 cir::FuncOp func, in setFunctionAttributes()
1654 assert(!cir::MissingFeatures::setFunctionAttributes()); in setFunctionAttributes()
1655 assert(!cir::MissingFeatures::setTargetAttributes()); in setFunctionAttributes()
1667 cir::FuncOp CIRGenModule::getOrCreateCIRFunction( in getOrCreateCIRFunction()
1695 if (!isa<cir::FuncOp>(entry)) in getOrCreateCIRFunction()
1698 assert(!cir::MissingFeatures::weakRefReference()); in getOrCreateCIRFunction()
1702 assert(!cir::MissingFeatures::setDLLStorageClass()); in getOrCreateCIRFunction()
1708 auto fn = cast<cir::FuncOp>(entry); in getOrCreateCIRFunction()
1728 cir::FuncOp funcOp = createCIRFunction( in getOrCreateCIRFunction()
1730 mangledName, mlir::cast<cir::FuncType>(funcType), funcDecl); in getOrCreateCIRFunction()
1789 cir::FuncOp
1791 cir::FuncType funcType, in createCIRFunction()
1793 cir::FuncOp func; in createCIRFunction()
1805 func = builder.create<cir::FuncOp>(loc, name, funcType); in createCIRFunction()
1807 assert(!cir::MissingFeatures::opFuncAstDeclAttr()); in createCIRFunction()
1808 assert(!cir::MissingFeatures::opFuncNoProto()); in createCIRFunction()
1814 func.setLinkageAttr(cir::GlobalLinkageKindAttr::get( in createCIRFunction()
1815 &getMLIRContext(), cir::GlobalLinkageKind::ExternalLinkage)); in createCIRFunction()
1819 assert(!cir::MissingFeatures::opFuncExtraAttrs()); in createCIRFunction()
1828 CIRGenModule::getMLIRVisibilityFromCIRLinkage(cir::GlobalLinkageKind glk) { in getMLIRVisibilityFromCIRLinkage()
1830 case cir::GlobalLinkageKind::InternalLinkage: in getMLIRVisibilityFromCIRLinkage()
1831 case cir::GlobalLinkageKind::PrivateLinkage: in getMLIRVisibilityFromCIRLinkage()
1833 case cir::GlobalLinkageKind::ExternalLinkage: in getMLIRVisibilityFromCIRLinkage()
1834 case cir::GlobalLinkageKind::ExternalWeakLinkage: in getMLIRVisibilityFromCIRLinkage()
1835 case cir::GlobalLinkageKind::LinkOnceODRLinkage: in getMLIRVisibilityFromCIRLinkage()
1836 case cir::GlobalLinkageKind::AvailableExternallyLinkage: in getMLIRVisibilityFromCIRLinkage()
1837 case cir::GlobalLinkageKind::CommonLinkage: in getMLIRVisibilityFromCIRLinkage()
1838 case cir::GlobalLinkageKind::WeakAnyLinkage: in getMLIRVisibilityFromCIRLinkage()
1839 case cir::GlobalLinkageKind::WeakODRLinkage: in getMLIRVisibilityFromCIRLinkage()
1850 cir::VisibilityKind CIRGenModule::getGlobalVisibilityKindFromClangVisibility( in getGlobalVisibilityKindFromClangVisibility()
1854 return cir::VisibilityKind::Default; in getGlobalVisibilityKindFromClangVisibility()
1856 return cir::VisibilityKind::Hidden; in getGlobalVisibilityKindFromClangVisibility()
1858 return cir::VisibilityKind::Protected; in getGlobalVisibilityKindFromClangVisibility()
1863 cir::VisibilityAttr
1866 cir::VisibilityAttr cirVisibility = in getGlobalVisibilityAttrFromDecl()
1867 cir::VisibilityAttr::get(&getMLIRContext()); in getGlobalVisibilityAttrFromDecl()
1869 cirVisibility = cir::VisibilityAttr::get( in getGlobalVisibilityAttrFromDecl()
1881 assert(!cir::MissingFeatures::cgmRelease()); in release()
1886 cir::FuncOp aliasee, in emitAliasForGlobal()
1887 cir::GlobalLinkageKind linkage) { in emitAliasForGlobal()
1897 cir::FuncType fnType = getTypes().getFunctionType(fnInfo); in emitAliasForGlobal()
1899 cir::FuncOp alias = in emitAliasForGlobal()
1911 assert(!cir::MissingFeatures::opGlobalUnnamedAddr()); in emitAliasForGlobal()