[all-commits] [llvm/llvm-project] c456fd: [CIR] Upstream framework for NRVO cleanup (#170569)
Andy Kaylor via All-commits
all-commits at lists.llvm.org
Thu Dec 4 13:09:02 PST 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c456fd83f25276cf5819c2dafc687c78f03b2ab5
https://github.com/llvm/llvm-project/commit/c456fd83f25276cf5819c2dafc687c78f03b2ab5
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-12-04 (Thu, 04 Dec 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/test/CIR/CodeGen/nrvo.cpp
Log Message:
-----------
[CIR] Upstream framework for NRVO cleanup (#170569)
This upstreams the framework code to handle NRVO cleanup. At this point
the implementation follows the incubator in not performing the actual
cleanup, but it populates the EH stack so that the cleanup can be done.
This inserts a flag variable that tracks whether we are performing an
NRVO return. Classic codegen checks this variable and calls a destructor
if it is not set during normal cleanup. The check and destructor call
are not yet implemented here.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list