Lines Matching full:number

31   void writeAttribute(Attribute attr) override { state.number(attr); }
34 state.number(attr);
36 void writeType(Type type) override { state.number(type); }
38 state.number(resource.getDialect(), resource);
47 // TODO: It might be nice to prenumber strings and sort by the number of
89 if (lhs->dialect->number == dialectToOrderFirst)
90 return rhs->dialect->number != dialectToOrderFirst;
91 if (rhs->dialect->number == dialectToOrderFirst)
93 return lhs->dialect->number < rhs->dialect->number;
100 // Update the number of elements in the current byte grouping. Reminder
102 // number of elements in each byte grouping.
118 dialectToOrderFirst = byteSubRange.back()->dialect->number;
127 value->number = idx;
135 // Number the root operation.
136 number(*op);
138 // A worklist of region contexts to number and the next value id before that
161 number(*region);
168 // Number each of the dialects. For now this is just in the order they were
169 // found, given that the number of dialects on average is small enough to fit
171 // a huge number of dialects, this could be made more intelligent.
173 dialect.second->number = idx;
175 // Number each of the recorded components within each dialect.
266 // checks and compute the number for this operation.
297 // Compute the number for this op and push it onto the stack.
310 void IRNumberingState::number(Attribute attr) {
331 // dummy writing to number any nested components.
353 // If this attribute will be emitted using the fallback, number the nested
354 // dialect resources. We don't number everything (e.g. no nested
361 // Number the used dialect resources.
363 number(it.getFirst(), it.getSecond().getArrayRef());
366 void IRNumberingState::number(Block &block) {
367 // Number the arguments of the block.
370 number(arg.getLoc());
371 number(arg.getType());
374 // Number the operations in this block.
377 number(op);
401 void IRNumberingState::number(Region &region) {
406 // Number the blocks within this region.
410 number(it.value());
414 // Remember the number of blocks and values in this region.
419 void IRNumberingState::number(Operation &op) {
420 // Number the components of an operation that won't be numbered elsewhere
421 // (e.g. we don't number operands, regions, or successors here).
422 number(op.getName());
425 number(result.getType());
429 // not used, we need to number also the merged dictionary containing both the
436 // Only number the operation's dictionary if it isn't empty.
438 number(dictAttr);
453 number(prop);
457 number(op.getLoc());
460 void IRNumberingState::number(OperationName opName) {
477 void IRNumberingState::number(Type type) {
498 // writing to number any nested components.
515 // dummy writing to number any nested components.
522 // If this type will be emitted using the fallback, number the nested dialect
523 // resources. We don't number everything (e.g. no nested attributes/types),
530 // Number the used dialect resources.
532 number(it.getFirst(), it.getSecond().getArrayRef());
535 void IRNumberingState::number(Dialect *dialect,
560 /// A dummy resource builder used to number dialect resources.
571 // TODO: We could pre-number the value string here as well.
575 /// Number the dialect entry for the given key.
577 // TODO: We could pre-number resource key strings here as well.
581 it->second->number = nextResourceID++;
600 // Number any resources that weren't added by the dialect. This can happen
602 // resource references to roundtrip, so we number them and indicate that the
606 it.second->number = nextResourceID++;