int
vec_step(gentypen a);
int vec_step(char3 a);
int vec_step(uchar3 a);
int vec_step(short3 a);
int vec_step(ushort3 a);
int vec_step(half3 a);
int vec_step(int3 a);
int vec_step(uint3 a);
int vec_step(long3 a);
int vec_step(ulong3 a);
int vec_step(float3 a);
int vec_step(double3 a);
int vec_step(type);
The vec_step built-in function takes a built-in scalar or
vector data type argument and returns an integer value representing the
number of elements in the scalar or vector.
For all scalar types, vec_step returns 1.
The vec_step built-in functions that take a 3-component
vector return 4.
vec_step may also take a pure type as an argument, e.g.
vec_step(float2)
We use the generic type name gentypen (or
gentypem) to indicate the built-in data types
char{2|4|8|16}, uchar{2|4|8|16}, short{2|4|8|16},
ushort{2|4|8|16}, int{2|4|8|16}, uint{2|4|8|16},
long{2|4|8|16}, ulong{2|4|8|16}, or float{2|4|8|16} as
the type for the arguments unless otherwise stated. We use the generic name
ugentypen to indicate the built-in unsigned integer
data types. If the double is supported, then
gentypen (or gentypem) also
indicate the built-in data types double{2|4|8|16}.
The generic type name gentypen (or
gentypem) may indicate the data type
half{2|4|8|16} if the cl_khr_fp16(3clc) extension is
supported.
Copyright © 2007-2011 The Khronos Group Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction,
including without limitation the rights to use, copy, modify, merge,
publish, distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to the
condition that this copyright notice and permission notice shall be included
in all copies or substantial portions of the Materials.
- 1.
- OpenCL Specification
page 282, section 6.12.12 Miscellaneous Vector
Functions