aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAnastasia Stulova <anastasia.stulova@arm.com>2020-10-09 15:13:39 +0100
committerAnastasia Stulova <anastasia.stulova@arm.com>2020-10-09 15:28:38 +0100
commit71d3b7ec7b62d37dd3c8eb1a921f0b3e1ffdaa7f (patch)
tree6ae6036ddb9f8200e8387c8169e3ededeab6e406 /clang/lib/Frontend/CompilerInvocation.cpp
parentddb2baf9fbff3d574c6c2bd69c2c9569100509a4 (diff)
downloadllvm-71d3b7ec7b62d37dd3c8eb1a921f0b3e1ffdaa7f.zip
llvm-71d3b7ec7b62d37dd3c8eb1a921f0b3e1ffdaa7f.tar.gz
llvm-71d3b7ec7b62d37dd3c8eb1a921f0b3e1ffdaa7f.tar.bz2
[OpenCL] Add new compilation mode for OpenCL 3.0.
Extended -cl-std/std flag with CL3.0 and added predefined version macros. Patch by Anton Zabaznov (azabaznov)! Tags: #clang Differential Revision: https://reviews.llvm.org/D88300
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index 1df92b0..77ecbbd 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -2368,6 +2368,8 @@ void CompilerInvocation::setLangDefaults(LangOptions &Opts, InputKind IK,
Opts.OpenCLVersion = 120;
else if (LangStd == LangStandard::lang_opencl20)
Opts.OpenCLVersion = 200;
+ else if (LangStd == LangStandard::lang_opencl30)
+ Opts.OpenCLVersion = 300;
else if (LangStd == LangStandard::lang_openclcpp)
Opts.OpenCLCPlusPlusVersion = 100;
@@ -2574,6 +2576,7 @@ static void ParseLangArgs(LangOptions &Opts, ArgList &Args, InputKind IK,
.Cases("cl1.1", "CL1.1", LangStandard::lang_opencl11)
.Cases("cl1.2", "CL1.2", LangStandard::lang_opencl12)
.Cases("cl2.0", "CL2.0", LangStandard::lang_opencl20)
+ .Cases("cl3.0", "CL3.0", LangStandard::lang_opencl30)
.Cases("clc++", "CLC++", LangStandard::lang_openclcpp)
.Default(LangStandard::lang_unspecified);