[clang] e6a62ac - [OpenCL] Add cl_khr_subgroup_non_uniform_vote to TableGen BIFs

Sven van Haastregt via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 3 02:24:16 PST 2021


Author: Sven van Haastregt
Date: 2021-02-03T10:23:52Z
New Revision: e6a62ac62571229d941dfe81affabdbc47e478eb

URL: https://github.com/llvm/llvm-project/commit/e6a62ac62571229d941dfe81affabdbc47e478eb
DIFF: https://github.com/llvm/llvm-project/commit/e6a62ac62571229d941dfe81affabdbc47e478eb.diff

LOG: [OpenCL] Add cl_khr_subgroup_non_uniform_vote to TableGen BIFs

Add the builtin functions brought by the
cl_khr_subgroup_non_uniform_vote extension to
`-fdeclare-opencl-builtins`.

Added: 
    

Modified: 
    clang/lib/Sema/OpenCLBuiltins.td

Removed: 
    


################################################################################
diff  --git a/clang/lib/Sema/OpenCLBuiltins.td b/clang/lib/Sema/OpenCLBuiltins.td
index 858939b566a3..cad0f57e8051 100644
--- a/clang/lib/Sema/OpenCLBuiltins.td
+++ b/clang/lib/Sema/OpenCLBuiltins.td
@@ -53,6 +53,7 @@ class FunctionExtension<string _Ext> : AbstractExtension<_Ext>;
 // FunctionExtension definitions.
 def FuncExtNone                          : FunctionExtension<"">;
 def FuncExtKhrSubgroups                  : FunctionExtension<"cl_khr_subgroups">;
+def FuncExtKhrSubgroupNonUniformVote     : FunctionExtension<"cl_khr_subgroup_non_uniform_vote">;
 def FuncExtKhrSubgroupBallot             : FunctionExtension<"cl_khr_subgroup_ballot">;
 def FuncExtKhrGlobalInt32BaseAtomics     : FunctionExtension<"cl_khr_global_int32_base_atomics">;
 def FuncExtKhrGlobalInt32ExtendedAtomics : FunctionExtension<"cl_khr_global_int32_extended_atomics">;
@@ -1494,7 +1495,12 @@ let Extension = FuncExtKhrSubgroups in {
 // TODO
 
 // Section 38.5.1 - cl_khr_subgroup_non_uniform_vote
-// TODO
+let Extension = FuncExtKhrSubgroupNonUniformVote in {
+  def : Builtin<"sub_group_elect", [Int]>;
+  def : Builtin<"sub_group_non_uniform_all", [Int, Int]>;
+  def : Builtin<"sub_group_non_uniform_any", [Int, Int]>;
+  def : Builtin<"sub_group_non_uniform_all_equal", [Int, AGenType1]>;
+}
 
 // Section 38.6.1 - cl_khr_subgroup_ballot
 let Extension = FuncExtKhrSubgroupBallot in {


        


More information about the cfe-commits mailing list