summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang
diff options
context:
space:
mode:
authorSven van Haastregt <sven.vanhaastregt@arm.com>2017-05-23 10:36:43 +0000
committerSven van Haastregt <sven.vanhaastregt@arm.com>2017-05-23 10:36:43 +0000
commitcc4f1e49afd3fe9f730e955e7368242082bb198b (patch)
tree13d2faacc615c13b54bdb7762f4b6557ff01b39b /clang/tools/libclang
parent85c7827a0a4d1f248d538b919fd923aa34392c12 (diff)
downloadbcm5719-llvm-cc4f1e49afd3fe9f730e955e7368242082bb198b.tar.gz
bcm5719-llvm-cc4f1e49afd3fe9f730e955e7368242082bb198b.zip
[libclang] [OpenCL] Expose more OpenCL CIndex types
Expose pipe, sampler_t, clk_event_t, queue_t, reserve_id_t, and all image types. Update the opencl-types.cl test RUN line such that we can test the OpenCL 2.0 types. Patch by Simon Perretta. Differential Revision: https://reviews.llvm.org/D33197 llvm-svn: 303626
Diffstat (limited to 'clang/tools/libclang')
-rw-r--r--clang/tools/libclang/CXType.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/tools/libclang/CXType.cpp b/clang/tools/libclang/CXType.cpp
index 16e993e2ac0..f20581453e0 100644
--- a/clang/tools/libclang/CXType.cpp
+++ b/clang/tools/libclang/CXType.cpp
@@ -59,6 +59,13 @@ static CXTypeKind GetBuiltinTypeKind(const BuiltinType *BT) {
BTCASE(ObjCId);
BTCASE(ObjCClass);
BTCASE(ObjCSel);
+#define IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix) BTCASE(Id);
+#include "clang/Basic/OpenCLImageTypes.def"
+#undef IMAGE_TYPE
+ BTCASE(OCLSampler);
+ BTCASE(OCLEvent);
+ BTCASE(OCLQueue);
+ BTCASE(OCLReserveID);
default:
return CXType_Unexposed;
}
@@ -94,6 +101,7 @@ static CXTypeKind GetTypeKind(QualType T) {
TKCASE(MemberPointer);
TKCASE(Auto);
TKCASE(Elaborated);
+ TKCASE(Pipe);
default:
return CXType_Unexposed;
}
@@ -535,6 +543,14 @@ CXString clang_getTypeKindSpelling(enum CXTypeKind K) {
TKIND(MemberPointer);
TKIND(Auto);
TKIND(Elaborated);
+ TKIND(Pipe);
+#define IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix) TKIND(Id);
+#include "clang/Basic/OpenCLImageTypes.def"
+#undef IMAGE_TYPE
+ TKIND(OCLSampler);
+ TKIND(OCLEvent);
+ TKIND(OCLQueue);
+ TKIND(OCLReserveID);
}
#undef TKIND
return cxstring::createRef(s);
OpenPOWER on IntegriCloud