Searched refs:NRVO (Results 1 - 6 of 6) sorted by relevance

/freebsd-13-stable/contrib/llvm-project/clang/lib/Sema/
H A DScope.cpp94 NRVO.setPointerAndInt(nullptr, 0);
122 if (VarDecl *Candidate = NRVO.getPointer()) {
130 if (NRVO.getInt())
132 else if (NRVO.getPointer())
133 getParent()->addNRVOCandidate(NRVO.getPointer());
196 if (NRVO.getInt())
197 OS << "NRVO not allowed\n";
198 else if (NRVO.getPointer())
199 OS << "NRVO candidate : (clang::VarDecl*)" << NRVO
[all...]
H A DSemaInit.cpp3344 return LocAndNRVO.NRVO;
6494 // If the entity allows NRVO, mark the construction as elidable
/freebsd-13-stable/contrib/llvm-project/clang/include/clang/Sema/
H A DScope.h207 /// A lattice consisting of undefined, a single NRVO candidate variable in
209 llvm::PointerIntPair<VarDecl *, 1, bool> NRVO; member in class:clang::Scope
492 if (NRVO.getInt())
494 if (NRVO.getPointer() == nullptr) {
495 NRVO.setPointer(VD);
498 if (NRVO.getPointer() != VD)
503 NRVO.setInt(true);
504 NRVO.setPointer(nullptr);
H A DInitialization.h151 /// named return value optimization (NRVO).
152 bool NRVO; member in struct:clang::LN
218 bool NRVO = false)
221 LocAndNRVO.NRVO = NRVO;
286 QualType Type, bool NRVO) {
287 return InitializedEntity(EK_Result, ReturnLoc, Type, NRVO);
296 QualType Type, bool NRVO) {
297 return InitializedEntity(EK_BlockElement, BlockVarLoc, Type, NRVO);
301 QualType Type, bool NRVO) {
285 InitializeResult(SourceLocation ReturnLoc, QualType Type, bool NRVO) argument
295 InitializeBlock(SourceLocation BlockVarLoc, QualType Type, bool NRVO) argument
300 InitializeLambdaToBlock(SourceLocation BlockVarLoc, QualType Type, bool NRVO) argument
307 InitializeException(SourceLocation ThrowLoc, QualType Type, bool NRVO) argument
[all...]
/freebsd-13-stable/contrib/llvm-project/clang/lib/CodeGen/
H A DCGDecl.cpp494 bool NRVO = flags.isForNormalCleanup() && NRVOFlag; variable
497 if (NRVO) {
498 // If we exited via NRVO, we skip the destructor call.
509 if (NRVO) CGF.EmitBlock(SkipDtorBB);
1412 bool NRVO = getLangOpts().ElideConstructors && D.isNRVOVariable(); local
1431 // If the variable's a const type, and it's neither an NRVO
1438 (CGM.getCodeGenOpts().MergeAllConstants && !NRVO &&
1454 // - it's an NRVO variable.
1456 if (NRVO) {
1467 // Create a flag that is used to indicate when the NRVO wa
[all...]
/freebsd-13-stable/contrib/llvm-project/clang/include/clang/AST/
H A DDecl.h947 /// (NRVO).
1346 /// return value optimization (NRVO).
1348 /// The named return value optimization (NRVO) works by marking certain
1349 /// non-volatile local variables of class type as NRVO objects. These
1353 /// each return that returns the NRVO object will have this variable as its
1354 /// NRVO candidate.
1358 void setNRVOVariable(bool NRVO) {
1360 NonParmVarDeclBits.NRVOVariable = NRVO;

Completed in 155 milliseconds