diff --git a/basis/xmode/modes/catalog b/basis/xmode/modes/catalog
index f4300b456b..390e5279a5 100644
--- a/basis/xmode/modes/catalog
+++ b/basis/xmode/modes/catalog
@@ -91,7 +91,10 @@
FILE_NAME_GLOB="*.{cfm,dbm,cfc}" />
+ FILE_NAME_GLOB="*.{cc,cpp,hh,hpp,cxx,inl,mm}" />
+
+
diff --git a/basis/xmode/modes/cuda.xml b/basis/xmode/modes/cuda.xml
new file mode 100644
index 0000000000..865ac89176
--- /dev/null
+++ b/basis/xmode/modes/cuda.xml
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ #
+
+
+
+
+
+
+
+
+
+
+
+ <<<
+ >>>
+
+
+
+
+
+
+
+
+
+ __device__
+ __host__
+ __global__
+ __local__
+ __constant__
+ __shared__
+ __inline__
+ __restrict__
+ blockIdx
+ threadIdx
+ gridDim
+ blockDim
+ char1
+ char2
+ char3
+ char4
+ uchar1
+ uchar2
+ uchar3
+ uchar4
+ short1
+ short2
+ short3
+ short4
+ ushort1
+ ushort2
+ ushort3
+ ushort4
+ int1
+ int2
+ int3
+ int4
+ uint1
+ uint2
+ uint3
+ uint4
+ long1
+ long2
+ long3
+ long4
+ ulong1
+ ulong2
+ ulong3
+ ulong4
+ longlong1
+ longlong2
+ longlong3
+ longlong4
+ ulonglong1
+ ulonglong2
+ ulonglong3
+ ulonglong4
+ float1
+ float2
+ float3
+ float4
+ double1
+ double2
+ double3
+ double4
+ dim1
+ dim2
+ dim3
+ dim4
+ texture
+
+
+
+
+
+
+ include\b
+ define\b
+ endif\b
+ elif\b
+ if\b
+
+
+
+
+
+ ifdef
+ ifndef
+ else
+ error
+ line
+ pragma
+ undef
+ warning
+
+
+
+
+
+
+ #
+
+
+
+
+
+