[OpenCL] Supports optional pipe types in C++ for OpenCL 2021
authorJustas Janickas <Justas.Janickas@arm.com>
Wed, 1 Sep 2021 15:37:37 +0000 (16:37 +0100)
committerJustas Janickas <Justas.Janickas@arm.com>
Fri, 17 Sep 2021 08:56:20 +0000 (09:56 +0100)
commit37cdc7ebd9a373100cbbe39f5b9be7a4e4f7813d
treed5517c7e70e99b3c79f5db8fdf98bd93115924b9
parent690f76958a737ebd1b17f9bc50f781b3aaa4f011
[OpenCL] Supports optional pipe types in C++ for OpenCL 2021

Adds support for a feature macro `__opencl_c_pipes` in C++ for
OpenCL 2021 enabling a respective optional core feature from
OpenCL 3.0.

This change aims to achieve compatibility between C++ for OpenCL
2021 and OpenCL 3.0.

Differential Revision: https://reviews.llvm.org/D109306
clang/lib/Basic/TargetInfo.cpp
clang/test/CodeGenOpenCL/address-spaces-mangling.cl
clang/test/CodeGenOpenCL/address-spaces.cl
clang/test/CodeGenOpenCL/pipe_types.cl
clang/test/CodeGenOpenCL/pipe_types_mangling.cl
clang/test/Misc/opencl-c-3.0.incorrect_options.cl
clang/test/SemaOpenCL/invalid-pipes-cl1.2.cl
clang/test/SemaOpenCL/invalid-pipes-cl2.0.cl