[PATCH] [ms-cxxabi] Destroy temporary record arguments in the callee
Reid Kleckner
rnk at google.com
Thu Jun 6 09:32:34 PDT 2013
Hi rjmccall,
Itanium destroys them in the caller at the end of the full expression,
but MSVC destroys them in the callee.
This should help clang compile MSVC's debug iterators more correctly.
There is still an outstanding issue of a memcpy emitted by the LLVM
backend, which is not correct for C++ records.
Helps fix PR16226.
http://llvm-reviews.chandlerc.com/D929
Files:
include/clang/Basic/TargetCXXABI.h
lib/CodeGen/CGCall.cpp
lib/CodeGen/CGDecl.cpp
lib/CodeGen/CGExpr.cpp
lib/CodeGen/CodeGenFunction.h
lib/CodeGen/MicrosoftCXXABI.cpp
test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D929.1.patch
Type: text/x-patch
Size: 13474 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130606/b296e552/attachment.bin>
More information about the cfe-commits
mailing list