diff options
| author | Roman Divacky <rdivacky@freebsd.org> | 2014-02-25 18:35:30 +0000 |
|---|---|---|
| committer | Roman Divacky <rdivacky@freebsd.org> | 2014-02-25 18:35:30 +0000 |
| commit | b1ae3d4937ed1c2ee5ebad37256007189d758a9a (patch) | |
| tree | 0c306f5052a3d76f8f2417cc7fe1ad2652b5de09 /clang/lib/Basic | |
| parent | 801272a98c719280da26cbaad7592e975c70f44f (diff) | |
| download | bcm5719-llvm-b1ae3d4937ed1c2ee5ebad37256007189d758a9a.tar.gz bcm5719-llvm-b1ae3d4937ed1c2ee5ebad37256007189d758a9a.zip | |
Give sparcv9 the ability to set the target cpu. Change it from accepting
-march which doesnt exist on sparc gcc to -mcpu. While here adjust a
few tests to not write an unused temporary file.
llvm-svn: 202177
Diffstat (limited to 'clang/lib/Basic')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 8d2b54180b8..4a87717693a 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -4629,6 +4629,22 @@ public: Builder.defineMacro("__sparcv9__"); } } + + virtual bool setCPU(const std::string &Name) { + bool CPUKnown = llvm::StringSwitch<bool>(Name) + .Case("v9", true) + .Case("ultrasparc", true) + .Case("ultrasparc3", true) + .Case("niagara", true) + .Case("niagara2", true) + .Case("niagara3", true) + .Case("niagara4", true) + .Default(false); + + // No need to store the CPU yet. There aren't any CPU-specific + // macros to define. + return CPUKnown; + } }; } // end anonymous namespace. |

