• Home
  • Raw
  • Download

Lines Matching refs:llvm

39 namespace llvm {
117 llvm::Constant *objc_autoreleasePoolPop;
120 llvm::Constant *objc_autoreleasePoolPush;
123 llvm::Constant *objc_autorelease;
126 llvm::Constant *objc_autoreleaseReturnValue;
129 llvm::Constant *objc_copyWeak;
132 llvm::Constant *objc_destroyWeak;
135 llvm::Constant *objc_initWeak;
138 llvm::Constant *objc_loadWeak;
141 llvm::Constant *objc_loadWeakRetained;
144 llvm::Constant *objc_moveWeak;
147 llvm::Constant *objc_retain;
150 llvm::Constant *objc_retainAutorelease;
153 llvm::Constant *objc_retainAutoreleaseReturnValue;
156 llvm::Constant *objc_retainAutoreleasedReturnValue;
159 llvm::Constant *objc_retainBlock;
162 llvm::Constant *objc_release;
165 llvm::Constant *objc_storeStrong;
168 llvm::Constant *objc_storeWeak;
171 llvm::Constant *objc_unsafeClaimAutoreleasedReturnValue;
175 llvm::InlineAsm *retainAutoreleasedReturnValueMarker;
178 llvm::Constant *clang_arc_use;
215 class BlockByrefHelpers : public llvm::FoldingSetNode {
219 llvm::Constant *CopyHelper;
220 llvm::Constant *DisposeHelper;
231 void Profile(llvm::FoldingSetNodeID &id) const { in Profile()
235 virtual void profileImpl(llvm::FoldingSetNodeID &id) const = 0;
253 Structor(int Priority, llvm::Constant *Initializer, in Structor()
254 llvm::Constant *AssociatedData) in Structor()
258 llvm::Constant *Initializer;
259 llvm::Constant *AssociatedData;
270 llvm::Module &TheModule;
274 llvm::LLVMContext &VMContext;
294 llvm::MDNode *NoObjCARCExceptionsMetadata = nullptr;
295 std::unique_ptr<llvm::IndexedInstrProfReader> PGOReader;
297 std::unique_ptr<llvm::SanitizerStatReport> SanStats;
302 llvm::SmallPtrSet<llvm::GlobalValue*, 10> WeakRefReferences;
313 DeferredGlobal(llvm::GlobalValue *GV, GlobalDecl GD) : GV(GV), GD(GD) {} in DeferredGlobal()
314 llvm::TrackingVH<llvm::GlobalValue> GV;
318 void addDeferredDeclToEmit(llvm::GlobalValue *GV, GlobalDecl GD) { in addDeferredDeclToEmit()
326 typedef llvm::StringMap<llvm::TrackingVH<llvm::Constant> > ReplacementsTy;
332 llvm::SmallVector<std::pair<llvm::GlobalValue *, llvm::Constant *>, 8>
338 llvm::DenseSet<GlobalDecl> DiagnosedConflictingDefinitions;
346 std::vector<llvm::WeakVH> LLVMUsed;
347 std::vector<llvm::WeakVH> LLVMCompilerUsed;
358 llvm::MapVector<GlobalDecl, StringRef> MangledDeclNames;
359 llvm::StringMap<GlobalDecl, llvm::BumpPtrAllocator> Manglings;
362 std::vector<llvm::Constant*> Annotations;
365 llvm::StringMap<llvm::Constant*> AnnotationStrings;
367 llvm::StringMap<llvm::GlobalVariable *> CFConstantStringMap;
369 llvm::DenseMap<llvm::Constant *, llvm::GlobalVariable *> ConstantStringMap;
370 llvm::DenseMap<const Decl*, llvm::Constant *> StaticLocalDeclMap;
371 llvm::DenseMap<const Decl*, llvm::GlobalVariable*> StaticLocalDeclGuardMap;
372 llvm::DenseMap<const Expr*, llvm::Constant *> MaterializedGlobalTemporaryMap;
374 llvm::DenseMap<QualType, llvm::Constant *> AtomicSetterHelperFnMap;
375 llvm::DenseMap<QualType, llvm::Constant *> AtomicGetterHelperFnMap;
378 llvm::DenseMap<QualType, llvm::Constant *> TypeDescriptorMap;
382 typedef llvm::MapVector<IdentifierInfo *,
383 llvm::GlobalValue *> StaticExternCMap;
391 std::vector<llvm::Function *> CXXThreadLocalInits;
395 std::vector<llvm::Function *> CXXGlobalInits;
402 llvm::DenseMap<const Decl*, unsigned> DelayedCXXInitPosition;
404 typedef std::pair<OrderGlobalInits, llvm::Function*> GlobalInitData;
418 std::vector<std::pair<llvm::WeakVH,llvm::Constant*> > CXXGlobalDtors;
421 llvm::SetVector<clang::Module *> ImportedModules;
424 SmallVector<llvm::Metadata *, 16> LinkerOptionsMetadata;
431 llvm::WeakVH CFConstantStringClassRef;
435 llvm::WeakVH ConstantStringClassRef;
438 llvm::StructType *NSConstantStringType = nullptr;
459 llvm::Constant *NSConcreteGlobalBlock = nullptr;
460 llvm::Constant *NSConcreteStackBlock = nullptr;
462 llvm::Constant *BlockObjectAssign = nullptr;
463 llvm::Constant *BlockObjectDispose = nullptr;
465 llvm::Type *BlockDescriptorType = nullptr;
466 llvm::Type *GenericBlockLiteralType = nullptr;
473 llvm::Constant *LifetimeStartFn = nullptr;
476 llvm::Constant *LifetimeEndFn = nullptr;
484 llvm::DenseMap<const Decl *, bool> DeferredEmptyCoverageMappingDecls;
491 llvm::DenseMap<QualType, llvm::Metadata *> MetadataIdMap;
496 const CodeGenOptions &CodeGenOpts, llvm::Module &M,
540 llvm::IndexedInstrProfReader *getPGOReader() const { return PGOReader.get(); } in getPGOReader()
546 llvm::Constant *getStaticLocalDeclAddress(const VarDecl *D) { in getStaticLocalDeclAddress()
550 llvm::Constant *C) { in setStaticLocalDeclAddress()
554 llvm::Constant *
556 llvm::GlobalValue::LinkageTypes Linkage);
558 llvm::GlobalVariable *getStaticLocalDeclGuardAddress(const VarDecl *D) { in getStaticLocalDeclGuardAddress()
562 llvm::GlobalVariable *C) { in setStaticLocalDeclGuardAddress()
569 llvm::Constant *getAtomicSetterHelperFnMap(QualType Ty) { in getAtomicSetterHelperFnMap()
573 llvm::Constant *Fn) { in setAtomicSetterHelperFnMap()
577 llvm::Constant *getAtomicGetterHelperFnMap(QualType Ty) { in getAtomicGetterHelperFnMap()
581 llvm::Constant *Fn) { in setAtomicGetterHelperFnMap()
585 llvm::Constant *getTypeDescriptorFromMap(QualType Ty) { in getTypeDescriptorFromMap()
588 void setTypeDescriptorInMap(QualType Ty, llvm::Constant *C) { in setTypeDescriptorInMap()
594 llvm::MDNode *getNoObjCARCExceptionsMetadata() { in getNoObjCARCExceptionsMetadata()
596 NoObjCARCExceptionsMetadata = llvm::MDNode::get(getLLVMContext(), None); in getNoObjCARCExceptionsMetadata()
607 llvm::Module &getModule() const { return TheModule; } in getModule()
609 const llvm::DataLayout &getDataLayout() const { in getDataLayout()
613 const llvm::Triple &getTriple() const;
615 void maybeSetTrivialComdat(const Decl &D, llvm::GlobalObject &GO);
618 llvm::LLVMContext &getLLVMContext() { return VMContext; } in getLLVMContext()
639 llvm::MDNode *getTBAAInfo(QualType QTy);
640 llvm::MDNode *getTBAAInfoForVTablePtr();
641 llvm::MDNode *getTBAAStructInfo(QualType QTy);
643 llvm::MDNode *getTBAAStructTagInfo(QualType BaseTy, llvm::MDNode *AccessN,
655 void DecorateInstructionWithTBAA(llvm::Instruction *Inst,
656 llvm::MDNode *TBAAInfo,
660 void DecorateInstructionWithInvariantGroup(llvm::Instruction *I,
664 llvm::ConstantInt *getSize(CharUnits numChars);
667 void setGlobalVisibility(llvm::GlobalValue *GV, const NamedDecl *D) const;
671 void setTLSMode(llvm::GlobalValue *GV, const VarDecl &D) const;
673 static llvm::GlobalValue::VisibilityTypes GetLLVMVisibility(Visibility V) { in GetLLVMVisibility()
675 case DefaultVisibility: return llvm::GlobalValue::DefaultVisibility; in GetLLVMVisibility()
676 case HiddenVisibility: return llvm::GlobalValue::HiddenVisibility; in GetLLVMVisibility()
677 case ProtectedVisibility: return llvm::GlobalValue::ProtectedVisibility; in GetLLVMVisibility()
682 llvm::Constant *GetAddrOfGlobal(GlobalDecl GD, bool IsForDefinition = false);
688 llvm::GlobalVariable *
689 CreateOrReplaceCXXRuntimeVariable(StringRef Name, llvm::Type *Ty,
690 llvm::GlobalValue::LinkageTypes Linkage);
692 llvm::Function *
693 CreateGlobalInitOrDestructFunction(llvm::FunctionType *ty, const Twine &name,
710 llvm::Constant *GetAddrOfGlobalVar(const VarDecl *D,
711 llvm::Type *Ty = nullptr,
716 llvm::Constant *GetAddrOfFunction(GlobalDecl GD, llvm::Type *Ty = nullptr,
722 llvm::Constant *GetAddrOfRTTIDescriptor(QualType Ty, bool ForEH = false);
728 llvm::Constant *GetAddrOfThunk(GlobalDecl GD, const ThunkInfo &Thunk);
755 llvm::Constant *
760 llvm::FoldingSet<BlockByrefHelpers> ByrefHelpersCache;
766 llvm::Type *getBlockDescriptorType();
769 llvm::Type *getGenericBlockLiteralType();
772 llvm::Constant *GetAddrOfGlobalBlock(const BlockExpr *BE, const char *);
783 llvm::Constant *GetConstantArrayFromStringLiteral(const StringLiteral *E);
819 llvm::Function *codegenCXXStructor(const CXXMethodDecl *MD,
823 llvm::Constant *
826 llvm::FunctionType *FnType = nullptr,
831 llvm::Value *getBuiltinLibFunction(const FunctionDecl *FD,
834 llvm::Function *getIntrinsic(unsigned IID, ArrayRef<llvm::Type*> Tys = None);
858 void MaybeHandleStaticInExternC(const SomeDecl *D, llvm::GlobalValue *GV);
861 void addUsedGlobal(llvm::GlobalValue *GV);
864 void addCompilerUsedGlobal(llvm::GlobalValue *GV);
867 void AddCXXDtorEntry(llvm::Constant *DtorFn, llvm::Constant *Object) { in AddCXXDtorEntry()
872 llvm::Constant *CreateRuntimeFunction(llvm::FunctionType *Ty,
874 llvm::AttributeSet ExtraAttrs =
875 llvm::AttributeSet());
877 llvm::Constant *CreateBuiltinFunction(llvm::FunctionType *Ty,
879 llvm::AttributeSet ExtraAttrs =
880 llvm::AttributeSet());
882 llvm::Constant *CreateRuntimeVariable(llvm::Type *Ty,
888 llvm::Constant *getNSConcreteGlobalBlock();
889 llvm::Constant *getNSConcreteStackBlock();
890 llvm::Constant *getBlockObjectAssign();
891 llvm::Constant *getBlockObjectDispose();
895 llvm::Constant *getLLVMLifetimeStartFn();
896 llvm::Constant *getLLVMLifetimeEndFn();
901 llvm::Constant *getMemberPointerConstant(const UnaryOperator *e);
905 llvm::Constant *EmitConstantInit(const VarDecl &D,
910 llvm::Constant *EmitConstantExpr(const Expr *E, QualType DestType,
915 llvm::Constant *EmitConstantValue(const APValue &Value, QualType DestType,
920 llvm::Constant *EmitConstantValueForMemory(const APValue &Value,
932 llvm::Constant *EmitNullConstant(QualType T);
936 llvm::Constant *EmitNullConstantForBase(const CXXRecordDecl *Record);
950 void SetInternalFunctionAttributes(const Decl *D, llvm::Function *F,
956 llvm::Function *F);
960 void SetLLVMFunctionAttributesForDefinition(const Decl *D, llvm::Function *F);
991 void getFunctionFeatureMap(llvm::StringMap<bool> &FeatureMap,
1012 llvm::GlobalVariable::LinkageTypes getFunctionLinkage(GlobalDecl GD);
1014 void setFunctionLinkage(GlobalDecl GD, llvm::Function *F) { in setFunctionLinkage()
1019 void setFunctionDLLStorageClass(GlobalDecl GD, llvm::Function *F);
1023 llvm::GlobalVariable::LinkageTypes getVTableLinkage(const CXXRecordDecl *RD);
1026 CharUnits GetTargetTypeStoreSize(llvm::Type *Ty) const;
1029 llvm::GlobalValue::LinkageTypes
1034 llvm::GlobalValue::LinkageTypes
1041 llvm::Constant *EmitAnnotationString(StringRef Str);
1044 llvm::Constant *EmitAnnotationUnit(SourceLocation Loc);
1047 llvm::Constant *EmitAnnotationLineNo(SourceLocation L);
1056 llvm::Constant *EmitAnnotateAttr(llvm::GlobalValue *GV,
1062 void AddGlobalAnnotations(const ValueDecl *D, llvm::GlobalValue *GV);
1064 bool isInSanitizerBlacklist(llvm::Function *Fn, SourceLocation Loc) const;
1066 bool isInSanitizerBlacklist(llvm::GlobalVariable *GV, SourceLocation Loc,
1088 llvm::Function *F);
1090 llvm::GlobalValue *GetGlobalValue(StringRef Ref);
1096 void SetCommonAttributes(const Decl *D, llvm::GlobalValue *GV);
1102 void setAliasAttributes(const Decl *D, llvm::GlobalValue *GV);
1104 void addReplacement(StringRef Name, llvm::Constant *C);
1106 void addGlobalValReplacement(llvm::GlobalValue *GV, llvm::Constant *C);
1122 void EmitVTableTypeMetadata(llvm::GlobalVariable *VTable,
1126 llvm::ConstantInt *CreateCrossDsoCfiTypeId(llvm::Metadata *MD);
1131 llvm::Metadata *CreateMetadataIdentifierForType(QualType T);
1134 void CreateFunctionTypeMetadata(const FunctionDecl *FD, llvm::Function *F);
1140 void AddVTableTypeMetadata(llvm::GlobalVariable *VTable, CharUnits Offset,
1144 llvm::Constant *getTerminateFn();
1146 llvm::SanitizerStatReport &getSanStats();
1149 llvm::Constant *
1150 GetOrCreateLLVMFunction(StringRef MangledName, llvm::Type *Ty, GlobalDecl D,
1153 llvm::AttributeSet ExtraAttrs = llvm::AttributeSet(),
1156 llvm::Constant *GetOrCreateLLVMGlobal(StringRef MangledName,
1157 llvm::PointerType *PTy,
1161 void setNonAliasAttributes(const Decl *D, llvm::GlobalObject *GO);
1164 void SetFunctionAttributes(GlobalDecl GD, llvm::Function *F,
1167 void EmitGlobalDefinition(GlobalDecl D, llvm::GlobalValue *GV = nullptr);
1169 void EmitGlobalFunctionDefinition(GlobalDecl GD, llvm::GlobalValue *GV);
1194 llvm::GlobalVariable *Addr,
1197 void EmitPointerToInitFunc(const VarDecl *VD, llvm::GlobalVariable *Addr,
1198 llvm::Function *InitFunc, InitSegAttr *ISA);
1201 void AddGlobalCtor(llvm::Function *Ctor, int Priority = 65535,
1202 llvm::Constant *AssociatedData = nullptr);
1203 void AddGlobalDtor(llvm::Function *Dtor, int Priority = 65535);
1247 llvm::Constant *EmitUuidofInitializer(StringRef uuidstr);