[ms-cxxabi] Emit fewer trivial return adjusting thunks
Most importantly, this makes our vtable layout match MSVC's. Previously we would emit a return adjusting thunk whenever the return types differed, even if the adjustment would have been trivial. MSVC does emit some trivial return adjusting thunks, but only if there was already an overridden method that required a return adjustment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@198080 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- lib/AST/VTableBuilder.cpp 23 additions, 2 deletionslib/AST/VTableBuilder.cpp
- test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp 104 additions, 0 deletionstest/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
- test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp 4 additions, 5 deletionstest/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
Loading
Please register or sign in to comment