[PATCH] [ms-cxxabi] Use x86_cdeclmethodcc for __cdecl methods on win32

Reid Kleckner rnk at google.com
Fri Jan 31 10:36:00 PST 2014

Comment at: lib/CodeGen/CGCall.cpp:415-418
@@ -411,6 +414,6 @@
 const CGFunctionInfo &
 CodeGenTypes::arrangeFunctionDeclaration(QualType resultType,
                                          const FunctionArgList &args,
                                          const FunctionType::ExtInfo &info,
                                          bool isVariadic) {
   // FIXME: Kill copy.
Richard Smith wrote:
> (I assume you've checked this is only called for non-member functions.) Can we rename this arrangeFreeFunctionDeclaration or similar?
Well, it's often used for Obj C methods, but those aren't C++ instance methods.  Is it OK to call those free functions?

Comment at: lib/CodeGen/CodeGenABITypes.cpp:67
@@ -66,3 +66,3 @@
                                          RequiredArgs args) {
-  return CGM->getTypes().arrangeLLVMFunctionInfo(returnType, argTypes,
-                                                info, args);
+  // We assume callers don't use this to get the LLVM types for C++ methods.
+  bool IsInstanceMethod = false;
Richard Smith wrote:
> Likewise, can we express this in the function name?
Sure.  Let me ping Mark Lacey, IIRC he added it for LLDB, but I can't find the call site.


More information about the cfe-commits mailing list