Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(50)

Side by Side Diff: lib/Driver/ToolChains.h

Issue 1022123003: clang: add support for asmjs arch and Emscripten OS (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-clang.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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 Emscripten
719 /// EmscriptenToolChain - A toolchain for the Emscripten C/C++ to JS compiler.
720 class LLVM_LIBRARY_VISIBILITY EmscriptenToolChain : public ToolChain {
721 public:
722 EmscriptenToolChain(const Driver &D, const llvm::Triple &Triple,
723 const llvm::opt::ArgList &Args);
724 ~EmscriptenToolChain();
725
726 bool IsMathErrnoDefault() const;
jvoung (off chromium) 2015/03/20 17:07:07 Indicate these methods are "override" ? Why not j
JF 2015/03/20 18:49:38 Done.
727 bool IsObjCNonFragileABIDefault() const;
728 bool isPICDefault() const;
729 bool isPIEDefault() const;
730 bool isPICDefaultForced() const;
731 };
732 // @LOCALMOD-END Emscripten
733
718 // @LOCALMOD-START 734 // @LOCALMOD-START
719 class LLVM_LIBRARY_VISIBILITY NaCl_TC : public Generic_ELF { 735 class LLVM_LIBRARY_VISIBILITY NaCl_TC : public Generic_ELF {
720 public: 736 public:
721 NaCl_TC(const Driver &D, const llvm::Triple &Triple, 737 NaCl_TC(const Driver &D, const llvm::Triple &Triple,
722 const llvm::opt::ArgList &Args); 738 const llvm::opt::ArgList &Args);
723 739
724 void 740 void
725 AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, 741 AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs,
726 llvm::opt::ArgStringList &CC1Args) const override; 742 llvm::opt::ArgStringList &CC1Args) const override;
727 void 743 void
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
855 llvm::opt::ArgStringList &CC1Args) const override; 871 llvm::opt::ArgStringList &CC1Args) const override;
856 void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args, 872 void AddCXXStdlibLibArgs(const llvm::opt::ArgList &Args,
857 llvm::opt::ArgStringList &CmdArgs) const override; 873 llvm::opt::ArgStringList &CmdArgs) const override;
858 }; 874 };
859 875
860 } // end namespace toolchains 876 } // end namespace toolchains
861 } // end namespace driver 877 } // end namespace driver
862 } // end namespace clang 878 } // end namespace clang
863 879
864 #endif 880 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698