summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2015-02-27 15:10:19 +0000
committerTom Stellard <thomas.stellard@amd.com>2015-02-27 15:10:19 +0000
commitfded50f2f9800cdbab892852e73ffb7a6a3852b2 (patch)
tree31fe4c2dccdfb8e2b468e2a3332c420fafcbb082
parent71a33e2ad6413491c4ba248b01d49f9aaaa47e82 (diff)
downloadbcm5719-llvm-fded50f2f9800cdbab892852e73ffb7a6a3852b2.tar.gz
bcm5719-llvm-fded50f2f9800cdbab892852e73ffb7a6a3852b2.zip
AMDGCN: Define cl_khr_fp64 when compiling OpenCL programs
llvm-svn: 230761
-rw-r--r--clang/lib/Basic/Targets.cpp2
-rw-r--r--clang/test/Preprocessor/init.c3
2 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index a7c8413dd9f..15a0a906745 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -1645,6 +1645,8 @@ public:
void getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const override {
Builder.defineMacro("__R600__");
+ if (GPU >= GK_SOUTHERN_ISLANDS && Opts.OpenCL)
+ Builder.defineMacro("cl_khr_fp64");
}
BuiltinVaListKind getBuiltinVaListKind() const override {
diff --git a/clang/test/Preprocessor/init.c b/clang/test/Preprocessor/init.c
index e31b3bd25b1..5dc592126fc 100644
--- a/clang/test/Preprocessor/init.c
+++ b/clang/test/Preprocessor/init.c
@@ -6584,6 +6584,9 @@
// PPC-DARWIN:#define __powerpc__ 1
// PPC-DARWIN:#define __ppc__ 1
//
+// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -check-prefix AMDGCN %s
+// AMDGCN:#define cl_khr_fp64 1
+
// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -check-prefix S390X %s
//
// S390X:#define __BIGGEST_ALIGNMENT__ 8
OpenPOWER on IntegriCloud