Lines Matching +full:diag +full:- +full:version
1 //===-- BareMetal.cpp - Bare Metal ToolChain --------------------*- C++ -*-===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
45 MultilibBuilder().flag("-march=rv64imac").flag("-mabi=lp64"); in findRISCVMultilibs()
47 .flag("-march=rv64imafdc") in findRISCVMultilibs()
48 .flag("-mabi=lp64d"); in findRISCVMultilibs()
54 addMultilibFlag((Arch == "rv64imac"), "-march=rv64imac", Flags); in findRISCVMultilibs()
55 addMultilibFlag(UseImafdc, "-march=rv64imafdc", Flags); in findRISCVMultilibs()
56 addMultilibFlag(Abi == "lp64", "-mabi=lp64", Flags); in findRISCVMultilibs()
57 addMultilibFlag(Abi == "lp64d", "-mabi=lp64d", Flags); in findRISCVMultilibs()
65 MultilibBuilder().flag("-march=rv32imac").flag("-mabi=ilp32"); in findRISCVMultilibs()
67 .flag("-march=rv32i") in findRISCVMultilibs()
68 .flag("-mabi=ilp32"); in findRISCVMultilibs()
70 .flag("-march=rv32im") in findRISCVMultilibs()
71 .flag("-mabi=ilp32"); in findRISCVMultilibs()
73 .flag("-march=rv32iac") in findRISCVMultilibs()
74 .flag("-mabi=ilp32"); in findRISCVMultilibs()
76 .flag("-march=rv32imafc") in findRISCVMultilibs()
77 .flag("-mabi=ilp32f"); in findRISCVMultilibs()
85 addMultilibFlag(UseI, "-march=rv32i", Flags); in findRISCVMultilibs()
86 addMultilibFlag(UseIm, "-march=rv32im", Flags); in findRISCVMultilibs()
87 addMultilibFlag((Arch == "rv32iac"), "-march=rv32iac", Flags); in findRISCVMultilibs()
88 addMultilibFlag((Arch == "rv32imac"), "-march=rv32imac", Flags); in findRISCVMultilibs()
89 addMultilibFlag(UseImafc, "-march=rv32imafc", Flags); in findRISCVMultilibs()
90 addMultilibFlag(Abi == "ilp32", "-mabi=ilp32", Flags); in findRISCVMultilibs()
91 addMultilibFlag(Abi == "ilp32f", "-mabi=ilp32f", Flags); in findRISCVMultilibs()
117 /// Is the triple {arm,armeb,thumb,thumbeb}-none-none-{eabi,eabihf} ?
138 /// Is the triple {aarch64.aarch64_be}-none-elf?
166 /// Is the triple powerpc[64][le]-*-none-eabi?
187 D.Diag(clang::diag::warn_drv_missing_multilib) << llvm::join(Flags, " "); in findMultilibsFromYAML()
191 D.Diag(clang::diag::note_drv_available_multilibs) << ss.str(); in findMultilibsFromYAML()
203 llvm::sys::path::append(SysRootDir, "..", "lib", "clang-runtimes"); in computeBaseSysRoot()
208 // New behaviour: if multilib.yaml is found then use clang-runtimes as the in computeBaseSysRoot()
253 // Get multilibs in reverse order because they're ordered most-specific last. in getOrderedMultilibs()
293 CC1Args.push_back("-nostdsysteminc"); in addClangTargetOptions()
306 std::string Version = detectLibcxxVersion(Path); in AddClangCXXStdlibIncludeArgs() local
307 if (Version.empty()) in AddClangCXXStdlibIncludeArgs()
311 // First the per-target include dir: include/<target>/c++/v1. in AddClangCXXStdlibIncludeArgs()
313 llvm::sys::path::append(TargetDir, Target, "c++", Version); in AddClangCXXStdlibIncludeArgs()
320 llvm::sys::path::append(Dir, "c++", Version); in AddClangCXXStdlibIncludeArgs()
361 Generic_GCC::GCCVersion Version = {"", -1, -1, -1, "", "", ""}; in AddClangCXXStdlibIncludeArgs() local
362 // Walk the subdirs, and find the one with the newest gcc version: in AddClangCXXStdlibIncludeArgs()
367 StringRef VersionText = llvm::sys::path::filename(LI->path()); in AddClangCXXStdlibIncludeArgs()
369 if (CandidateVersion.Major == -1) in AddClangCXXStdlibIncludeArgs()
371 if (CandidateVersion <= Version) in AddClangCXXStdlibIncludeArgs()
373 Version = CandidateVersion; in AddClangCXXStdlibIncludeArgs()
375 if (Version.Major != -1) { in AddClangCXXStdlibIncludeArgs()
376 llvm::sys::path::append(Dir, Version.Text); in AddClangCXXStdlibIncludeArgs()
389 CmdArgs.push_back("-lc++"); in AddCXXStdlibLibArgs()
391 CmdArgs.push_back("-lc++experimental"); in AddCXXStdlibLibArgs()
392 CmdArgs.push_back("-lc++abi"); in AddCXXStdlibLibArgs()
395 CmdArgs.push_back("-lstdc++"); in AddCXXStdlibLibArgs()
396 CmdArgs.push_back("-lsupc++"); in AddCXXStdlibLibArgs()
399 CmdArgs.push_back("-lunwind"); in AddCXXStdlibLibArgs()
411 CmdArgs.push_back("-lgcc"); in AddLinkRuntimeLib()
424 // Silence warning for "clang -g foo.o -o foo" in ConstructJob()
426 // and "clang -emit-llvm foo.o -o foo" in ConstructJob()
428 // and for "clang -w foo.o -o foo". Other warning options are already in ConstructJob()
431 // Silence warnings when linking C code with a C++ '-stdlib' argument. in ConstructJob()
434 // ar tool command "llvm-ar <options> <output_file> <input_files>". in ConstructJob()
451 D.Diag(diag::err_drv_unable_to_remove_file) << EC.message(); in ConstructJob()
476 CmdArgs.push_back("-Bstatic"); in ConstructJob()
479 CmdArgs.push_back("--no-relax"); in ConstructJob()
485 CmdArgs.push_back(IsBigEndian ? "-EB" : "-EL"); in ConstructJob()
487 CmdArgs.push_back(Arch == llvm::Triple::aarch64_be ? "-EB" : "-EL"); in ConstructJob()
496 CmdArgs.push_back(Args.MakeArgString(llvm::Twine("-L", LibPath))); in ConstructJob()
502 CmdArgs.push_back("-lc"); in ConstructJob()
503 CmdArgs.push_back("-lm"); in ConstructJob()
512 Inputs, [](const InputInfo &II) -> bool { return II.isFilename(); }); in ConstructJob()
522 CmdArgs.push_back("-X"); in ConstructJob()
524 // The R_ARM_TARGET2 relocation must be treated as R_ARM_REL32 on arm*-*-elf in ConstructJob()
525 // and arm*-*-eabi (the default is R_ARM_GOT_PREL, used on arm*-*-linux and in ConstructJob()
526 // arm*-*-*bsd). in ConstructJob()
528 CmdArgs.push_back("--target2=rel"); in ConstructJob()
530 CmdArgs.push_back("-o"); in ConstructJob()