Lines Matching refs:CharUnits
68 Builder.CreateAlignedStore(Value, Cell, CharUnits::One()); in AssignToArrayRange()
129 bool SwiftABIInfo::isLegalVectorTypeForSwift(CharUnits vectorSize, in isLegalVectorTypeForSwift()
243 CharUnits Align) { in emitRoundPointerUpToAlignment()
274 CharUnits DirectSize, in emitVoidPtrDirectVAArg()
275 CharUnits DirectAlign, in emitVoidPtrDirectVAArg()
276 CharUnits SlotSize, in emitVoidPtrDirectVAArg()
295 CharUnits FullDirectSize = DirectSize.alignTo(SlotSize); in emitVoidPtrDirectVAArg()
327 std::pair<CharUnits, CharUnits> ValueInfo, in emitVoidPtrVAArg() argument
328 CharUnits SlotSizeAndAlign, in emitVoidPtrVAArg()
331 CharUnits DirectSize, DirectAlign; in emitVoidPtrVAArg()
366 CharUnits Align = std::min(Addr1.getAlignment(), Addr2.getAlignment()); in emitMergePHI()
560 CharUnits TyAlignForABI = TyInfo.second; in EmitVAArgInstr()
734 CharUnits::fromQuantity(4), in EmitVAArg()
935 CharUnits &StackOffset, ABIArgInfo &Info,
954 bool shouldPassIndirectlyForSwift(CharUnits totalSize, in shouldPassIndirectlyForSwift()
1376 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(4), /*ByVal=*/true); in getIndirectResult()
1381 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(StackAlign), in getIndirectResult()
1629 CharUnits &StackOffset, ABIArgInfo &Info, in addFieldToArgStruct()
1632 CharUnits FieldAlign = CharUnits::fromQuantity(4); in addFieldToArgStruct()
1640 CharUnits FieldEnd = StackOffset; in addFieldToArgStruct()
1643 CharUnits NumBytes = StackOffset - FieldEnd; in addFieldToArgStruct()
1681 CharUnits StackAlign = CharUnits::fromQuantity(4); in rewriteWithInAlloca()
1683 CharUnits StackOffset; in rewriteWithInAlloca()
1728 TypeInfo.second = CharUnits::fromQuantity( in EmitVAArg()
1732 TypeInfo, CharUnits::fromQuantity(4), in EmitVAArg()
1811 CharUnits::One()); in initDwarfEHRegSizeTable()
2000 bool shouldPassIndirectlyForSwift(CharUnits totalSize, in shouldPassIndirectlyForSwift()
2736 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(Align)); in getIndirectResult()
3323 VAListAddr, 2, CharUnits::fromQuantity(8), "overflow_arg_area_p"); in EmitX86_64VAArgFromMemory()
3331 CharUnits Align = CGF.getContext().getTypeAlignInChars(Ty); in EmitX86_64VAArgFromMemory()
3332 if (Align > CharUnits::fromQuantity(8)) { in EmitX86_64VAArgFromMemory()
3395 CGF.Builder.CreateStructGEP(VAListAddr, 0, CharUnits::Zero(), in EmitVAArg()
3404 CGF.Builder.CreateStructGEP(VAListAddr, 1, CharUnits::fromQuantity(4), in EmitVAArg()
3434 CGF.Builder.CreateStructGEP(VAListAddr, 3, CharUnits::fromQuantity(16)), in EmitVAArg()
3461 CGF.Builder.CreateStructGEP(Tmp, 0, CharUnits::Zero())); in EmitVAArg()
3466 CharUnits Offset = CharUnits::fromQuantity( in EmitVAArg()
3473 CharUnits::fromQuantity(8)); in EmitVAArg()
3477 std::pair<CharUnits, CharUnits> SizeAlign = in EmitVAArg()
3480 CharUnits TyAlign = SizeAlign.second; in EmitVAArg()
3492 CharUnits::fromQuantity(16)); in EmitVAArg()
3503 CharUnits::fromQuantity(16)); in EmitVAArg()
3506 CharUnits::fromQuantity(16)); in EmitVAArg()
3515 CGF.Builder.CreateStructGEP(Tmp, 0, CharUnits::Zero())); in EmitVAArg()
3519 CGF.Builder.CreateStructGEP(Tmp, 1, CharUnits::fromQuantity(8))); in EmitVAArg()
3556 CharUnits::fromQuantity(8), in EmitMSVAArg()
3571 CharUnits Align = getContext().toCharUnitsFromBits(Info.Align); in classify()
3654 CharUnits::fromQuantity(8), in EmitVAArg()
3720 NumRegsAddr = Builder.CreateStructGEP(VAList, 0, CharUnits::Zero(), "gpr"); in EmitVAArg()
3722 NumRegsAddr = Builder.CreateStructGEP(VAList, 1, CharUnits::One(), "fpr"); in EmitVAArg()
3751 Builder.CreateStructGEP(VAList, 4, CharUnits::fromQuantity(8)); in EmitVAArg()
3753 CharUnits::fromQuantity(8)); in EmitVAArg()
3759 CharUnits::fromQuantity(32)); in EmitVAArg()
3764 CharUnits RegSize = CharUnits::fromQuantity((isInt || IsSoftFloatABI) ? 4 : 8); in EmitVAArg()
3789 CharUnits OverflowAreaAlign = CharUnits::fromQuantity(4); in EmitVAArg()
3791 CharUnits Size; in EmitVAArg()
3800 Builder.CreateStructGEP(VAList, 3, CharUnits::fromQuantity(4)); in EmitVAArg()
3804 CharUnits Align = CGF.getContext().getTypeAlignInChars(Ty); in EmitVAArg()
3924 CharUnits getParamTypeAlignment(QualType Ty) const;
4024 CharUnits PPC64_SVR4_ABIInfo::getParamTypeAlignment(QualType Ty) const { in getParamTypeAlignment()
4033 return CharUnits::fromQuantity(32); in getParamTypeAlignment()
4035 return CharUnits::fromQuantity(16); in getParamTypeAlignment()
4037 return CharUnits::fromQuantity(getContext().getTypeSize(Ty) == 128 ? 16 : 8); in getParamTypeAlignment()
4062 return CharUnits::fromQuantity(32); in getParamTypeAlignment()
4064 return CharUnits::fromQuantity(16); in getParamTypeAlignment()
4066 return CharUnits::fromQuantity(AlignAsType->isVectorType() ? 16 : 8); in getParamTypeAlignment()
4073 return CharUnits::fromQuantity(32); in getParamTypeAlignment()
4074 return CharUnits::fromQuantity(16); in getParamTypeAlignment()
4077 return CharUnits::fromQuantity(8); in getParamTypeAlignment()
4271 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(ABIAlign), in classifyArgumentType()
4341 CharUnits SlotSize = CharUnits::fromQuantity(8); in EmitVAArg()
4350 CharUnits EltSize = TypeInfo.first / 2; in EmitVAArg()
4493 bool shouldPassIndirectlyForSwift(CharUnits totalSize, in shouldPassIndirectlyForSwift()
4723 CharUnits TyAlign = TyInfo.second; in EmitAAPCSVAArg()
4728 CharUnits reg_top_offset; in EmitAAPCSVAArg()
4733 CGF.Builder.CreateStructGEP(VAListAddr, 3, CharUnits::fromQuantity(24), in EmitAAPCSVAArg()
4737 reg_top_offset = CharUnits::fromQuantity(8); in EmitAAPCSVAArg()
4742 CGF.Builder.CreateStructGEP(VAListAddr, 4, CharUnits::fromQuantity(28), in EmitAAPCSVAArg()
4746 reg_top_offset = CharUnits::fromQuantity(16); in EmitAAPCSVAArg()
4812 CharUnits::fromQuantity(IsFPR ? 16 : 8)); in EmitAAPCSVAArg()
4844 CharUnits BaseOffset = CharUnits::fromQuantity(16 * i + Offset); in EmitAAPCSVAArg()
4861 CharUnits SlotSize = BaseAddr.getAlignment(); in EmitAAPCSVAArg()
4865 CharUnits Offset = SlotSize - TyInfo.first; in EmitAAPCSVAArg()
4880 CharUnits::Zero(), "stack_p"); in EmitAAPCSVAArg()
4900 std::max(CharUnits::fromQuantity(8), TyAlign)); in EmitAAPCSVAArg()
4903 CharUnits StackSlotSize = CharUnits::fromQuantity(8); in EmitAAPCSVAArg()
4904 CharUnits StackSize; in EmitAAPCSVAArg()
4919 CharUnits Offset = StackSlotSize - TyInfo.first; in EmitAAPCSVAArg()
4950 CharUnits SlotSize = CharUnits::fromQuantity(8); in EmitDarwinVAArg()
5046 bool shouldPassIndirectlyForSwift(CharUnits totalSize, in shouldPassIndirectlyForSwift()
5302 getContext().getTypeSizeInChars(Ty) > CharUnits::fromQuantity(16)) { in classifyArgumentType()
5307 CharUnits::fromQuantity(getContext().getTypeAlign(Ty) / 8), false); in classifyArgumentType()
5320 if (getContext().getTypeSizeInChars(Ty) > CharUnits::fromQuantity(64)) { in classifyArgumentType()
5322 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(ABIAlign), in classifyArgumentType()
5589 CharUnits SlotSize = CharUnits::fromQuantity(4); in EmitVAArg()
5599 CharUnits TyAlignForABI = TyInfo.second; in EmitVAArg()
5605 if (TyInfo.first > CharUnits::fromQuantity(16) && isIllegalVectorType(Ty)) { in EmitVAArg()
5610 } else if (TyInfo.first > CharUnits::fromQuantity(16) && in EmitVAArg()
5621 TyAlignForABI = std::max(TyAlignForABI, CharUnits::fromQuantity(4)); in EmitVAArg()
5622 TyAlignForABI = std::min(TyAlignForABI, CharUnits::fromQuantity(8)); in EmitVAArg()
5625 TyAlignForABI = std::max(TyAlignForABI, CharUnits::fromQuantity(4)); in EmitVAArg()
5626 TyAlignForABI = std::min(TyAlignForABI, CharUnits::fromQuantity(16)); in EmitVAArg()
5628 TyAlignForABI = CharUnits::fromQuantity(4); in EmitVAArg()
5814 bool shouldPassIndirectlyForSwift(CharUnits totalSize, in shouldPassIndirectlyForSwift()
5940 CharUnits UnpaddedSize; in EmitVAArg()
5941 CharUnits DirectAlign; in EmitVAArg()
5944 UnpaddedSize = DirectAlign = CharUnits::fromQuantity(8); in EmitVAArg()
5953 CharUnits PaddedSize = CharUnits::fromQuantity(8); in EmitVAArg()
5955 PaddedSize = CharUnits::fromQuantity(16); in EmitVAArg()
5958 CharUnits Padding = (PaddedSize - UnpaddedSize); in EmitVAArg()
5969 CGF.Builder.CreateStructGEP(VAListAddr, 2, CharUnits::fromQuantity(16), in EmitVAArg()
5989 CharUnits RegPadding; in EmitVAArg()
5994 RegPadding = CharUnits(); // floats are passed in the high bits of an FPR in EmitVAArg()
6003 VAListAddr, RegCountField, RegCountField * CharUnits::fromQuantity(8), in EmitVAArg()
6027 CGF.Builder.CreateStructGEP(VAListAddr, 3, CharUnits::fromQuantity(24), in EmitVAArg()
6049 VAListAddr, 2, CharUnits::fromQuantity(16), "overflow_arg_area_ptr"); in EmitVAArg()
6497 std::min(TyInfo.second, CharUnits::fromQuantity(StackAlignInBytes)); in EmitVAArg()
6500 CharUnits ArgSlotSize = CharUnits::fromQuantity(MinABIStackAlignInBytes); in EmitVAArg()
6741 CharUnits::fromQuantity(4), in EmitVAArg()
6807 return ABIArgInfo::getIndirect(CharUnits::fromQuantity(4), /*ByVal=*/true, in getIndirectResult()
7159 CharUnits SlotSize = CharUnits::fromQuantity(8); in EmitVAArg()
7168 CharUnits Stride; in EmitVAArg()
7177 CharUnits Offset = SlotSize - TypeInfo.first; in EmitVAArg()
7184 Stride = CharUnits::fromQuantity(AllocSize).alignTo(SlotSize); in EmitVAArg()
7387 CharUnits SlotSize = CharUnits::fromQuantity(4); in EmitVAArg()
7392 CharUnits TypeAlign = getContext().getTypeAlignInChars(Ty); in EmitVAArg()
7399 CharUnits ArgSize = CharUnits::Zero(); in EmitVAArg()
7407 ArgSize = CharUnits::Zero(); in EmitVAArg()
7412 ArgSize = CharUnits::fromQuantity( in EmitVAArg()