rnk added inline comments. ================ Comment at: include/clang/Basic/LangOptions.def:220 @@ -218,3 +219,3 @@ LANGOPT(MRTD , 1, 0, "-mrtd calling convention") BENIGN_LANGOPT(DelayedTemplateParsing , 1, 0, "delayed template parsing") ---------------- Let's get rid of this and have it use a single DefaultCallingConv LangOpt.
================ Comment at: include/clang/Driver/CC1Options.td:613 @@ -612,1 +612,3 @@ HelpText<"Allow function arguments and returns of type half">; +def fms_ms_default_calling_conv_EQ : Joined<["-"], "fms-default-calling-conv=">, + HelpText<"Set default MS calling convention">; ---------------- Let's unify the -cc1 layer with -mrtd, and just have a single -fdefault-calling-convention=stdcall/etc flag. ================ Comment at: lib/AST/ASTContext.cpp:8610 @@ -8609,2 +8609,3 @@ - return Target->getDefaultCallingConv(TargetInfo::CCMT_Unknown); + if (LangOpts.MSVCCompat) { + switch (LangOpts.getDefaultMSCallingConv()) { ---------------- I don't think we need to guard this on MSVCCompat, it'll be unset usually. It will also help us avoid a special path for MRTD. ================ Comment at: lib/AST/ASTContext.cpp:8616-8619 @@ +8615,6 @@ + return CC_C; + case LangOptions::DCC_FastCall: + return CC_X86FastCall; + case LangOptions::DCC_StdCall: + return CC_X86StdCall; + case LangOptions::DCC_VectorCall: ---------------- Neither fastcall nor stdcall can be applied to variadic functions. http://reviews.llvm.org/D20171 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits