[cfe-commits] [PATCH] Abstract v-table generation into the CGCXXABI interface
John McCall
rjmccall at apple.com
Sat Jun 23 12:11:00 PDT 2012
On Jun 15, 2012, at 11:49 AM, Charles Davis wrote:
> This patch factors v-table generation into the CGCXXABI class, so that, in the future, the Microsoft C++ ABI can implement its own v-table generation.
>
> I also had to move the ItaniumCXXABI class into a header, so that CGRTTI could continue to use the getVTableLinkage() method, which now lives in ItaniumCXXABI. I thought that since CGRTTI is specific to the Itanium ABI anyway, this was OK. I don't know if you would prefer that method continue to belong to CodeGenModule, but I imagine that the Microsoft C++ ABI may have different rules for v-table visibility (which I have yet to work out).
Why don't we leave it in CGM for now, and if we see a need to abstract it, we can do so later? That means we can also leave ItaniumCXXABI private for now (although we may decide we need to expose it later, to allow some of its methods to be implemented in different files).
The remaining trivial patch, which just declares, defines, and calls EmitVTables, is approved.
John.
More information about the cfe-commits
mailing list