OpenCL patch: vector literals

Please find attached the patch providing support for vector literals in
OpenCL.

Two files with test cases are provided:
CodeGenOpenCL/vector_literals_valid.cl and
SemaOpenCL/vector_literals_invalid.cl. One file is removed:
CodeGenOpenCL/2011-04-15-vec-init-from-vec.cl, because it contained invalid
OpenCL code (cast between vectors of different types: int2 and uchar8).

Please review!

Many thanks,
Anton.

P.S. The quote below is on page 164 in opencl-1.1-rev44
(http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf).

arm-vector-literals.patch (12.1 KB)