[PATCH] Itanium ABI: Update getAddrOfVTable to set the DLL storage class for vtables
Reid Kleckner
rnk at google.com
Mon Jun 2 14:29:13 PDT 2014
lgtm
================
Comment at: test/CodeGenCXX/dllimport.cpp:530
@@ -529,2 +529,3 @@
// MO1-DAG: @"\01??_7W@@6B@" = available_externally dllimport unnamed_addr constant [1 x i8*] [i8* bitcast (void (%struct.W*)* @"\01?foo at W@@UAEXXZ" to i8*)]
+// GO1-DAG: @_ZTV1W = available_externally dllimport unnamed_addr constant [3 x i8*] [i8* null, i8* null, i8* bitcast (void (%struct.W*)* @_ZN1W3fooEv to i8*)]
----------------
Can you test the case where the vtable is external? A class with a key function at -O0 should do.
In related news, we don't appear to emit available_externally vtables for classes with key functions at -O1. That seems like a bad missed optimization.
http://reviews.llvm.org/D3993
More information about the cfe-commits
mailing list