Lines Matching defs:Field
79 enum InfoKind { VFPtr, VBPtr, Field, Base, VBase } Kind;
99 return MemberInfo(Offset, MemberInfo::Field, Data);
189 RecordDecl::field_iterator Field,
323 for (const auto *Field : D->fields()) {
324 if (Field->isBitField()) {
325 if (Field->isZeroLengthBitField(Context))
327 llvm::Type *FieldType = getStorageType(Field);
330 setBitFieldInfo(Field, CharUnits::Zero(), FieldType);
332 Fields[Field->getCanonicalDecl()] = 0;
333 llvm::Type *FieldType = getStorageType(Field);
341 SeenNamedMember = Field->getIdentifier();
343 if (const auto *FieldRD = Field->getType()->getAsRecordDecl())
345 if (SeenNamedMember && !isZeroInitializable(Field)) {
381 for (RecordDecl::field_iterator Field = D->field_begin(),
383 Field != FieldEnd;) {
384 if (Field->isBitField()) {
385 Field = accumulateBitFields(isNonVirtualBaseType, Field, FieldEnd);
386 assert((Field == FieldEnd || !Field->isBitField()) &&
388 } else if (isEmptyFieldForLayout(Context, *Field)) {
390 ++Field;
395 bitsToCharUnits(getFieldBitOffset(*Field)), MemberInfo::Field,
396 Field->isPotentiallyOverlapping()
397 ? getStorageType(Field->getType()->getAsCXXRecordDecl())
398 : getStorageType(*Field),
399 *Field));
400 ++Field;
405 // Create members for bitfields. Field is a bitfield, and FieldEnd is the end
411 RecordDecl::field_iterator Field,
424 for (; Field != FieldEnd && Field->isBitField(); ++Field) {
426 if (Field->isZeroLengthBitField(Context)) {
430 uint64_t BitOffset = getFieldBitOffset(*Field);
431 llvm::Type *Type = Types.ConvertTypeForMem(Field->getType());
435 Run = Field;
446 MemberInfo::Field, nullptr, *Field));
448 return Field;
532 // AtAlignedBoundary is true iff Field is the (potential) start of a new
539 if (Field != FieldEnd && Field->isBitField()) {
540 uint64_t BitOffset = getFieldBitOffset(*Field);
543 Begin = Field;
562 if (Field->isZeroLengthBitField(Context))
581 // Field is the start of a new span or the end of the bitfields. The
590 BestEnd = Field;
623 if (InstallBest && BestEnd == Field)
633 // with storage (which might be Field itself) or the end of the
636 for (auto Probe = Field; Probe != FieldEnd; ++Probe)
659 BestEnd = Field;
679 assert((Field == FieldEnd || !Field->isBitField() ||
680 (getFieldBitOffset(*Field) % CharBits) == 0) &&
702 MemberInfo(BeginOffset, MemberInfo::Field, nullptr, *Begin));
705 Field = BestEnd;
708 assert(Field != FieldEnd && Field->isBitField() &&
712 BitSizeSinceBegin += Field->getBitWidthValue(Context);
713 ++Field;
717 return Field;
760 const FieldDecl *Field = I.first;
762 llvm::Type *ResLTy = Types.ConvertTypeForMem(Field->getType());
806 Context.getASTRecordLayout(Field->getParent());
935 if (Member->Kind == MemberInfo::Field) {
1034 if (Member->Kind == MemberInfo::Field) {