Lines Matching defs:SrcTy
64 void addTypeMapping(Type *DstTy, Type *SrcTy);
72 Type *get(Type *SrcTy);
91 Type *remapType(Type *SrcTy) override {
92 return get(SrcTy);
95 bool areTypesIsomorphic(Type *DstTy, Type *SrcTy);
99 void TypeMapTy::addTypeMapping(Type *DstTy, Type *SrcTy) {
100 Type *&Entry = MappedTypes[SrcTy];
103 if (DstTy == SrcTy) {
110 if (!areTypesIsomorphic(DstTy, SrcTy)) {
121 bool TypeMapTy::areTypesIsomorphic(Type *DstTy, Type *SrcTy) {
123 if (DstTy->getTypeID() != SrcTy->getTypeID()) return false;
126 Type *&Entry = MappedTypes[SrcTy];
132 if (DstTy == SrcTy) {
140 if (StructType *SSTy = dyn_cast<StructType>(SrcTy)) {
144 SpeculativeTypes.push_back(SrcTy);
164 if (SrcTy->getNumContainedTypes() != DstTy->getNumContainedTypes())
171 if (PT->getAddressSpace() != cast<PointerType>(SrcTy)->getAddressSpace())
175 if (FT->isVarArg() != cast<FunctionType>(SrcTy)->isVarArg())
178 StructType *SSTy = cast<StructType>(SrcTy);
183 if (DATy->getNumElements() != cast<ArrayType>(SrcTy)->getNumElements())
186 if (DVTy->getNumElements() != cast<VectorType>(SrcTy)->getNumElements())
193 SpeculativeTypes.push_back(SrcTy);
195 for (unsigned i = 0, e = SrcTy->getNumContainedTypes(); i != e; ++i)
197 SrcTy->getContainedType(i)))
824 ArrayType *SrcTy =
829 if (EltTy != SrcTy->getElementType())
850 uint64_t NewSize = DstTy->getNumElements() + SrcTy->getNumElements();