OLD | NEW |
1 //===--- Tools.h - Tool Implementations -------------------------*- C++ -*-===// | 1 //===--- Tools.h - Tool 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_TOOLS_H | 10 #ifndef LLVM_CLANG_LIB_DRIVER_TOOLS_H |
(...skipping 469 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
480 bool hasIntegratedCPP() const override { return false; } | 480 bool hasIntegratedCPP() const override { return false; } |
481 bool isLinkJob() const override { return true; } | 481 bool isLinkJob() const override { return true; } |
482 | 482 |
483 void ConstructJob(Compilation &C, const JobAction &JA, | 483 void ConstructJob(Compilation &C, const JobAction &JA, |
484 const InputInfo &Output, | 484 const InputInfo &Output, |
485 const InputInfoList &Inputs, | 485 const InputInfoList &Inputs, |
486 const llvm::opt::ArgList &TCArgs, | 486 const llvm::opt::ArgList &TCArgs, |
487 const char *LinkingOutput) const override; | 487 const char *LinkingOutput) const override; |
488 }; | 488 }; |
489 } | 489 } |
| 490 |
| 491 // @LOCALMOD-BEGIN |
| 492 /// nacltools -- Directly call GNU Binutils' assembler and linker. |
| 493 namespace nacltools { |
| 494 class LLVM_LIBRARY_VISIBILITY AssembleARM : public gnutools::Assemble { |
| 495 public: |
| 496 AssembleARM(const ToolChain &TC) : gnutools::Assemble(TC) {} |
| 497 |
| 498 void ConstructJob(Compilation &C, const JobAction &JA, |
| 499 const InputInfo &Output, |
| 500 const InputInfoList &Inputs, |
| 501 const llvm::opt::ArgList &TCArgs, |
| 502 const char *LinkingOutput) const override; |
| 503 }; |
| 504 class LLVM_LIBRARY_VISIBILITY Link : public Tool { |
| 505 public: |
| 506 Link(const ToolChain &TC) : Tool("NaCl::Link", "linker", TC) {} |
| 507 |
| 508 bool hasIntegratedCPP() const override { return false; } |
| 509 bool isLinkJob() const override { return true; } |
| 510 |
| 511 void ConstructJob(Compilation &C, const JobAction &JA, |
| 512 const InputInfo &Output, |
| 513 const InputInfoList &Inputs, |
| 514 const llvm::opt::ArgList &TCArgs, |
| 515 const char *LinkingOutput) const override; |
| 516 }; |
| 517 } |
| 518 // @LOCALMOD-END |
| 519 |
| 520 |
490 /// minix -- Directly call GNU Binutils assembler and linker | 521 /// minix -- Directly call GNU Binutils assembler and linker |
491 namespace minix { | 522 namespace minix { |
492 class LLVM_LIBRARY_VISIBILITY Assemble : public GnuTool { | 523 class LLVM_LIBRARY_VISIBILITY Assemble : public GnuTool { |
493 public: | 524 public: |
494 Assemble(const ToolChain &TC) : GnuTool("minix::Assemble", "assembler", | 525 Assemble(const ToolChain &TC) : GnuTool("minix::Assemble", "assembler", |
495 TC) {} | 526 TC) {} |
496 | 527 |
497 bool hasIntegratedCPP() const override { return false; } | 528 bool hasIntegratedCPP() const override { return false; } |
498 | 529 |
499 void ConstructJob(Compilation &C, const JobAction &JA, | 530 void ConstructJob(Compilation &C, const JobAction &JA, |
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
670 const llvm::opt::ArgList &TCArgs, | 701 const llvm::opt::ArgList &TCArgs, |
671 const char *LinkingOutput) const override; | 702 const char *LinkingOutput) const override; |
672 }; | 703 }; |
673 } | 704 } |
674 | 705 |
675 } // end namespace toolchains | 706 } // end namespace toolchains |
676 } // end namespace driver | 707 } // end namespace driver |
677 } // end namespace clang | 708 } // end namespace clang |
678 | 709 |
679 #endif | 710 #endif |
OLD | NEW |