How Virtual Tables Work in the Itanium C++ ABI
Summary
Explains how Itanium C++ ABI implements runtime polymorphism via vtables, including the composition of vptrs, vtable entries, and RTTI pointers. Describes single and multiple inheritance layouts, virtual thunks, and the construction/destruction sequences (VTT, C1/C2, D0-D2). Provides practical implications for debugging, performance, and cross-compiler behavior.