Author: Sven van Haastregt Date: 2021-08-10T13:01:47+01:00 New Revision: 5de6b1acb5900be80515cf9fa253f8698fc57dca
URL: https://github.com/llvm/llvm-project/commit/5de6b1acb5900be80515cf9fa253f8698fc57dca DIFF: https://github.com/llvm/llvm-project/commit/5de6b1acb5900be80515cf9fa253f8698fc57dca.diff LOG: [OpenCL] Make pipes and workgroup optional for -fdeclare-opencl-builtins Align guards of these builtins with opencl-c.h. Added: Modified: clang/lib/Sema/OpenCLBuiltins.td Removed: ################################################################################ diff --git a/clang/lib/Sema/OpenCLBuiltins.td b/clang/lib/Sema/OpenCLBuiltins.td index f2ab4169efec8..8de7632deb503 100644 --- a/clang/lib/Sema/OpenCLBuiltins.td +++ b/clang/lib/Sema/OpenCLBuiltins.td @@ -83,6 +83,9 @@ def FuncExtKhrMipmapImage : FunctionExtension<"cl_khr_mipmap_imag def FuncExtKhrMipmapImageWrites : FunctionExtension<"cl_khr_mipmap_image_writes">; def FuncExtKhrGlMsaaSharing : FunctionExtension<"cl_khr_gl_msaa_sharing">; +def FuncExtOpenCLCPipes : FunctionExtension<"__opencl_c_pipes">; +def FuncExtOpenCLCWGCollectiveFunctions : FunctionExtension<"__opencl_c_work_group_collective_functions">; + // Not a real extension, but a workaround to add C++ for OpenCL specific builtins. def FuncExtOpenCLCxx : FunctionExtension<"__cplusplus">; @@ -1292,7 +1295,7 @@ foreach aQual = ["WO", "RW"] in { //-------------------------------------------------------------------- // OpenCL v2.0 s6.13.15 - Work-group Functions // --- Table 26 --- -let MinVersion = CL20 in { +let Extension = FuncExtOpenCLCWGCollectiveFunctions in { foreach name = ["work_group_all", "work_group_any"] in { def : Builtin<name, [Int, Int], Attr.Convergent>; } @@ -1317,7 +1320,9 @@ let MinVersion = CL20 in { // --- Table 28 --- // Builtins taking pipe arguments are defined in Builtins.def -def : Builtin<"is_valid_reserve_id", [Bool, ReserveId]>; +let Extension = FuncExtOpenCLCPipes in { + def : Builtin<"is_valid_reserve_id", [Bool, ReserveId]>; +} // --- Table 29 --- // Defined in Builtins.def _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits