diff options
| author | Walter Lee <waltl@google.com> | 2017-07-31 21:00:16 +0000 |
|---|---|---|
| committer | Walter Lee <waltl@google.com> | 2017-07-31 21:00:16 +0000 |
| commit | 973131071adda8675225a1c38c126c739ae356d6 (patch) | |
| tree | 7fcdacd1dc5e3cb5d6bd4b39d92b243e51ed13c7 /clang/lib | |
| parent | 043c44efffe893d10bbba98ff9776d012e37dc1d (diff) | |
| download | bcm5719-llvm-973131071adda8675225a1c38c126c739ae356d6.tar.gz bcm5719-llvm-973131071adda8675225a1c38c126c739ae356d6.zip | |
Move RTEMS to OSTargets.h
Differential Revision: https://reviews.llvm.org/D36106
llvm-svn: 309626
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Basic/Targets/OSTargets.h | 34 | ||||
| -rw-r--r-- | clang/lib/Basic/Targets/X86.h | 34 |
2 files changed, 34 insertions, 34 deletions
diff --git a/clang/lib/Basic/Targets/OSTargets.h b/clang/lib/Basic/Targets/OSTargets.h index 3919164bf9a..519a35b06f9 100644 --- a/clang/lib/Basic/Targets/OSTargets.h +++ b/clang/lib/Basic/Targets/OSTargets.h @@ -495,6 +495,40 @@ public: } }; +// RTEMS Target +template <typename Target> +class LLVM_LIBRARY_VISIBILITY RTEMSTargetInfo : public OSTargetInfo<Target> { +protected: + void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, + MacroBuilder &Builder) const override { + // RTEMS defines; list based off of gcc output + + Builder.defineMacro("__rtems__"); + Builder.defineMacro("__ELF__"); + } + +public: + RTEMSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) + : OSTargetInfo<Target>(Triple, Opts) { + switch (Triple.getArch()) { + default: + case llvm::Triple::x86: + // this->MCountName = ".mcount"; + break; + case llvm::Triple::mips: + case llvm::Triple::mipsel: + case llvm::Triple::ppc: + case llvm::Triple::ppc64: + case llvm::Triple::ppc64le: + // this->MCountName = "_mcount"; + break; + case llvm::Triple::arm: + // this->MCountName = "__mcount"; + break; + } + } +}; + // Solaris target template <typename Target> class LLVM_LIBRARY_VISIBILITY SolarisTargetInfo : public OSTargetInfo<Target> { diff --git a/clang/lib/Basic/Targets/X86.h b/clang/lib/Basic/Targets/X86.h index 938c3d6eef5..671b8c9c170 100644 --- a/clang/lib/Basic/Targets/X86.h +++ b/clang/lib/Basic/Targets/X86.h @@ -773,40 +773,6 @@ public: bool allowsLargerPreferedTypeAlignment() const override { return false; } }; -// RTEMS Target -template <typename Target> -class LLVM_LIBRARY_VISIBILITY RTEMSTargetInfo : public OSTargetInfo<Target> { -protected: - void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple, - MacroBuilder &Builder) const override { - // RTEMS defines; list based off of gcc output - - Builder.defineMacro("__rtems__"); - Builder.defineMacro("__ELF__"); - } - -public: - RTEMSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) - : OSTargetInfo<Target>(Triple, Opts) { - switch (Triple.getArch()) { - default: - case llvm::Triple::x86: - // this->MCountName = ".mcount"; - break; - case llvm::Triple::mips: - case llvm::Triple::mipsel: - case llvm::Triple::ppc: - case llvm::Triple::ppc64: - case llvm::Triple::ppc64le: - // this->MCountName = "_mcount"; - break; - case llvm::Triple::arm: - // this->MCountName = "__mcount"; - break; - } - } -}; - // x86-32 RTEMS target class LLVM_LIBRARY_VISIBILITY RTEMSX86_32TargetInfo : public X86_32TargetInfo { public: |

