Operations and Functions for Vector Data Types

The C/C++ compiler supports the use of native vector data types in C/C++ source files. Vector data types are described in Section 7.4.2. These vector data types are useful for parallel programming applications. You enable support for vector data types by using the --vectypes compiler option.

The implementation of vector data types and operations follows the OpenCL C language specification closely. For a detailed description of OpenCL vector data types and operations, please see The OpenCL Specification version 1.2, which is available from the Khronos OpenCL Working Group.

Various types of operations can be performed on vectors. These include vector literals and concatenation (Section 7.15.1), unary and binary operators (Section 7.15.2), swizzle operators for component access (Section 7.15.3), and conversion operators (Section 7.15.4). In addition, several built-in functions (Section 7.15.7) are provided for working with vector types.

In addition to vector operations, printf() support is provided for outputting vector data. See Section 6.12.13 of The OpenCL Specification version 1.2 for details about formatting vector data types using printf(). For exceptions to the OpenCL specification regarding vector data types, see Section 7.15.6.