Lines Matching refs:FD

25 static uint64_t getFieldSize(const FieldDecl *FD, QualType FT,  in getFieldSize()  argument
27 if (FD && FD->isBitField()) in getFieldSize()
28 return FD->getBitWidthValue(Ctx); in getFieldSize()
44 for (const FieldDecl *FD : RD->fields()) { in visitStructFields() local
45 QualType FT = FD->getType(); in visitStructFields()
47 asDerived().visit(FT, FD, CurStructOffset, Args...); in visitStructFields()
61 uint64_t getFieldOffsetInBits(const FieldDecl *FD) { in getFieldOffsetInBits()
62 return FD ? Ctx.getASTRecordLayout(FD->getParent()) in getFieldOffsetInBits()
63 .getFieldOffset(FD->getFieldIndex()) in getFieldOffsetInBits()
67 CharUnits getFieldOffset(const FieldDecl *FD) { in getFieldOffset()
68 return Ctx.toCharUnitsFromBits(getFieldOffsetInBits(FD)); in getFieldOffset()
87 const FieldDecl *FD, CharUnits CurStructOffsset, in preVisit()
95 const FieldDecl *FD, CharUnits CurStructOffsset, in visitWithKind()
98 asDerived().visitArray(PCK, AT, FT.isVolatileQualified(), FD, in visitWithKind()
103 Super::visitWithKind(PCK, FT, FD, CurStructOffsset, in visitWithKind()
108 void visitTrivial(QualType FT, const FieldDecl *FD, CharUnits CurStructOffset, in visitTrivial()
112 uint64_t FieldSize = getFieldSize(FD, FT, Ctx); in visitTrivial()
118 uint64_t FStartInBits = asDerived().getFieldOffsetInBits(FD); in visitTrivial()
160 void visitARCStrong(QualType FT, const FieldDecl *FD, in visitARCStrong()
165 CharUnits FieldOffset = CurStructOffset + asDerived().getFieldOffset(FD); in visitARCStrong()
169 void visitARCWeak(QualType FT, const FieldDecl *FD, in visitARCWeak()
172 CharUnits FieldOffset = CurStructOffset + asDerived().getFieldOffset(FD); in visitARCWeak()
176 void visitStruct(QualType QT, const FieldDecl *FD, in visitStruct()
178 CharUnits FieldOffset = CurStructOffset + asDerived().getFieldOffset(FD); in visitStruct()
184 const FieldDecl *FD, CharUnits CurStructOffset) { in visitArray()
188 return asDerived().visitTrivial(QualType(AT, 0), FD, CurStructOffset); in visitArray()
191 CharUnits FieldOffset = CurStructOffset + asDerived().getFieldOffset(FD); in visitArray()
255 void visitVolatileTrivial(QualType FT, const FieldDecl *FD, in visitVolatileTrivial()
260 this->Ctx.toBits(CurStackOffset) + this->getFieldOffsetInBits(FD); in visitVolatileTrivial()
262 llvm::to_string(getFieldSize(FD, FT, this->Ctx))); in visitVolatileTrivial()
274 const FieldDecl *FD, CharUnits CurStructOffset) { in visitWithKind()
276 visitArray(PDIK, AT, FT.isVolatileQualified(), FD, CurStructOffset); in visitWithKind()
280 Super::visitWithKind(PDIK, FT, FD, CurStructOffset); in visitWithKind()
292 const FieldDecl *FD, CharUnits CurStructOffset) { in visitWithKind()
294 visitArray(DK, AT, FT.isVolatileQualified(), FD, CurStructOffset); in visitWithKind()
298 Super::visitWithKind(DK, FT, FD, CurStructOffset); in visitWithKind()
325 void visitStruct(QualType FT, const FieldDecl *FD, CharUnits CurStackOffset, in visitStruct()
328 FT, CurStackOffset + asDerived().getFieldOffset(FD), Addrs); in visitStruct()
333 const FieldDecl *FD, CharUnits CurStackOffset, in visitArray()
337 return asDerived().visitTrivial(QualType(AT, 0), FD, CurStackOffset, in visitArray()
348 StartAddrs[I] = getAddrWithOffset(Addrs[I], CurStackOffset, FD); in visitArray()
423 const FieldDecl *FD) { in getAddrWithOffset()
425 asDerived().getFieldOffset(FD)); in getAddrWithOffset()
464 FunctionDecl *FD = FunctionDecl::Create( in getFunction() local
470 CGF->StartFunction(FD, Ctx.VoidTy, F, FI, Args); in getFunction()
544 void visitVolatileTrivial(QualType FT, const FieldDecl *FD, CharUnits Offset, in visitVolatileTrivial()
547 if (FD) { in visitVolatileTrivial()
548 QualType RT = QualType(FD->getParent()->getTypeForDecl(), 0); in visitVolatileTrivial()
553 DstLV = this->CGF->EmitLValueForField(DstBase, FD); in visitVolatileTrivial()
557 SrcLV = this->CGF->EmitLValueForField(SrcBase, FD); in visitVolatileTrivial()
578 const FieldDecl *FD, CharUnits CurStructOffset, in visitWithKind()
581 visitArray(DK, AT, FT.isVolatileQualified(), FD, CurStructOffset, Addrs); in visitWithKind()
585 Super::visitWithKind(DK, FT, FD, CurStructOffset, Addrs); in visitWithKind()
588 void visitARCStrong(QualType QT, const FieldDecl *FD, in visitARCStrong()
591 *CGF, getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCStrong()
594 void visitARCWeak(QualType QT, const FieldDecl *FD, CharUnits CurStackOffset, in visitARCWeak()
597 *CGF, getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCWeak()
618 const FieldDecl *FD, CharUnits CurStructOffset, in visitWithKind()
621 visitArray(PDIK, AT, FT.isVolatileQualified(), FD, CurStructOffset, in visitWithKind()
626 Super::visitWithKind(PDIK, FT, FD, CurStructOffset, Addrs); in visitWithKind()
629 void visitARCStrong(QualType QT, const FieldDecl *FD, in visitARCStrong()
632 getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCStrong()
635 void visitARCWeak(QualType QT, const FieldDecl *FD, CharUnits CurStackOffset, in visitARCWeak()
638 getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCWeak()
643 const FieldDecl *FD, CharUnits CurStackOffset, in visitArray()
646 return visitTrivial(QualType(AT, 0), FD, CurStackOffset, Addrs); in visitArray()
653 GenFuncBaseTy::visitArray(FK, AT, IsVolatile, FD, CurStackOffset, Addrs); in visitArray()
658 Address DstAddr = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitArray()
675 void visitARCStrong(QualType QT, const FieldDecl *FD, in visitARCStrong()
677 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
678 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
685 void visitARCWeak(QualType QT, const FieldDecl *FD, CharUnits CurStackOffset, in visitARCWeak()
687 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
688 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
703 void visitARCStrong(QualType QT, const FieldDecl *FD, in visitARCStrong()
705 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
706 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
715 void visitARCWeak(QualType QT, const FieldDecl *FD, CharUnits CurStackOffset, in visitARCWeak()
717 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
718 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
733 void visitARCStrong(QualType QT, const FieldDecl *FD, in visitARCStrong()
735 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
736 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
743 void visitARCWeak(QualType QT, const FieldDecl *FD, CharUnits CurStackOffset, in visitARCWeak()
745 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
746 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
762 void visitARCStrong(QualType QT, const FieldDecl *FD, in visitARCStrong()
764 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
765 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
777 void visitARCWeak(QualType QT, const FieldDecl *FD, CharUnits CurStackOffset, in visitARCWeak()
779 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
780 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()