[PATCH] Make thunk this/return adjustment ABI-specific. Also, fix the return adjustment when using -cxx-abi microsoft
Timur Iskhodzhanov
timurrrr at google.com
Fri Oct 25 11:38:57 PDT 2013
Hi rnk,
Hi Reid,
Can you please review this patch?
The only thing I'm not entirely sure is whether we want to use
a) a union of structs
or
b) should just duplicate a bunch of code and make the ABI-specific CG interfaces to pass around ABI-specific ThunkInfos.
(b) would likely require cast<>ing in a few places...
(a) sounds easier, so I picked unions :)
I'm planning to use a similar approach with virtual this adjustment in the following patch (that one is a bit more complex), so wanted to come up with a good decision in the simpler half of the whole refactor+fix patch.
--
Timur
http://llvm-reviews.chandlerc.com/D2026
Files:
include/clang/Basic/ABI.h
lib/AST/ItaniumMangle.cpp
lib/AST/VTableBuilder.cpp
lib/CodeGen/CGCXXABI.h
lib/CodeGen/CGVTables.cpp
lib/CodeGen/ItaniumCXXABI.cpp
lib/CodeGen/MicrosoftCXXABI.cpp
test/CodeGenCXX/microsoft-abi-thunks.cpp
test/CodeGenCXX/microsoft-abi-vtables-multiple-nonvirtual-inheritance.cpp
test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D2026.1.patch
Type: text/x-patch
Size: 36781 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20131025/91eaacc0/attachment.bin>
More information about the cfe-commits
mailing list