|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
tools/clang/lib/CodeGen/CGValue.h 31 class AggValueSlot;
References
tools/clang/lib/CodeGen/CGAtomic.cpp 185 RValue convertAtomicTempToRValue(Address addr, AggValueSlot resultSlot,
192 AggValueSlot ResultSlot,
211 RValue EmitAtomicLoad(AggValueSlot ResultSlot, SourceLocation Loc,
1352 AggValueSlot resultSlot,
1385 AggValueSlot ResultSlot,
1473 AggValueSlot Slot) {
1485 RValue AtomicInfo::EmitAtomicLoad(AggValueSlot ResultSlot, SourceLocation Loc,
1520 AggValueSlot resultSlot) {
1540 AggValueSlot::DoesNotOverlap, IsVolatile);
1664 convertAtomicTempToRValue(ExpectedAddr, AggValueSlot::ignored(),
1676 ConvertIntToValueOrAtomic(Res.first, AggValueSlot::ignored(),
1754 AggValueSlot::ignored(),
1786 auto OldRVal = ConvertIntToValueOrAtomic(PHI, AggValueSlot::ignored(),
1983 AggValueSlot Slot) {
2031 AggValueSlot slot = AggValueSlot::forLValue(dest,
2031 AggValueSlot slot = AggValueSlot::forLValue(dest,
2032 AggValueSlot::IsNotDestructed,
2033 AggValueSlot::DoesNotNeedGCBarriers,
2034 AggValueSlot::IsNotAliased,
2035 AggValueSlot::DoesNotOverlap,
2036 Zeroed ? AggValueSlot::IsZeroed :
2037 AggValueSlot::IsNotZeroed);
tools/clang/lib/CodeGen/CGBlocks.cpp 1102 AggValueSlot Slot =
1103 AggValueSlot::forAddr(blockField, Qualifiers(),
1104 AggValueSlot::IsDestructed,
1105 AggValueSlot::DoesNotNeedGCBarriers,
1106 AggValueSlot::IsNotAliased,
1107 AggValueSlot::DoesNotOverlap);
tools/clang/lib/CodeGen/CGBuiltin.cpp 6871 AggValueSlot MvecSlot = CreateAggTemp(MvecCType);
tools/clang/lib/CodeGen/CGCall.cpp 3033 static AggValueSlot createPlaceholderSlot(CodeGenFunction &CGF,
3046 return AggValueSlot::forAddr(Address(Placeholder, Align),
3048 AggValueSlot::IsNotDestructed,
3049 AggValueSlot::DoesNotNeedGCBarriers,
3050 AggValueSlot::IsNotAliased,
3051 AggValueSlot::DoesNotOverlap);
3534 CGF.EmitAggregateCopy(Copy, LV, Ty, AggValueSlot::DoesNotOverlap,
3550 CGF.EmitAggregateCopy(Dst, SrcLV, Ty, AggValueSlot::DoesNotOverlap,
3583 AggValueSlot Slot;
tools/clang/lib/CodeGen/CGClass.cpp 559 AggValueSlot AggSlot =
560 AggValueSlot::forAddr(
562 AggValueSlot::IsDestructed,
563 AggValueSlot::DoesNotNeedGCBarriers,
564 AggValueSlot::IsNotAliased,
684 AggValueSlot Slot =
685 AggValueSlot::forLValue(
687 AggValueSlot::IsDestructed,
688 AggValueSlot::DoesNotNeedGCBarriers,
689 AggValueSlot::IsNotAliased,
691 AggValueSlot::IsNotZeroed,
693 AggValueSlot::IsSanitizerChecked);
1990 auto currAVS = AggValueSlot::forAddr(
1990 auto currAVS = AggValueSlot::forAddr(
1991 curAddr, type.getQualifiers(), AggValueSlot::IsDestructed,
1992 AggValueSlot::DoesNotNeedGCBarriers, AggValueSlot::IsNotAliased,
1992 AggValueSlot::DoesNotNeedGCBarriers, AggValueSlot::IsNotAliased,
1993 AggValueSlot::DoesNotOverlap, AggValueSlot::IsNotZeroed,
1993 AggValueSlot::DoesNotOverlap, AggValueSlot::IsNotZeroed,
1994 NewPointerIsChecked ? AggValueSlot::IsSanitizerChecked
1995 : AggValueSlot::IsNotSanitizerChecked);
2032 AggValueSlot ThisAVS,
2109 AggValueSlot::Overlap_t Overlap,
2223 This, Args, AggValueSlot::MayOverlap,
2323 AggValueSlot::MayOverlap, E->getExprLoc(),
2360 AggValueSlot::MayOverlap, Loc,
2391 AggValueSlot AggSlot =
2392 AggValueSlot::forAddr(ThisPtr, Qualifiers(),
2393 AggValueSlot::IsDestructed,
2394 AggValueSlot::DoesNotNeedGCBarriers,
2395 AggValueSlot::IsNotAliased,
2396 AggValueSlot::MayOverlap,
2397 AggValueSlot::IsNotZeroed,
2399 AggValueSlot::IsSanitizerChecked);
tools/clang/lib/CodeGen/CGCoroutine.cpp 177 AwaitKind Kind, AggValueSlot aggSlot,
262 AggValueSlot aggSlot,
269 AggValueSlot aggSlot,
306 CurCoro.Data->CurrentAwaitKind, AggValueSlot::ignored(),
316 AwaitKind::Yield, AggValueSlot::ignored(),
tools/clang/lib/CodeGen/CGDecl.cpp 1893 AggValueSlot::Overlap_t Overlap = AggValueSlot::MayOverlap;
1893 AggValueSlot::Overlap_t Overlap = AggValueSlot::MayOverlap;
1895 Overlap = AggValueSlot::DoesNotOverlap;
1899 EmitAggExpr(init, AggValueSlot::forLValue(lvalue,
1900 AggValueSlot::IsDestructed,
1901 AggValueSlot::DoesNotNeedGCBarriers,
1902 AggValueSlot::IsNotAliased,
tools/clang/lib/CodeGen/CGDeclCXX.cpp 57 CGF.EmitAggExpr(Init, AggValueSlot::forLValue(lv,AggValueSlot::IsDestructed,
57 CGF.EmitAggExpr(Init, AggValueSlot::forLValue(lv,AggValueSlot::IsDestructed,
58 AggValueSlot::DoesNotNeedGCBarriers,
59 AggValueSlot::IsNotAliased,
60 AggValueSlot::DoesNotOverlap));
tools/clang/lib/CodeGen/CGExpr.cpp 184 return (void) EmitAnyExpr(E, AggValueSlot::ignored(), true);
195 AggValueSlot aggSlot,
214 AggValueSlot AggSlot = AggValueSlot::ignored();
214 AggValueSlot AggSlot = AggValueSlot::ignored();
235 EmitAggExpr(E, AggValueSlot::forAddr(Location, Quals,
237 AggValueSlot::DoesNotNeedGCBarriers,
239 AggValueSlot::MayOverlap));
458 EmitAggExpr(E, AggValueSlot::forAddr(Object,
460 AggValueSlot::IsDestructed,
461 AggValueSlot::DoesNotNeedGCBarriers,
462 AggValueSlot::IsNotAliased,
463 AggValueSlot::DoesNotOverlap));
4679 AggValueSlot Slot = CreateAggTemp(E->getType());
4701 AggValueSlot Slot = CreateAggTemp(E->getType(), "temp.lvalue");
5018 AggValueSlot slot) {
5088 AggValueSlot slot) {
5093 return emitPseudoObjectExpr(*this, E, true, AggValueSlot::ignored()).LV;
tools/clang/lib/CodeGen/CGExprAgg.cpp 38 AggValueSlot Dest;
41 AggValueSlot EnsureSlot(QualType T) {
60 AggExprEmitter(CodeGenFunction &cgf, AggValueSlot Dest, bool IsResultUnused)
83 void EmitCopy(QualType type, const AggValueSlot &dest,
84 const AggValueSlot &src);
91 AggValueSlot::NeedsGCBarriers_t needsGC(QualType T) {
93 return AggValueSlot::NeedsGCBarriers;
94 return AggValueSlot::DoesNotNeedGCBarriers;
348 AggValueSlot srcAgg =
349 AggValueSlot::forLValue(src, AggValueSlot::IsDestructed,
349 AggValueSlot::forLValue(src, AggValueSlot::IsDestructed,
350 needsGC(type), AggValueSlot::IsAliased,
351 AggValueSlot::MayOverlap);
359 void AggExprEmitter::EmitCopy(QualType type, const AggValueSlot &dest,
360 const AggValueSlot &src) {
411 AggValueSlot Dest = EnsureSlot(E->getType());
661 AggValueSlot Slot = EnsureSlot(E->getType());
703 CGF.EmitAnyExpr(E->getSubExpr(), AggValueSlot::ignored(),
719 CGF.EmitAnyExpr(E->getSubExpr(), AggValueSlot::ignored(),
776 AggValueSlot valueDest = Dest;
786 valueDest = AggValueSlot::forAddr(valueAddr,
791 AggValueSlot::DoesNotOverlap,
792 AggValueSlot::IsZeroed);
801 AggValueSlot atomicSlot =
1166 AggValueSlot::forLValue(LHS, AggValueSlot::IsDestructed,
1166 AggValueSlot::forLValue(LHS, AggValueSlot::IsDestructed,
1168 AggValueSlot::IsAliased,
1169 AggValueSlot::MayOverlap),
1187 AggValueSlot LHSSlot =
1188 AggValueSlot::forLValue(LHS, AggValueSlot::IsDestructed,
1188 AggValueSlot::forLValue(LHS, AggValueSlot::IsDestructed,
1190 AggValueSlot::IsAliased,
1191 AggValueSlot::MayOverlap);
1277 AggValueSlot Slot = EnsureSlot(E->getType());
1283 AggValueSlot Slot = EnsureSlot(E->getType());
1291 AggValueSlot Slot = EnsureSlot(E->getType());
1348 AggValueSlot Slot = EnsureSlot(T);
1354 AggValueSlot Slot = EnsureSlot(T);
1411 CGF.EmitAggExpr(E, AggValueSlot::forLValue(LV,
1412 AggValueSlot::IsDestructed,
1413 AggValueSlot::DoesNotNeedGCBarriers,
1414 AggValueSlot::IsNotAliased,
1415 AggValueSlot::MayOverlap,
1477 AggValueSlot Dest = EnsureSlot(E->getType());
1521 AggValueSlot AggSlot = AggValueSlot::forAddr(
1521 AggValueSlot AggSlot = AggValueSlot::forAddr(
1523 AggValueSlot::IsDestructed,
1524 AggValueSlot::DoesNotNeedGCBarriers,
1525 AggValueSlot::IsNotAliased,
1701 auto elementSlot = AggValueSlot::forLValue(
1701 auto elementSlot = AggValueSlot::forLValue(
1702 elementLV, AggValueSlot::IsDestructed,
1703 AggValueSlot::DoesNotNeedGCBarriers,
1704 AggValueSlot::IsNotAliased,
1705 AggValueSlot::DoesNotOverlap);
1732 AggValueSlot Dest = EnsureSlot(E->getType());
1806 static void CheckAggExprForMemSetUse(AggValueSlot &Slot, const Expr *E,
1851 void CodeGenFunction::EmitAggExpr(const Expr *E, AggValueSlot Slot) {
1867 EmitAggExpr(E, AggValueSlot::forLValue(LV, AggValueSlot::IsNotDestructed,
1867 EmitAggExpr(E, AggValueSlot::forLValue(LV, AggValueSlot::IsNotDestructed,
1868 AggValueSlot::DoesNotNeedGCBarriers,
1869 AggValueSlot::IsNotAliased,
1870 AggValueSlot::DoesNotOverlap));
1874 AggValueSlot::Overlap_t
1877 return AggValueSlot::DoesNotOverlap;
1887 return AggValueSlot::DoesNotOverlap;
1890 return AggValueSlot::MayOverlap;
1893 AggValueSlot::Overlap_t CodeGenFunction::getOverlapForBaseInit(
1899 return AggValueSlot::MayOverlap;
1908 return AggValueSlot::DoesNotOverlap;
1911 return AggValueSlot::MayOverlap;
1915 AggValueSlot::Overlap_t MayOverlap,
tools/clang/lib/CodeGen/CGExprCXX.cpp 279 AggValueSlot::DoesNotOverlap, CE->getExprLoc(),
567 AggValueSlot Dest) {
937 AggValueSlot::Overlap_t MayOverlap) {
949 AggValueSlot Slot
950 = AggValueSlot::forAddr(NewPtr, AllocType.getQualifiers(),
951 AggValueSlot::IsDestructed,
952 AggValueSlot::DoesNotNeedGCBarriers,
953 AggValueSlot::IsNotAliased,
954 MayOverlap, AggValueSlot::IsNotZeroed,
955 AggValueSlot::IsSanitizerChecked);
1020 AggValueSlot Slot =
1021 AggValueSlot::forAddr(CurPtr, ElementType.getQualifiers(),
1022 AggValueSlot::IsDestructed,
1023 AggValueSlot::DoesNotNeedGCBarriers,
1024 AggValueSlot::IsNotAliased,
1025 AggValueSlot::DoesNotOverlap,
1026 AggValueSlot::IsNotZeroed,
1027 AggValueSlot::IsSanitizerChecked);
1093 AggValueSlot::DoesNotOverlap);
1248 AggValueSlot::DoesNotOverlap);
1280 AggValueSlot::DoesNotOverlap);
tools/clang/lib/CodeGen/CGObjC.cpp 1587 AggValueSlot::forLValue(LV, AggValueSlot::IsDestructed,
1587 AggValueSlot::forLValue(LV, AggValueSlot::IsDestructed,
1588 AggValueSlot::DoesNotNeedGCBarriers,
1589 AggValueSlot::IsNotAliased,
1590 AggValueSlot::DoesNotOverlap));
3659 AggValueSlot::forAddr(Address(DV.getScalarVal(), Alignment),
3661 AggValueSlot::IsDestructed,
3662 AggValueSlot::DoesNotNeedGCBarriers,
3663 AggValueSlot::IsNotAliased,
3664 AggValueSlot::DoesNotOverlap));
tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp 5132 CGF.EmitAggregateCopy(Dest, Src, SharedsTy, AggValueSlot::DoesNotOverlap);
tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp 3105 Private->getType(), AggValueSlot::DoesNotOverlap);
3707 Private->getType(), AggValueSlot::DoesNotOverlap);
3907 AggValueSlot::DoesNotOverlap);
tools/clang/lib/CodeGen/CGStmt.cpp 380 AggValueSlot AggSlot) {
393 AggValueSlot AggSlot) {
1119 EmitAggExpr(RV, AggValueSlot::forAddr(
1121 AggValueSlot::IsDestructed,
1122 AggValueSlot::DoesNotNeedGCBarriers,
1123 AggValueSlot::IsNotAliased,
tools/clang/lib/CodeGen/CGStmtOpenMP.cpp 1681 RValue Len = CGF.EmitAnyExpr(C->getSimdlen(), AggValueSlot::ignored(),
1691 RValue Len = CGF.EmitAnyExpr(C->getSafelen(), AggValueSlot::ignored(),
tools/clang/lib/CodeGen/CGValue.h 498 static AggValueSlot ignored() {
513 static AggValueSlot forAddr(Address addr,
521 AggValueSlot AV;
539 static AggValueSlot forLValue(const LValue &LV,
tools/clang/lib/CodeGen/CodeGenFunction.h 2257 AggValueSlot CreateAggTemp(QualType T, const Twine &Name = "tmp") {
2258 return AggValueSlot::forAddr(CreateMemTemp(T, Name),
2260 AggValueSlot::IsNotDestructed,
2261 AggValueSlot::DoesNotNeedGCBarriers,
2262 AggValueSlot::IsNotAliased,
2263 AggValueSlot::DoesNotOverlap);
2283 AggValueSlot aggSlot = AggValueSlot::ignored(),
2283 AggValueSlot aggSlot = AggValueSlot::ignored(),
2322 AggValueSlot::Overlap_t getOverlapForReturnValue() {
2326 return AggValueSlot::DoesNotOverlap;
2330 AggValueSlot::Overlap_t getOverlapForFieldInit(const FieldDecl *FD);
2334 AggValueSlot::Overlap_t getOverlapForBaseInit(const CXXRecordDecl *RD,
2341 EmitAggregateCopy(Dest, Src, EltTy, AggValueSlot::MayOverlap, IsVolatile);
2345 AggValueSlot::Overlap_t MayOverlap) {
2357 AggValueSlot::Overlap_t MayOverlap,
2522 AggValueSlot ThisAVS, const CXXConstructExpr *E);
2527 AggValueSlot::Overlap_t Overlap,
2860 AggValueSlot AVS = AggValueSlot::ignored());
2860 AggValueSlot AVS = AggValueSlot::ignored());
2863 AggValueSlot AVS =
2864 AggValueSlot::ignored());
2900 AggValueSlot aggSlot = AggValueSlot::ignored(),
2900 AggValueSlot aggSlot = AggValueSlot::ignored(),
2904 AggValueSlot aggSlot = AggValueSlot::ignored(),
2904 AggValueSlot aggSlot = AggValueSlot::ignored(),
3380 AggValueSlot Slot = AggValueSlot::ignored());
3380 AggValueSlot Slot = AggValueSlot::ignored());
3384 AggValueSlot slot = AggValueSlot::ignored());
3384 AggValueSlot slot = AggValueSlot::ignored());
3397 bool IsWeak = false, AggValueSlot Slot = AggValueSlot::ignored());
3397 bool IsWeak = false, AggValueSlot Slot = AggValueSlot::ignored());
3562 AggValueSlot slot = AggValueSlot::ignored());
3562 AggValueSlot slot = AggValueSlot::ignored());
3903 void EmitAggExpr(const Expr *E, AggValueSlot AS);
3994 void EmitCXXConstructExpr(const CXXConstructExpr *E, AggValueSlot Dest);
tools/clang/lib/CodeGen/ItaniumCXXABI.cpp 4227 CGF.EmitAggregateCopy(Dest, Src, CatchType, AggValueSlot::DoesNotOverlap);
4251 AggValueSlot::forAddr(ParamAddr, Qualifiers(),
4252 AggValueSlot::IsNotDestructed,
4253 AggValueSlot::DoesNotNeedGCBarriers,
4254 AggValueSlot::IsNotAliased,
4255 AggValueSlot::DoesNotOverlap));