Lines Matching defs:SrcTy
74 void addTypeMapping(Type *DstTy, Type *SrcTy);
82 Type *get(Type *SrcTy);
83 Type *get(Type *SrcTy, SmallPtrSet<StructType *, 8> &Visited);
90 Type *remapType(Type *SrcTy) override { return get(SrcTy); }
92 bool areTypesIsomorphic(Type *DstTy, Type *SrcTy);
96 void TypeMapTy::addTypeMapping(Type *DstTy, Type *SrcTy) {
102 if (!areTypesIsomorphic(DstTy, SrcTy)) {
113 // SrcTy and DstTy are recursively ismorphic. We clear names of SrcTy
130 bool TypeMapTy::areTypesIsomorphic(Type *DstTy, Type *SrcTy) {
132 if (DstTy->getTypeID() != SrcTy->getTypeID())
136 Type *&Entry = MappedTypes[SrcTy];
142 if (DstTy == SrcTy) {
150 if (StructType *SSTy = dyn_cast<StructType>(SrcTy)) {
154 SpeculativeTypes.push_back(SrcTy);
167 SpeculativeTypes.push_back(SrcTy);
175 if (SrcTy->getNumContainedTypes() != DstTy->getNumContainedTypes())
182 if (PT->getAddressSpace() != cast<PointerType>(SrcTy)->getAddressSpace())
185 if (FT->isVarArg() != cast<FunctionType>(SrcTy)->isVarArg())
188 StructType *SSTy = cast<StructType>(SrcTy);
193 if (DArrTy->getNumElements() != cast<ArrayType>(SrcTy)->getNumElements())
196 if (DVecTy->getElementCount() != cast<VectorType>(SrcTy)->getElementCount())
203 SpeculativeTypes.push_back(SrcTy);
205 for (unsigned I = 0, E = SrcTy->getNumContainedTypes(); I != E; ++I)
207 SrcTy->getContainedType(I)))