Lines Matching refs:emission
1349 AutoVarEmission emission = EmitAutoVarAlloca(D); in EmitAutoVarDecl() local
1350 EmitAutoVarInit(emission); in EmitAutoVarDecl()
1351 EmitAutoVarCleanups(emission); in EmitAutoVarDecl()
1450 AutoVarEmission emission(D); in EmitAutoVarAlloca() local
1453 emission.IsEscapingByRef = isEscapingByRef; in EmitAutoVarAlloca()
1510 emission.Addr = Address::invalid(); in EmitAutoVarAlloca()
1511 assert(emission.wasEmittedAsGlobal()); in EmitAutoVarAlloca()
1512 return emission; in EmitAutoVarAlloca()
1516 emission.IsConstantAggregate = true; in EmitAutoVarAlloca()
1549 emission.NRVOFlag = NRVOFlag.getPointer(); in EmitAutoVarAlloca()
1595 emission.SizeForLifetimeMarkers = in EmitAutoVarAlloca()
1599 assert(!emission.useLifetimeMarkers()); in EmitAutoVarAlloca()
1666 emission.Addr = address; in EmitAutoVarAlloca()
1667 emission.AllocaAddr = AllocaAddr; in EmitAutoVarAlloca()
1688 if (emission.useLifetimeMarkers()) in EmitAutoVarAlloca()
1690 emission.getOriginalAllocatedAddress(), in EmitAutoVarAlloca()
1691 emission.getSizeForLifetimeMarkers()); in EmitAutoVarAlloca()
1693 return emission; in EmitAutoVarAlloca()
1882 void CodeGenFunction::EmitAutoVarInit(const AutoVarEmission &emission) { in EmitAutoVarInit() argument
1883 assert(emission.Variable && "emission was not valid!"); in EmitAutoVarInit()
1886 if (emission.wasEmittedAsGlobal()) return; in EmitAutoVarInit()
1888 const VarDecl &D = *emission.Variable; in EmitAutoVarInit()
1903 if (emission.IsEscapingByRef) in EmitAutoVarInit()
1904 emitByrefStructureInit(emission); in EmitAutoVarInit()
1912 LValue Dst = MakeAddrLValue(emission.getAllocatedAddress(), type); in EmitAutoVarInit()
1913 if (emission.IsEscapingByRef) in EmitAutoVarInit()
1923 Init && emission.IsEscapingByRef && isCapturedBy(D, Init); in EmitAutoVarInit()
1927 locIsByrefHeader ? emission.getObjectAddress(*this) : emission.Addr; in EmitAutoVarInit()
1943 if (emission.IsEscapingByRef && !locIsByrefHeader) in EmitAutoVarInit()
1953 if (emission.IsConstantAggregate || in EmitAutoVarInit()
2007 if (!emission.IsConstantAggregate) { in EmitAutoVarInit()
2073 const CodeGenFunction::AutoVarEmission &emission, in emitAutoVarTypeCleanup() argument
2079 Address addr = emission.getObjectAddress(*this); in emitAutoVarTypeCleanup()
2081 const VarDecl *var = emission.Variable; in emitAutoVarTypeCleanup()
2094 if (emission.NRVOFlag) { in emitAutoVarTypeCleanup()
2098 emission.NRVOFlag); in emitAutoVarTypeCleanup()
2120 if (emission.NRVOFlag) { in emitAutoVarTypeCleanup()
2123 emission.NRVOFlag, type); in emitAutoVarTypeCleanup()
2139 void CodeGenFunction::EmitAutoVarCleanups(const AutoVarEmission &emission) { in EmitAutoVarCleanups() argument
2140 assert(emission.Variable && "emission was not valid!"); in EmitAutoVarCleanups()
2143 if (emission.wasEmittedAsGlobal()) return; in EmitAutoVarCleanups()
2149 const VarDecl &D = *emission.Variable; in EmitAutoVarCleanups()
2153 emitAutoVarTypeCleanup(emission, dtorKind); in EmitAutoVarCleanups()
2175 if (emission.IsEscapingByRef && in EmitAutoVarCleanups()
2178 if (emission.Variable->getType().isObjCGCWeak()) in EmitAutoVarCleanups()
2180 enterByrefCleanup(NormalAndEHCleanup, emission.Addr, Flags, in EmitAutoVarCleanups()
2182 cxxDestructorCanThrow(emission.Variable->getType())); in EmitAutoVarCleanups()