From ecb7e5c8afe929ee38155db94de6b084ec32a645 Mon Sep 17 00:00:00 2001 From: Roman Divacky Date: Tue, 16 Feb 2010 09:31:36 +0000 Subject: Update clang to r96341. --- docs/LanguageExtensions.html | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'docs/LanguageExtensions.html') diff --git a/docs/LanguageExtensions.html b/docs/LanguageExtensions.html index e2a44eaed0b9..d32842b5d23d 100644 --- a/docs/LanguageExtensions.html +++ b/docs/LanguageExtensions.html @@ -205,12 +205,28 @@ is used in the file argument.

Vectors and Extended Vectors

-

Supports the GCC vector extensions, plus some stuff like V[1]. ext_vector -with V.xyzw syntax and other tidbits. See also __builtin_shufflevector.

+

Supports the GCC vector extensions, plus some stuff like V[1].

+ +

Also supports ext_vector, which additionally support for V.xyzw +syntax and other tidbits as seen in OpenCL. An example is:

+ +
+
+typedef float float4 __attribute__((ext_vector_type(4)));
+typedef float float2 __attribute__((ext_vector_type(2)));
+
+float4 foo(float2 a, float2 b) {
+  float4 c;
+  c.xz = a;
+  c.yw = b;
+  return c;
+}
+

Query for this feature with __has_feature(attribute_ext_vector_type).

+

See also __builtin_shufflevector.

+

Checks for Standard Language Features

-- cgit v1.2.3