HomePhabricator

[OpenCL] Declare builtin functions using TableGen

Authored by svenvh on Jun 3 2019, 2:39 AM.

Description

[OpenCL] Declare builtin functions using TableGen

This patch adds a -fdeclare-opencl-builtins command line option to
the clang frontend. This enables clang to verify OpenCL C builtin
function declarations using a fast StringMatcher lookup, instead of
including the opencl-c.h file with the -finclude-default-header
option. This avoids the large parse time penalty of the header file.

This commit only adds the basic infrastructure and some of the OpenCL
builtins. It does not cover all builtins defined by the various OpenCL
specifications. As such, it is not a replacement for
-finclude-default-header yet.

RFC: http://lists.llvm.org/pipermail/cfe-dev/2018-November/060041.html

Co-authored-by: Pierre Gondois
Co-authored-by: Joey Gouly
Co-authored-by: Sven van Haastregt

Differential Revision: https://reviews.llvm.org/D60763

llvm-svn: 362371

Details

Committed
svenvhJun 3 2019, 2:39 AM
Differential Revision
D60763: Prototype OpenCL BIFs using Tablegen
Parents
rG301f8fd63279: Include what you use in HexagonAsmParser.cpp
Branches
Unknown
Tags
Unknown