Lines Matching defs:DstTy
68 void addTypeMapping(Type *DstTy, Type *SrcTy);
88 bool areTypesIsomorphic(Type *DstTy, Type *SrcTy);
92 void TypeMapTy::addTypeMapping(Type *DstTy, Type *SrcTy) {
98 if (!areTypesIsomorphic(DstTy, SrcTy)) {
109 // SrcTy and DstTy are recursively ismorphic. We clear names of SrcTy
126 bool TypeMapTy::areTypesIsomorphic(Type *DstTy, Type *SrcTy) {
128 if (DstTy->getTypeID() != SrcTy->getTypeID())
134 return Entry == DstTy;
138 if (DstTy == SrcTy) {
139 Entry = DstTy;
149 Entry = DstTy;
158 if (cast<StructType>(DstTy)->isOpaque()) {
160 if (!DstResolvedOpaqueTypes.insert(cast<StructType>(DstTy)).second)
164 SpeculativeDstOpaqueTypes.push_back(cast<StructType>(DstTy));
165 Entry = DstTy;
171 if (SrcTy->getNumContainedTypes() != DstTy->getNumContainedTypes())
175 if (isa<IntegerType>(DstTy))
177 if (PointerType *PT = dyn_cast<PointerType>(DstTy)) {
180 } else if (FunctionType *FT = dyn_cast<FunctionType>(DstTy)) {
183 } else if (StructType *DSTy = dyn_cast<StructType>(DstTy)) {
188 } else if (auto *DArrTy = dyn_cast<ArrayType>(DstTy)) {
191 } else if (auto *DVecTy = dyn_cast<VectorType>(DstTy)) {
198 Entry = DstTy;
202 if (!areTypesIsomorphic(DstTy->getContainedType(I),
951 ArrayType *DstTy = cast<ArrayType>(DstGV->getValueType());
952 DstNumElements = DstTy->getNumElements();
955 if (EltTy != DstTy->getElementType())