Lines Matching refs:Init
83 DenseMap<std::pair<RecTy *, Init *>, VarInit *> TheVarInitPool;
88 DenseMap<std::pair<Init *, StringInit *>, FieldInit *> TheFieldInitPool;
347 void Init::anchor() {} in anchor()
350 LLVM_DUMP_METHOD void Init::dump() const { return print(errs()); } in dump()
353 RecordKeeper &Init::getRecordKeeper() const { in getRecordKeeper()
363 Init *UnsetInit::getCastTo(RecTy *Ty) const { in getCastTo()
367 Init *UnsetInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
375 Init *BitInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
392 ProfileBitsInit(FoldingSetNodeID &ID, ArrayRef<Init *> Range) { in ProfileBitsInit()
395 for (Init *I : Range) in ProfileBitsInit()
399 BitsInit *BitsInit::get(RecordKeeper &RK, ArrayRef<Init *> Range) { in get()
408 void *Mem = RKImpl.Allocator.Allocate(totalSizeToAlloc<Init *>(Range.size()), in get()
412 I->getTrailingObjects<Init *>()); in get()
418 ProfileBitsInit(ID, makeArrayRef(getTrailingObjects<Init *>(), NumBits)); in Profile()
421 Init *BitsInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
447 Init *
449 SmallVector<Init *, 16> NewBits(Bits.size()); in convertInitializerBitRange()
471 if (Init *Bit = getBit(e-i-1)) in getAsString()
481 Init *BitsInit::resolveReferences(Resolver &R) const { in resolveReferences()
483 SmallVector<Init *, 16> NewBits(getNumBits()); in resolveReferences()
485 Init *CachedBitVarRef = nullptr; in resolveReferences()
486 Init *CachedBitVarResolved = nullptr; in resolveReferences()
489 Init *CurBit = getBit(i); in resolveReferences()
490 Init *NewBit = CurBit; in resolveReferences()
533 Init *IntInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
549 SmallVector<Init *, 16> NewBits(BRT->getNumBits()); in convertInitializerTo()
560 Init *
562 SmallVector<Init *, 16> NewBits(Bits.size()); in convertInitializerBitRange()
586 Init *AnonymousNameInit::resolveReferences(Resolver &R) const { in resolveReferences()
587 auto *Old = const_cast<Init *>(static_cast<const Init *>(this)); in resolveReferences()
606 Init *StringInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
614 ArrayRef<Init *> Range, in ProfileListInit()
619 for (Init *I : Range) in ProfileListInit()
623 ListInit *ListInit::get(ArrayRef<Init *> Range, RecTy *EltTy) { in get()
635 void *Mem = RK.Allocator.Allocate(totalSizeToAlloc<Init *>(Range.size()), in get()
639 I->getTrailingObjects<Init *>()); in get()
650 Init *ListInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
655 SmallVector<Init*, 8> Elements; in convertInitializerTo()
662 for (Init *I : getValues()) in convertInitializerTo()
663 if (Init *CI = I->convertInitializerTo(ElementType)) { in convertInitializerTo()
678 Init *ListInit::convertInitListSlice(ArrayRef<unsigned> Elements) const { in convertInitListSlice()
685 SmallVector<Init*, 8> Vals; in convertInitListSlice()
703 Init *ListInit::resolveReferences(Resolver &R) const { in resolveReferences()
704 SmallVector<Init*, 8> Resolved; in resolveReferences()
708 for (Init *CurElt : getValues()) { in resolveReferences()
709 Init *E = CurElt->resolveReferences(R); in resolveReferences()
720 for (Init *Element : *this) { in isComplete()
728 for (Init *Element : *this) { in isConcrete()
738 for (Init *Element : *this) { in getAsString()
746 Init *OpInit::getBit(unsigned Bit) const { in getBit()
753 ProfileUnOpInit(FoldingSetNodeID &ID, unsigned Opcode, Init *Op, RecTy *Type) { in ProfileUnOpInit()
759 UnOpInit *UnOpInit::get(UnaryOp Opc, Init *LHS, RecTy *Type) { in get()
777 Init *UnOpInit::Fold(Record *CurRec, bool IsFinal) const { in Fold()
830 if (Init *NewInit = LHS->convertInitializerTo(getType())) in Fold()
892 Init *UnOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
893 Init *lhs = LHS->resolveReferences(R); in resolveReferences()
916 ProfileBinOpInit(FoldingSetNodeID &ID, unsigned Opcode, Init *LHS, Init *RHS, in ProfileBinOpInit()
924 BinOpInit *BinOpInit::get(BinaryOp Opc, Init *LHS, Init *RHS, RecTy *Type) { in get()
994 Init *BinOpInit::getStrConcat(Init *I0, Init *I1) { in getStrConcat()
1005 SmallVector<Init *, 8> Args; in ConcatListInits()
1011 Init *BinOpInit::getListConcat(TypedInit *LHS, Init *RHS) { in getListConcat()
1021 Init *BinOpInit::Fold(Record *CurRec) const { in Fold()
1037 Init *Op = LOp ? LOp : ROp; in Fold()
1041 SmallVector<Init*, 8> Args; in Fold()
1059 SmallVector<Init *, 8> Args; in Fold()
1070 SmallVector<Init *, 8> Args(Size->getValue(), Value); in Fold()
1155 SmallVector<Init*, 8> Args; in Fold()
1201 Init *BinOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
1202 Init *lhs = LHS->resolveReferences(R); in resolveReferences()
1203 Init *rhs = RHS->resolveReferences(R); in resolveReferences()
1240 ProfileTernOpInit(FoldingSetNodeID &ID, unsigned Opcode, Init *LHS, Init *MHS, in ProfileTernOpInit()
1241 Init *RHS, RecTy *Type) { in ProfileTernOpInit()
1249 TernOpInit *TernOpInit::get(TernaryOp Opc, Init *LHS, Init *MHS, Init *RHS, in get()
1268 static Init *ItemApply(Init *LHS, Init *MHSe, Init *RHS, Record *CurRec) { in ItemApply()
1274 static Init *ForeachDagApply(Init *LHS, DagInit *MHSd, Init *RHS, in ForeachDagApply()
1277 Init *Val = ItemApply(LHS, MHSd->getOperator(), RHS, CurRec); in ForeachDagApply()
1281 SmallVector<std::pair<Init *, StringInit *>, 8> NewArgs; in ForeachDagApply()
1283 Init *Arg = MHSd->getArg(i); in ForeachDagApply()
1284 Init *NewArg; in ForeachDagApply()
1303 static Init *ForeachHelper(Init *LHS, Init *MHS, Init *RHS, RecTy *Type, in ForeachHelper()
1309 SmallVector<Init *, 8> NewList(MHSl->begin(), MHSl->end()); in ForeachHelper()
1311 for (Init *&Item : NewList) { in ForeachHelper()
1312 Init *NewItem = ItemApply(LHS, Item, RHS, CurRec); in ForeachHelper()
1324 static Init *FilterHelper(Init *LHS, Init *MHS, Init *RHS, RecTy *Type, in FilterHelper()
1327 SmallVector<Init *, 8> NewList; in FilterHelper()
1329 for (Init *Item : MHSl->getValues()) { in FilterHelper()
1330 Init *Include = ItemApply(LHS, Item, RHS, CurRec); in FilterHelper()
1348 Init *TernOpInit::Fold(Record *CurRec) const { in Fold()
1396 if (Init *Result = ForeachHelper(LHS, MHS, RHS, getType(), CurRec)) in Fold()
1402 if (Init *Result = FilterHelper(LHS, MHS, RHS, getType(), CurRec)) in Fold()
1427 SmallVector<std::pair<Init *, StringInit *>, 8> Children; in Fold()
1430 Init *Node = MHSl ? MHSl->getElement(i) : UnsetInit::get(RK); in Fold()
1431 Init *Name = RHSl ? RHSl->getElement(i) : UnsetInit::get(RK); in Fold()
1486 Init *TernOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
1487 Init *lhs = LHS->resolveReferences(R); in resolveReferences()
1499 Init *mhs = MHS->resolveReferences(R); in resolveReferences()
1500 Init *rhs; in resolveReferences()
1533 static void ProfileFoldOpInit(FoldingSetNodeID &ID, Init *Start, Init *List, in ProfileFoldOpInit()
1534 Init *A, Init *B, Init *Expr, RecTy *Type) { in ProfileFoldOpInit()
1543 FoldOpInit *FoldOpInit::get(Init *Start, Init *List, Init *A, Init *B, in get()
1544 Init *Expr, RecTy *Type) { in get()
1562 Init *FoldOpInit::Fold(Record *CurRec) const { in Fold()
1564 Init *Accum = Start; in Fold()
1565 for (Init *Elt : *LI) { in Fold()
1576 Init *FoldOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
1577 Init *NewStart = Start->resolveReferences(R); in resolveReferences()
1578 Init *NewList = List->resolveReferences(R); in resolveReferences()
1582 Init *NewExpr = Expr->resolveReferences(SR); in resolveReferences()
1591 Init *FoldOpInit::getBit(unsigned Bit) const { in getBit()
1603 Init *Expr) { in ProfileIsAOpInit()
1608 IsAOpInit *IsAOpInit::get(RecTy *CheckType, Init *Expr) { in get()
1627 Init *IsAOpInit::Fold() const { in Fold()
1647 Init *IsAOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
1648 Init *NewExpr = Expr->resolveReferences(R); in resolveReferences()
1654 Init *IsAOpInit::getBit(unsigned Bit) const { in getBit()
1665 Init *Expr) { in ProfileExistsOpInit()
1670 ExistsOpInit *ExistsOpInit::get(RecTy *CheckType, Init *Expr) { in get()
1688 Init *ExistsOpInit::Fold(Record *CurRec, bool IsFinal) const { in Fold()
1722 Init *ExistsOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
1723 Init *NewExpr = Expr->resolveReferences(R); in resolveReferences()
1729 Init *ExistsOpInit::getBit(unsigned Bit) const { in getBit()
1749 Init *
1761 Init *TypedInit::convertInitializerBitRange(ArrayRef<unsigned> Bits) const { in convertInitializerBitRange()
1766 SmallVector<Init *, 16> NewBits; in convertInitializerBitRange()
1777 Init *TypedInit::getCastTo(RecTy *Ty) const { in getCastTo()
1782 if (Init *Converted = convertInitializerTo(Ty)) { in getCastTo()
1795 Init *TypedInit::convertInitListSlice(ArrayRef<unsigned> Elements) const { in convertInitListSlice()
1802 SmallVector<Init*, 8> ListInits; in convertInitListSlice()
1812 Init *Value = StringInit::get(T->getRecordKeeper(), VN); in get()
1816 VarInit *VarInit::get(Init *VN, RecTy *T) { in get()
1829 Init *VarInit::getBit(unsigned Bit) const { in getBit()
1835 Init *VarInit::resolveReferences(Resolver &R) const { in resolveReferences()
1836 if (Init *Val = R.resolve(VarName)) in resolveReferences()
1853 Init *VarBitInit::resolveReferences(Resolver &R) const { in resolveReferences()
1854 Init *I = TI->resolveReferences(R); in resolveReferences()
1873 Init *VarListElementInit::resolveReferences(Resolver &R) const { in resolveReferences()
1874 Init *NewTI = TI->resolveReferences(R); in resolveReferences()
1886 Init *VarListElementInit::getBit(unsigned Bit) const { in getBit()
1899 Init *DefInit::convertInitializerTo(RecTy *Ty) const { in convertInitializerTo()
1916 ArrayRef<Init *> Args) { in ProfileVarDefInit()
1920 for (Init *I : Args) in ProfileVarDefInit()
1928 VarDefInit *VarDefInit::get(Record *Class, ArrayRef<Init *> Args) { in get()
1937 void *Mem = RK.Allocator.Allocate(totalSizeToAlloc<Init *>(Args.size()), in get()
1941 I->getTrailingObjects<Init *>()); in get()
1966 ArrayRef<Init *> TArgs = Class->getTemplateArgs(); in instantiate()
2002 Init *VarDefInit::resolveReferences(Resolver &R) const { in resolveReferences()
2005 SmallVector<Init *, 8> NewArgs; in resolveReferences()
2008 for (Init *Arg : args()) { in resolveReferences()
2009 Init *NewArg = Arg->resolveReferences(UR); in resolveReferences()
2023 Init *VarDefInit::Fold() const { in Fold()
2028 for (Init *Arg : args()) in Fold()
2039 for (Init *Arg : args()) { in getAsString()
2047 FieldInit *FieldInit::get(Init *R, StringInit *FN) { in get()
2055 Init *FieldInit::getBit(unsigned Bit) const { in getBit()
2061 Init *FieldInit::resolveReferences(Resolver &R) const { in resolveReferences()
2062 Init *NewRec = Rec->resolveReferences(R); in resolveReferences()
2068 Init *FieldInit::Fold(Record *CurRec) const { in Fold()
2076 Init *FieldVal = Def->getValue(FieldName)->getValue(); in Fold()
2085 Init *FieldVal = DI->getDef()->getValue(FieldName)->getValue(); in isConcrete()
2092 ArrayRef<Init *> CondRange, in ProfileCondOpInit()
2093 ArrayRef<Init *> ValRange, in ProfileCondOpInit()
2098 ArrayRef<Init *>::iterator Case = CondRange.begin(); in ProfileCondOpInit()
2099 ArrayRef<Init *>::iterator Val = ValRange.begin(); in ProfileCondOpInit()
2109 makeArrayRef(getTrailingObjects<Init *>(), NumConds), in Profile()
2110 makeArrayRef(getTrailingObjects<Init *>() + NumConds, NumConds), in Profile()
2114 CondOpInit *CondOpInit::get(ArrayRef<Init *> CondRange, in get()
2115 ArrayRef<Init *> ValRange, RecTy *Ty) { in get()
2128 totalSizeToAlloc<Init *>(2 * CondRange.size()), alignof(BitsInit)); in get()
2132 I->getTrailingObjects<Init *>()); in get()
2134 I->getTrailingObjects<Init *>()+CondRange.size()); in get()
2139 Init *CondOpInit::resolveReferences(Resolver &R) const { in resolveReferences()
2140 SmallVector<Init*, 4> NewConds; in resolveReferences()
2142 for (const Init *Case : getConds()) { in resolveReferences()
2143 Init *NewCase = Case->resolveReferences(R); in resolveReferences()
2148 SmallVector<Init*, 4> NewVals; in resolveReferences()
2149 for (const Init *Val : getVals()) { in resolveReferences()
2150 Init *NewVal = Val->resolveReferences(R); in resolveReferences()
2162 Init *CondOpInit::Fold(Record *CurRec) const { in Fold()
2165 Init *Cond = getCond(i); in Fold()
2166 Init *Val = getVal(i); in Fold()
2185 for (const Init *Case : getConds()) in isConcrete()
2189 for (const Init *Val : getVals()) in isConcrete()
2197 for (const Init *Case : getConds()) in isComplete()
2201 for (const Init *Val : getVals()) in isComplete()
2219 Init *CondOpInit::getBit(unsigned Bit) const { in getBit()
2223 static void ProfileDagInit(FoldingSetNodeID &ID, Init *V, StringInit *VN, in ProfileDagInit()
2224 ArrayRef<Init *> ArgRange, in ProfileDagInit()
2229 ArrayRef<Init *>::iterator Arg = ArgRange.begin(); in ProfileDagInit()
2239 DagInit *DagInit::get(Init *V, StringInit *VN, ArrayRef<Init *> ArgRange, in get()
2250 totalSizeToAlloc<Init *, StringInit *>(ArgRange.size(), NameRange.size()), in get()
2254 I->getTrailingObjects<Init *>()); in get()
2262 DagInit::get(Init *V, StringInit *VN, in get()
2263 ArrayRef<std::pair<Init*, StringInit*>> args) { in get() argument
2264 SmallVector<Init *, 8> Args; in get()
2276 …ProfileDagInit(ID, Val, ValName, makeArrayRef(getTrailingObjects<Init *>(), NumArgs), makeArrayRef… in Profile()
2286 Init *DagInit::resolveReferences(Resolver &R) const { in resolveReferences()
2287 SmallVector<Init*, 8> NewArgs; in resolveReferences()
2290 for (const Init *Arg : getArgs()) { in resolveReferences()
2291 Init *NewArg = Arg->resolveReferences(R); in resolveReferences()
2296 Init *Op = Val->resolveReferences(R); in resolveReferences()
2306 for (const Init *Elt : getArgs()) { in isConcrete()
2332 RecordVal::RecordVal(Init *N, RecTy *T, FieldKind K) in RecordVal()
2340 RecordVal::RecordVal(Init *N, SMLoc Loc, RecTy *T, FieldKind K) in RecordVal()
2365 bool RecordVal::setValue(Init *V) { in setValue()
2373 SmallVector<Init *, 64> Bits; in setValue()
2389 bool RecordVal::setValue(Init *V, SMLoc NewLoc) { in setValue()
2398 SmallVector<Init *, 64> Bits; in setValue()
2461 void Record::setName(Init *NewName) { in setName()
2506 Init *OldName = getNameInit(); in resolveReferences()
2507 Init *NewName = Name->resolveReferences(R); in resolveReferences()
2517 if (Init *V = Value.getValue()) { in resolveReferences()
2518 Init *VR = V->resolveReferences(R); in resolveReferences()
2537 Init *Value = Assertion.Condition->resolveReferences(R); in resolveReferences()
2544 void Record::resolveReferences(Init *NewName) { in resolveReferences()
2558 ArrayRef<Init *> TArgs = R.getTemplateArgs(); in operator <<()
2562 for (const Init *TA : TArgs) { in operator <<()
2599 Init *Record::getValueInit(StringRef FieldName) const { in getValueInit()
2659 for (Init *I : List->getValues()) { in getValueAsListOfDefs()
2687 for (Init *I : List->getValues()) { in getValueAsListOfInts()
2703 for (Init *I : List->getValues()) { in getValueAsListOfStrings()
2792 Init *Condition = Assertion.Condition->resolveReferences(R); in checkRecordAssertions()
2793 Init *Message = Assertion.Message->resolveReferences(R); in checkRecordAssertions()
2800 for (const Init *TA : getTemplateArgs()) { in checkUnusedTemplateArgs()
2829 Init *RecordKeeper::getNewAnonymousName() { in getNewAnonymousName()
2914 Init *MapResolver::resolve(Init *VarName) { in resolve()
2919 Init *I = It->second.V; in resolve()
2932 Init *RecordResolver::resolve(Init *VarName) { in resolve()
2933 Init *Val = Cache.lookup(VarName); in resolve()
2957 Init *TrackUnresolvedResolver::resolve(Init *VarName) { in resolve()
2958 Init *I = nullptr; in resolve()
2977 Init *HasReferenceResolver::resolve(Init *VarName) in resolve()