| OLD | NEW |
| 1 //===--- ToolChains.cpp - ToolChain Implementations -----------------------===// | 1 //===--- ToolChains.cpp - ToolChain Implementations -----------------------===// |
| 2 // | 2 // |
| 3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
| 4 // | 4 // |
| 5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
| 6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
| 7 // | 7 // |
| 8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
| 9 | 9 |
| 10 #include "ToolChains.h" | 10 #include "ToolChains.h" |
| (...skipping 2338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2349 file_paths.push_back(ToolPath + "x86_64-nacl"); | 2349 file_paths.push_back(ToolPath + "x86_64-nacl"); |
| 2350 break; | 2350 break; |
| 2351 } | 2351 } |
| 2352 case llvm::Triple::arm: { | 2352 case llvm::Triple::arm: { |
| 2353 file_paths.push_back(FilePath + "arm-nacl/lib"); | 2353 file_paths.push_back(FilePath + "arm-nacl/lib"); |
| 2354 file_paths.push_back(FilePath + "arm-nacl/usr/lib"); | 2354 file_paths.push_back(FilePath + "arm-nacl/usr/lib"); |
| 2355 prog_paths.push_back(ProgPath + "arm-nacl/bin"); | 2355 prog_paths.push_back(ProgPath + "arm-nacl/bin"); |
| 2356 file_paths.push_back(ToolPath + "arm-nacl"); | 2356 file_paths.push_back(ToolPath + "arm-nacl"); |
| 2357 break; | 2357 break; |
| 2358 } | 2358 } |
| 2359 case llvm::Triple::mipsel: { |
| 2360 file_paths.push_back(FilePath + "mipsel-nacl/lib"); |
| 2361 file_paths.push_back(FilePath + "mipsel-nacl/usr/lib"); |
| 2362 prog_paths.push_back(ProgPath + "bin"); |
| 2363 file_paths.push_back(ToolPath + "mipsel-nacl"); |
| 2364 break; |
| 2365 } |
| 2359 default: | 2366 default: |
| 2360 break; | 2367 break; |
| 2361 } | 2368 } |
| 2362 | 2369 |
| 2363 // Use provided linker, not system linker | 2370 // Use provided linker, not system linker |
| 2364 Linker = GetLinkerPath(); | 2371 Linker = GetLinkerPath(); |
| 2365 NaClArmMacrosPath = GetFilePath("nacl-arm-macros.s"); | 2372 NaClArmMacrosPath = GetFilePath("nacl-arm-macros.s"); |
| 2366 } | 2373 } |
| 2367 | 2374 |
| 2368 void NaCl_TC::AddClangSystemIncludeArgs(const ArgList &DriverArgs, | 2375 void NaCl_TC::AddClangSystemIncludeArgs(const ArgList &DriverArgs, |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2438 llvm::sys::path::append(P, "arm-nacl/include/c++/v1"); | 2445 llvm::sys::path::append(P, "arm-nacl/include/c++/v1"); |
| 2439 addSystemInclude(DriverArgs, CC1Args, P.str()); | 2446 addSystemInclude(DriverArgs, CC1Args, P.str()); |
| 2440 } else if (getTriple().getArch() == llvm::Triple::x86) { | 2447 } else if (getTriple().getArch() == llvm::Triple::x86) { |
| 2441 SmallString<128> P(D.Dir + "/../"); | 2448 SmallString<128> P(D.Dir + "/../"); |
| 2442 llvm::sys::path::append(P, "x86_64-nacl/include/c++/v1"); | 2449 llvm::sys::path::append(P, "x86_64-nacl/include/c++/v1"); |
| 2443 addSystemInclude(DriverArgs, CC1Args, P.str()); | 2450 addSystemInclude(DriverArgs, CC1Args, P.str()); |
| 2444 } else if (getTriple().getArch() == llvm::Triple::x86_64) { | 2451 } else if (getTriple().getArch() == llvm::Triple::x86_64) { |
| 2445 SmallString<128> P(D.Dir + "/../"); | 2452 SmallString<128> P(D.Dir + "/../"); |
| 2446 llvm::sys::path::append(P, "x86_64-nacl/include/c++/v1"); | 2453 llvm::sys::path::append(P, "x86_64-nacl/include/c++/v1"); |
| 2447 addSystemInclude(DriverArgs, CC1Args, P.str()); | 2454 addSystemInclude(DriverArgs, CC1Args, P.str()); |
| 2455 } else if (getTriple().getArch() == llvm::Triple::mipsel) { |
| 2456 SmallString<128> P(D.Dir + "/../"); |
| 2457 llvm::sys::path::append(P, "mipsel-nacl/include/c++/v1"); |
| 2458 addSystemInclude(DriverArgs, CC1Args, P.str()); |
| 2448 } | 2459 } |
| 2449 } | 2460 } |
| 2450 | 2461 |
| 2451 ToolChain::CXXStdlibType NaCl_TC::GetCXXStdlibType(const ArgList &Args) const { | 2462 ToolChain::CXXStdlibType NaCl_TC::GetCXXStdlibType(const ArgList &Args) const { |
| 2452 if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { | 2463 if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { |
| 2453 StringRef Value = A->getValue(); | 2464 StringRef Value = A->getValue(); |
| 2454 if (Value == "libc++") | 2465 if (Value == "libc++") |
| 2455 return ToolChain::CST_Libcxx; | 2466 return ToolChain::CST_Libcxx; |
| 2456 getDriver().Diag(diag::err_drv_invalid_stdlib_name) | 2467 getDriver().Diag(diag::err_drv_invalid_stdlib_name) |
| 2457 << A->getAsString(Args); | 2468 << A->getAsString(Args); |
| (...skipping 1236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3694 StringRef(cl_include_dir).split(Dirs, StringRef(EnvPathSeparatorStr)); | 3705 StringRef(cl_include_dir).split(Dirs, StringRef(EnvPathSeparatorStr)); |
| 3695 ArrayRef<StringRef> DirVec(Dirs); | 3706 ArrayRef<StringRef> DirVec(Dirs); |
| 3696 addSystemIncludes(DriverArgs, CC1Args, DirVec); | 3707 addSystemIncludes(DriverArgs, CC1Args, DirVec); |
| 3697 } | 3708 } |
| 3698 } | 3709 } |
| 3699 | 3710 |
| 3700 void XCore::AddCXXStdlibLibArgs(const ArgList &Args, | 3711 void XCore::AddCXXStdlibLibArgs(const ArgList &Args, |
| 3701 ArgStringList &CmdArgs) const { | 3712 ArgStringList &CmdArgs) const { |
| 3702 // We don't output any lib args. This is handled by xcc. | 3713 // We don't output any lib args. This is handled by xcc. |
| 3703 } | 3714 } |
| OLD | NEW |