Extract calls to method pointers out as an ABI routine.
No functionality change.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111752 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CGCXXABI.h b/lib/CodeGen/CGCXXABI.h
index 7df63d3..7a89a3d 100644
--- a/lib/CodeGen/CGCXXABI.h
+++ b/lib/CodeGen/CGCXXABI.h
@@ -15,8 +15,15 @@
 #ifndef CLANG_CODEGEN_CXXABI_H
 #define CLANG_CODEGEN_CXXABI_H
 
+namespace llvm {
+  class Value;
+}
+
 namespace clang {
+  class MemberPointerType;
+
 namespace CodeGen {
+  class CodeGenFunction;
   class CodeGenModule;
   class MangleContext;
 
@@ -27,12 +34,19 @@
 
   /// Gets the mangle context.
   virtual MangleContext &getMangleContext() = 0;
+
+  virtual llvm::Value *
+  EmitLoadOfMemberFunctionPointer(CodeGenFunction &CGF,
+                                  llvm::Value *&This,
+                                  llvm::Value *MemPtr,
+                                  const MemberPointerType *MPT);
 };
 
 /// Creates an instance of a C++ ABI class.
 CGCXXABI *CreateARMCXXABI(CodeGenModule &CGM);
 CGCXXABI *CreateItaniumCXXABI(CodeGenModule &CGM);
 CGCXXABI *CreateMicrosoftCXXABI(CodeGenModule &CGM);
+
 }
 }