Lines Matching refs:Addrs
326 std::array<Address, N> Addrs) { in visitStruct()
328 FT, CurStackOffset + asDerived().getFieldOffset(FD), Addrs); in visitStruct()
334 std::array<Address, N> Addrs) { in visitArray()
338 Addrs); in visitArray()
340 asDerived().flushTrivialFields(Addrs); in visitArray()
346 std::array<Address, N> StartAddrs = Addrs; in visitArray()
348 StartAddrs[I] = getAddrWithOffset(Addrs[I], CurStackOffset, FD); in visitArray()
387 std::array<Address, N> NewAddrs = Addrs; in visitArray()
430 getFunction(StringRef FuncName, QualType QT, std::array<Address, N> Addrs, in getFunction()
474 Addrs[I] = Address(V, Alignments[I]); in getFunction()
477 asDerived().visitStructFields(QT, CharUnits::Zero(), Addrs); in getFunction()
483 void callFunc(StringRef FuncName, QualType QT, std::array<Address, N> Addrs, in callFunc()
489 Alignments[I] = Addrs[I].getAlignment(); in callFunc()
491 CallerCGF.Builder.CreateBitCast(Addrs[I], CallerCGF.CGM.Int8PtrPtrTy) in callFunc()
496 getFunction(FuncName, QT, Addrs, Alignments, CallerCGF.CGM)) in callFunc()
512 void flushTrivialFields(std::array<Address, 2> Addrs) { in flushTrivialFields()
518 Address DstAddr = this->getAddrWithOffset(Addrs[DstIdx], this->Start); in flushTrivialFields()
519 Address SrcAddr = this->getAddrWithOffset(Addrs[SrcIdx], this->Start); in flushTrivialFields()
545 std::array<Address, 2> Addrs) { in visitVolatileTrivial()
550 Address DstAddr = this->getAddrWithOffset(Addrs[DstIdx], Offset); in visitVolatileTrivial()
554 Address SrcAddr = this->getAddrWithOffset(Addrs[SrcIdx], Offset); in visitVolatileTrivial()
560 Address DstAddr = this->CGF->Builder.CreateBitCast(Addrs[DstIdx], Ty); in visitVolatileTrivial()
561 Address SrcAddr = this->CGF->Builder.CreateBitCast(Addrs[SrcIdx], Ty); in visitVolatileTrivial()
579 std::array<Address, 1> Addrs) { in visitWithKind()
581 visitArray(DK, AT, FT.isVolatileQualified(), FD, CurStructOffset, Addrs); in visitWithKind()
585 Super::visitWithKind(DK, FT, FD, CurStructOffset, Addrs); in visitWithKind()
589 CharUnits CurStackOffset, std::array<Address, 1> Addrs) { in visitARCStrong()
591 *CGF, getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCStrong()
595 std::array<Address, 1> Addrs) { in visitARCWeak()
597 *CGF, getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCWeak()
601 std::array<Address, 1> Addrs) { in callSpecialFunction()
603 CGF->MakeAddrLValue(getAddrWithOffset(Addrs[DstIdx], Offset), FT)); in callSpecialFunction()
619 std::array<Address, 1> Addrs) { in visitWithKind()
622 Addrs); in visitWithKind()
626 Super::visitWithKind(PDIK, FT, FD, CurStructOffset, Addrs); in visitWithKind()
630 CharUnits CurStackOffset, std::array<Address, 1> Addrs) { in visitARCStrong()
632 getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCStrong()
636 std::array<Address, 1> Addrs) { in visitARCWeak()
638 getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD), QT); in visitARCWeak()
644 std::array<Address, 1> Addrs) { 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()
665 std::array<Address, 1> Addrs) { in callSpecialFunction()
667 CGF->MakeAddrLValue(getAddrWithOffset(Addrs[DstIdx], Offset), FT)); in callSpecialFunction()
676 CharUnits CurStackOffset, std::array<Address, 2> Addrs) { in visitARCStrong()
677 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
678 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
680 Addrs[SrcIdx], QT.isVolatileQualified(), QT, SourceLocation()); in visitARCStrong()
682 CGF->EmitStoreOfScalar(Val, CGF->MakeAddrLValue(Addrs[DstIdx], QT), true); in visitARCStrong()
686 std::array<Address, 2> Addrs) { in visitARCWeak()
687 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
688 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
689 CGF->EmitARCCopyWeak(Addrs[DstIdx], Addrs[SrcIdx]); in visitARCWeak()
693 std::array<Address, 2> Addrs) { in callSpecialFunction()
694 CGF->callCStructCopyConstructor(CGF->MakeAddrLValue(Addrs[DstIdx], FT), in callSpecialFunction()
695 CGF->MakeAddrLValue(Addrs[SrcIdx], FT)); in callSpecialFunction()
704 CharUnits CurStackOffset, std::array<Address, 2> Addrs) { in visitARCStrong()
705 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
706 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
707 LValue SrcLV = CGF->MakeAddrLValue(Addrs[SrcIdx], QT); in visitARCStrong()
711 CGF->EmitStoreOfScalar(SrcVal, CGF->MakeAddrLValue(Addrs[DstIdx], QT), in visitARCStrong()
716 std::array<Address, 2> Addrs) { in visitARCWeak()
717 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
718 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
719 CGF->EmitARCMoveWeak(Addrs[DstIdx], Addrs[SrcIdx]); in visitARCWeak()
723 std::array<Address, 2> Addrs) { in callSpecialFunction()
724 CGF->callCStructMoveConstructor(CGF->MakeAddrLValue(Addrs[DstIdx], FT), in callSpecialFunction()
725 CGF->MakeAddrLValue(Addrs[SrcIdx], FT)); in callSpecialFunction()
734 CharUnits CurStackOffset, std::array<Address, 2> Addrs) { in visitARCStrong()
735 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
736 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
738 Addrs[SrcIdx], QT.isVolatileQualified(), QT, SourceLocation()); in visitARCStrong()
739 CGF->EmitARCStoreStrong(CGF->MakeAddrLValue(Addrs[DstIdx], QT), SrcVal, in visitARCStrong()
744 std::array<Address, 2> Addrs) { in visitARCWeak()
745 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
746 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
747 CGF->emitARCCopyAssignWeak(QT, Addrs[DstIdx], Addrs[SrcIdx]); in visitARCWeak()
751 std::array<Address, 2> Addrs) { in callSpecialFunction()
753 CGF->MakeAddrLValue(Addrs[DstIdx], FT), in callSpecialFunction()
754 CGF->MakeAddrLValue(Addrs[SrcIdx], FT)); in callSpecialFunction()
763 CharUnits CurStackOffset, std::array<Address, 2> Addrs) { in visitARCStrong()
764 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCStrong()
765 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCStrong()
766 LValue SrcLV = CGF->MakeAddrLValue(Addrs[SrcIdx], QT); in visitARCStrong()
770 LValue DstLV = CGF->MakeAddrLValue(Addrs[DstIdx], QT); in visitARCStrong()
778 std::array<Address, 2> Addrs) { in visitARCWeak()
779 Addrs[DstIdx] = getAddrWithOffset(Addrs[DstIdx], CurStackOffset, FD); in visitARCWeak()
780 Addrs[SrcIdx] = getAddrWithOffset(Addrs[SrcIdx], CurStackOffset, FD); in visitARCWeak()
781 CGF->emitARCMoveAssignWeak(QT, Addrs[DstIdx], Addrs[SrcIdx]); in visitARCWeak()
785 std::array<Address, 2> Addrs) { in callSpecialFunction()
787 CGF->MakeAddrLValue(Addrs[DstIdx], FT), in callSpecialFunction()
788 CGF->MakeAddrLValue(Addrs[SrcIdx], FT)); in callSpecialFunction()
813 std::array<Address, N> Addrs) { in callSpecialFunction() argument
815 Addrs[I] = CGF.Builder.CreateBitCast(Addrs[I], CGF.CGM.Int8PtrPtrTy); in callSpecialFunction()
817 Gen.callFunc(FuncName, QT, Addrs, CGF); in callSpecialFunction()