================ @@ -1247,6 +1247,19 @@ Compilation *Driver::BuildCompilation(ArrayRef<const char *> ArgList) { CLOptions = std::make_unique<InputArgList>( ParseArgStrings(ArgList.slice(1), /*UseDriverMode=*/true, ContainsError)); + // We want to determine the triple early so that we load the correct config. + if (IsCLMode()) { + // clang-cl targets MSVC-style Win32. + llvm::Triple T(TargetTriple); + T.setOS(llvm::Triple::Win32); + T.setVendor(llvm::Triple::PC); + T.setEnvironment(llvm::Triple::MSVC); + T.setObjectFormat(llvm::Triple::COFF); + if (CLOptions->hasArg(options::OPT__SLASH_arm64EC)) + T.setArch(llvm::Triple::aarch64, llvm::Triple::AArch64SubArch_arm64ec); ---------------- zmodem wrote:
I thought normally the arguments in the config file should get processed *before* the command-line arguments? What are the rules for this really? https://github.com/llvm/llvm-project/pull/111397 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits