Index: include/clang/Driver/Options.td =================================================================== --- include/clang/Driver/Options.td +++ include/clang/Driver/Options.td @@ -1500,6 +1500,8 @@ def prebind__all__twolevel__modules : Flag<["-"], "prebind_all_twolevel_modules">; def prebind : Flag<["-"], "prebind">; def preload : Flag<["-"], "preload">; +def print_compiler_rt_file_name : Flag<["-", "--"], "print-compiler-rt-file-name">, + HelpText<"Print the library path for \"libclang_rt.builtins.*.a\"">; def print_file_name_EQ : Joined<["-", "--"], "print-file-name=">, HelpText<"Print the full library path of ">, MetaVarName<"">; def print_ivar_layout : Flag<["-"], "print-ivar-layout">, Flags<[CC1Option]>, Index: lib/Driver/Driver.cpp =================================================================== --- lib/Driver/Driver.cpp +++ lib/Driver/Driver.cpp @@ -778,6 +778,12 @@ return false; } + if (C.getArgs().hasArg(options::OPT_print_compiler_rt_file_name)) { + llvm::outs() << TC.GetRuntimeLibPath(ToolChain::RLT_CompilerRT, "builtins") + << "\n"; + return false; + } + if (C.getArgs().hasArg(options::OPT_print_libgcc_file_name)) { llvm::outs() << TC.GetRuntimeLibPath(ToolChain::RLT_Libgcc, "") << "\n"; return false;