<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Oct 9, 2013 at 4:33 AM, Timur Iskhodzhanov <span dir="ltr"><<a href="mailto:timurrrr@google.com" target="_blank">timurrrr@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: timurrrr<br><br>
Modified: cfe/trunk/lib/CodeGen/CGVTables.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGVTables.h?rev=192288&r1=192287&r2=192288&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGVTables.h?rev=192288&r1=192287&r2=192288&view=diff</a><br>

==============================================================================<br>
--- cfe/trunk/lib/CodeGen/CGVTables.h (original)<br>
+++ cfe/trunk/lib/CodeGen/CGVTables.h Wed Oct  9 06:33:51 2013<br>
@@ -33,7 +33,7 @@ class CodeGenVTables {<br>
<br>
   // FIXME: Consider moving VTContext and VFTContext into respective CXXABI<br>
   // classes?<br>
-  VTableContext VTContext;<br>
+  ItaniumVTableContext VTContext;<br>
   OwningPtr<MicrosoftVFTableContext> VFTContext;<br>
<br>
   /// VTableAddressPointsMapTy - Address points for a single vtable.<br>
@@ -72,7 +72,7 @@ public:<br>
<br>
   CodeGenVTables(CodeGenModule &CGM);<br>
<br>
-  VTableContext &getVTableContext() { return VTContext; }<br>
+  ItaniumVTableContext &getVTableContext() { return VTContext; }<br>
<br>
   MicrosoftVFTableContext &getVFTableContext() { return *VFTContext.get(); }<br></blockquote><div><br></div><div>Long term, we don't need both VFTableContext and ItaniumVTableContext, right?  Are we going to move to a common base like CGCXXABI with getters that downcast and assert that we're in the right ABI?</div>
<div><br></div><div>One thing I wanted to do was get rid of the downcasting entirely by doing something like giving the CGCXXABIs factory methods for the ABI-specific manglers, record builders, and vtable builders.</div><div>
<br></div><div>Then MicrosoftCXXABI can keep a reference to the MicrosoftMangleContext without having to get it back from CGM with a downcast.</div></div></div></div>