[PATCH] [ms-cxxabi] Implement member data pointers for non-dynamic classes
Reid Kleckner
rnk at google.com
Wed Mar 20 15:12:28 PDT 2013
Hi rjmccall,
For non-dynamic classes (no virtual bases), member data pointers are
simple offsets from the base of the record. Dynamic classes use an
aggregate for member data pointers and are therefore currently
unsupported.
Unlike Itanium, the ms ABI uses 0 to represent null for polymorphic
classes. Non-polymorphic classes use -1 like Itanium, since 0 is a
valid field offset.
http://llvm-reviews.chandlerc.com/D558
Files:
lib/CodeGen/CGCXXABI.cpp
lib/CodeGen/CGCXXABI.h
lib/CodeGen/ItaniumCXXABI.cpp
lib/CodeGen/MicrosoftCXXABI.cpp
test/CodeGenCXX/microsoft-abi-member-pointers.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D558.1.patch
Type: text/x-patch
Size: 10885 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130320/fb09a1cc/attachment.bin>
More information about the cfe-commits
mailing list