Lines Matching refs:DI
105 const auto *DI = dyn_cast<DagInit>(Arg); in getCustomCoders() local
106 if (!DI) in getCustomCoders()
108 const Init *Op = DI->getOperator(); in getCustomCoders()
115 if (!DI->getNumArgs() || !isa<StringInit>(DI->getArg(0))) in getCustomCoders()
118 StringRef FuncName = cast<StringInit>(DI->getArg(0))->getValue(); in getCustomCoders()
127 VarLenInst::VarLenInst(const DagInit *DI, const RecordVal *TheDef) in VarLenInst() argument
129 buildRec(DI); in VarLenInst()
134 void VarLenInst::buildRec(const DagInit *DI) { in buildRec() argument
137 std::string Op = DI->getOperator()->getAsString(); in buildRec()
141 int i = Reverse ? DI->getNumArgs() - 1 : 0; in buildRec()
142 int e = Reverse ? -1 : DI->getNumArgs(); in buildRec()
145 const Init *Arg = DI->getArg(i); in buildRec()
166 if (DI->getNumArgs() < 2) in buildRec()
170 const Init *OperandName = DI->getArg(0), *NumBits = DI->getArg(1); in buildRec()
179 getCustomCoders(DI->getArgs().slice(2)); in buildRec()
185 if (DI->getNumArgs() < 3) in buildRec()
189 Init *OperandName = DI->getArg(0), *HiBit = DI->getArg(1), in buildRec()
190 *LoBit = DI->getArg(2); in buildRec()
209 getCustomCoders(DI->getArgs().slice(3)); in buildRec()
215 DagInit::get(DI->getOperator(), nullptr, NewArgs, {}), in buildRec()
218 Segments.push_back({NumBits, DI, CustomEncoder, CustomDecoder}); in buildRec()
238 if (auto *DI = dyn_cast_or_null<DefInit>(RV->getValue())) { in run() local
240 EncodingInfoByHwMode EBM(DI->getDef(), HWM); in run()
246 DagInit *DI = cast<DagInit>(RV->getValue()); in run() local
247 VarLenInsts[R].insert({Mode, VarLenInst(DI, RV)}); in run()
253 DagInit *DI = cast<DagInit>(RV->getValue()); in run() local
254 VarLenInsts[R].insert({Universal, VarLenInst(DI, RV)}); in run()