diff options
author | Petr Hosek <phosek@chromium.org> | 2016-10-24 22:55:57 +0000 |
---|---|---|
committer | Petr Hosek <phosek@chromium.org> | 2016-10-24 22:55:57 +0000 |
commit | 9834fcd7ce1f743df6c11a9c0104f4f71482a085 (patch) | |
tree | fd6bbcef65fc2b3836d1493c82d000c6a97aaca5 /clang/lib/Basic/Targets.cpp | |
parent | 3d0b39a3ddbf5162a077e9cbc373e1f72779f1b2 (diff) | |
download | bcm5719-llvm-9834fcd7ce1f743df6c11a9c0104f4f71482a085.tar.gz bcm5719-llvm-9834fcd7ce1f743df6c11a9c0104f4f71482a085.zip |
[Basic] Support 32-bit x86 and ARM targets for Fuchsia
Fuchsia has experimental support for 32-bit x86 and ARM targets, add
them to the list of supported targets.
Differential Revision: https://reviews.llvm.org/D25838
llvm-svn: 285038
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 92d07e189cb..9d855fea315 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -8296,12 +8296,12 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, return new CloudABITargetInfo<AArch64leTargetInfo>(Triple, Opts); case llvm::Triple::FreeBSD: return new FreeBSDTargetInfo<AArch64leTargetInfo>(Triple, Opts); + case llvm::Triple::Fuchsia: + return new FuchsiaTargetInfo<AArch64leTargetInfo>(Triple, Opts); case llvm::Triple::Linux: return new LinuxTargetInfo<AArch64leTargetInfo>(Triple, Opts); case llvm::Triple::NetBSD: return new NetBSDTargetInfo<AArch64leTargetInfo>(Triple, Opts); - case llvm::Triple::Fuchsia: - return new FuchsiaTargetInfo<AArch64leTargetInfo>(Triple, Opts); default: return new AArch64leTargetInfo(Triple, Opts); } @@ -8310,6 +8310,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, switch (os) { case llvm::Triple::FreeBSD: return new FreeBSDTargetInfo<AArch64beTargetInfo>(Triple, Opts); + case llvm::Triple::Fuchsia: + return new FuchsiaTargetInfo<AArch64beTargetInfo>(Triple, Opts); case llvm::Triple::Linux: return new LinuxTargetInfo<AArch64beTargetInfo>(Triple, Opts); case llvm::Triple::NetBSD: @@ -8330,6 +8332,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, return new LinuxTargetInfo<ARMleTargetInfo>(Triple, Opts); case llvm::Triple::FreeBSD: return new FreeBSDTargetInfo<ARMleTargetInfo>(Triple, Opts); + case llvm::Triple::Fuchsia: + return new FuchsiaTargetInfo<ARMleTargetInfo>(Triple, Opts); case llvm::Triple::NetBSD: return new NetBSDTargetInfo<ARMleTargetInfo>(Triple, Opts); case llvm::Triple::OpenBSD: @@ -8366,6 +8370,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, return new LinuxTargetInfo<ARMbeTargetInfo>(Triple, Opts); case llvm::Triple::FreeBSD: return new FreeBSDTargetInfo<ARMbeTargetInfo>(Triple, Opts); + case llvm::Triple::Fuchsia: + return new FuchsiaTargetInfo<ARMbeTargetInfo>(Triple, Opts); case llvm::Triple::NetBSD: return new NetBSDTargetInfo<ARMbeTargetInfo>(Triple, Opts); case llvm::Triple::OpenBSD: @@ -8596,6 +8602,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, return new BitrigI386TargetInfo(Triple, Opts); case llvm::Triple::FreeBSD: return new FreeBSDTargetInfo<X86_32TargetInfo>(Triple, Opts); + case llvm::Triple::Fuchsia: + return new FuchsiaTargetInfo<X86_32TargetInfo>(Triple, Opts); case llvm::Triple::KFreeBSD: return new KFreeBSDTargetInfo<X86_32TargetInfo>(Triple, Opts); case llvm::Triple::Minix: @@ -8651,6 +8659,8 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, return new BitrigX86_64TargetInfo(Triple, Opts); case llvm::Triple::FreeBSD: return new FreeBSDTargetInfo<X86_64TargetInfo>(Triple, Opts); + case llvm::Triple::Fuchsia: + return new FuchsiaTargetInfo<X86_64TargetInfo>(Triple, Opts); case llvm::Triple::KFreeBSD: return new KFreeBSDTargetInfo<X86_64TargetInfo>(Triple, Opts); case llvm::Triple::Solaris: @@ -8670,8 +8680,6 @@ static TargetInfo *AllocateTarget(const llvm::Triple &Triple, return new HaikuTargetInfo<X86_64TargetInfo>(Triple, Opts); case llvm::Triple::NaCl: return new NaClTargetInfo<X86_64TargetInfo>(Triple, Opts); - case llvm::Triple::Fuchsia: - return new FuchsiaTargetInfo<X86_64TargetInfo>(Triple, Opts); case llvm::Triple::PS4: return new PS4OSTargetInfo<X86_64TargetInfo>(Triple, Opts); default: |