Lines Matching refs:SrcTy
49 void addTypeMapping(Type *DstTy, Type *SrcTy);
57 Type *get(Type *SrcTy);
64 Type *remapType(Type *SrcTy) { in remapType() argument
65 return get(SrcTy); in remapType()
68 bool areTypesIsomorphic(Type *DstTy, Type *SrcTy);
72 void TypeMapTy::addTypeMapping(Type *DstTy, Type *SrcTy) { in addTypeMapping() argument
73 Type *&Entry = MappedTypes[SrcTy]; in addTypeMapping()
76 if (DstTy == SrcTy) { in addTypeMapping()
83 if (!areTypesIsomorphic(DstTy, SrcTy)) { in addTypeMapping()
94 bool TypeMapTy::areTypesIsomorphic(Type *DstTy, Type *SrcTy) { in areTypesIsomorphic() argument
96 if (DstTy->getTypeID() != SrcTy->getTypeID()) return false; in areTypesIsomorphic()
99 Type *&Entry = MappedTypes[SrcTy]; in areTypesIsomorphic()
105 if (DstTy == SrcTy) { in areTypesIsomorphic()
113 if (StructType *SSTy = dyn_cast<StructType>(SrcTy)) { in areTypesIsomorphic()
117 SpeculativeTypes.push_back(SrcTy); in areTypesIsomorphic()
131 if (SrcTy->getNumContainedTypes() != DstTy->getNumContainedTypes()) in areTypesIsomorphic()
138 if (PT->getAddressSpace() != cast<PointerType>(SrcTy)->getAddressSpace()) in areTypesIsomorphic()
141 if (FT->isVarArg() != cast<FunctionType>(SrcTy)->isVarArg()) in areTypesIsomorphic()
144 StructType *SSTy = cast<StructType>(SrcTy); in areTypesIsomorphic()
149 if (DATy->getNumElements() != cast<ArrayType>(SrcTy)->getNumElements()) in areTypesIsomorphic()
152 if (DVTy->getNumElements() != cast<ArrayType>(SrcTy)->getNumElements()) in areTypesIsomorphic()
159 SpeculativeTypes.push_back(SrcTy); in areTypesIsomorphic()
161 for (unsigned i = 0, e = SrcTy->getNumContainedTypes(); i != e; ++i) in areTypesIsomorphic()
163 SrcTy->getContainedType(i))) in areTypesIsomorphic()
560 ArrayType *SrcTy = in linkAppendingVarProto() local
565 if (EltTy != SrcTy->getElementType()) in linkAppendingVarProto()
582 uint64_t NewSize = DstTy->getNumElements() + SrcTy->getNumElements(); in linkAppendingVarProto()