OLD | NEW |
1 //===--- ToolChains.h - ToolChain Implementations ---------------*- C++ -*-===// | 1 //===--- ToolChains.h - ToolChain Implementations ---------------*- C++ -*-===// |
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 #ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_H | 10 #ifndef LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_H |
(...skipping 697 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
708 CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const override; | 708 CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const override; |
709 | 709 |
710 StringRef GetGCCLibAndIncVersion() const { return GCCLibAndIncVersion.Text; } | 710 StringRef GetGCCLibAndIncVersion() const { return GCCLibAndIncVersion.Text; } |
711 | 711 |
712 static std::string GetGnuDir(const std::string &InstalledDir, | 712 static std::string GetGnuDir(const std::string &InstalledDir, |
713 const llvm::opt::ArgList &Args); | 713 const llvm::opt::ArgList &Args); |
714 | 714 |
715 static StringRef GetTargetCPU(const llvm::opt::ArgList &Args); | 715 static StringRef GetTargetCPU(const llvm::opt::ArgList &Args); |
716 }; | 716 }; |
717 | 717 |
| 718 // @LOCALMOD-START |
| 719 class LLVM_LIBRARY_VISIBILITY NaCl_TC : public Generic_ELF { |
| 720 public: |
| 721 NaCl_TC(const Driver &D, const llvm::Triple &Triple, |
| 722 const llvm::opt::ArgList &Args); |
| 723 |
| 724 void |
| 725 AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, |
| 726 llvm::opt::ArgStringList &CC1Args) const override; |
| 727 void |
| 728 AddClangCXXStdlibIncludeArgs(const llvm::opt::ArgList &DriverArgs, |
| 729 llvm::opt::ArgStringList &CC1Args) const override
; |
| 730 |
| 731 CXXStdlibType |
| 732 GetCXXStdlibType(const llvm::opt::ArgList &Args) const override; |
| 733 |
| 734 void |
| 735 AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args, |
| 736 llvm::opt::ArgStringList &CmdArgs) const override; |
| 737 |
| 738 bool |
| 739 IsIntegratedAssemblerDefault() const override { return false; } |
| 740 |
| 741 // Get the path to the file containing NaCl's ARM macros. It lives in NaCl_TC |
| 742 // because the AssembleARM tool needs a const char * that it can pass around |
| 743 // and the toolchain outlives all the jobs. |
| 744 const char *GetNaClArmMacrosPath() const { return NaClArmMacrosPath.c_str(); } |
| 745 |
| 746 std::string ComputeEffectiveClangTriple(const llvm::opt::ArgList &Args, |
| 747 types::ID InputType) const override; |
| 748 std::string Linker; |
| 749 |
| 750 protected: |
| 751 Tool *buildLinker() const override; |
| 752 Tool *buildAssembler() const override; |
| 753 |
| 754 private: |
| 755 std::string NaClArmMacrosPath; |
| 756 }; |
| 757 // @LOCALMOD-END |
| 758 |
| 759 |
718 /// TCEToolChain - A tool chain using the llvm bitcode tools to perform | 760 /// TCEToolChain - A tool chain using the llvm bitcode tools to perform |
719 /// all subcommands. See http://tce.cs.tut.fi for our peculiar target. | 761 /// all subcommands. See http://tce.cs.tut.fi for our peculiar target. |
720 class LLVM_LIBRARY_VISIBILITY TCEToolChain : public ToolChain { | 762 class LLVM_LIBRARY_VISIBILITY TCEToolChain : public ToolChain { |
721 public: | 763 public: |
722 TCEToolChain(const Driver &D, const llvm::Triple &Triple, | 764 TCEToolChain(const Driver &D, const llvm::Triple &Triple, |
723 const llvm::opt::ArgList &Args); | 765 const llvm::opt::ArgList &Args); |
724 ~TCEToolChain(); | 766 ~TCEToolChain(); |
725 | 767 |
726 bool IsMathErrnoDefault() const override; | 768 bool IsMathErrnoDefault() const override; |
727 bool isPICDefault() const override; | 769 bool isPICDefault() const override; |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
813 llvm::opt::ArgStringList &CC1Args) const override; | 855 llvm::opt::ArgStringList &CC1Args) const override; |
814 void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args, | 856 void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args, |
815 llvm::opt::ArgStringList &CmdArgs) const override; | 857 llvm::opt::ArgStringList &CmdArgs) const override; |
816 }; | 858 }; |
817 | 859 |
818 } // end namespace toolchains | 860 } // end namespace toolchains |
819 } // end namespace driver | 861 } // end namespace driver |
820 } // end namespace clang | 862 } // end namespace clang |
821 | 863 |
822 #endif | 864 #endif |
OLD | NEW |