[all-commits] [llvm/llvm-project] 61aec6: [libcxxabi] Add macro for changing functions to su...
Leonard Chan via All-commits
all-commits at lists.llvm.org
Mon Nov 30 10:51:03 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 61aec69a65dec949f3d2556c4d0efaa87869e1ee
https://github.com/llvm/llvm-project/commit/61aec69a65dec949f3d2556c4d0efaa87869e1ee
Author: Leonard Chan <leonardchan at google.com>
Date: 2020-11-30 (Mon, 30 Nov 2020)
Changed paths:
M libcxxabi/src/private_typeinfo.cpp
Log Message:
-----------
[libcxxabi] Add macro for changing functions to support the relative vtables ABI
Under the relative vtables ABI, __dynamic_cast will not work since it assumes
the vtable pointer is 2 ptrdiff_ts away from the start of the vtable (8-byte
offset to top + 8-byte pointer to typeinfo) when it is actually 8 bytes away
(4-byte offset to top + 4-byte offset to typeinfo). This adjusts the logic under
__dynamic_cast and other areas vtable calculations are done to support this ABI
when it's used.
Differential Revision: https://reviews.llvm.org/D77606
More information about the All-commits
mailing list