extend.texi (PowerPC Altivec/VSX Built-in Functions): Describe when a typedef name...
authorBill Schmidt <wschmidt@linux.ibm.com>
Tue, 18 Dec 2018 13:46:10 +0000 (13:46 +0000)
committerWilliam Schmidt <wschmidt@gcc.gnu.org>
Tue, 18 Dec 2018 13:46:10 +0000 (13:46 +0000)
2018-12-18  Bill Schmidt  <wschmidt@linux.ibm.com>

* doc/extend.texi (PowerPC Altivec/VSX Built-in Functions):
Describe when a typedef name can be used as the type specifier for
a vector type, and when it cannot.

From-SVN: r267232

gcc/ChangeLog
gcc/doc/extend.texi

index 5c8fc7e830d948a75ceef00b52bf61e1378cf901..7d97a05e6cd465408a48600508e852c04783ea69 100644 (file)
@@ -1,3 +1,9 @@
+2018-12-18  Bill Schmidt  <wschmidt@linux.ibm.com>
+
+       * doc/extend.texi (PowerPC Altivec/VSX Built-in Functions):
+       Describe when a typedef name can be used as the type specifier for
+       a vector type, and when it cannot.
+
 2018-12-18  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
 
        * config/msp430/msp430.h: Define TARGET_VTABLE_ENTRY_ALIGN.
index 5d8fc94aaa7c4189606f969b197b0f7cb8680ffd..1849120b7bd16261d3558511523eb96fcfb4e4ae 100644 (file)
@@ -16616,7 +16616,30 @@ disabled.  To use them, you must include @code{<altivec.h>} instead.
 
 @item
 GCC allows using a @code{typedef} name as the type specifier for a
-vector type.
+vector type, but only under the following circumstances:
+
+@itemize @bullet
+
+@item
+When using @code{__vector} instead of @code{vector}; for example,
+
+@smallexample
+typedef signed short int16;
+__vector int16 data;
+@end smallexample
+
+@item
+When using @code{vector} in keyword-and-predefine mode; for example,
+
+@smallexample
+typedef signed short int16;
+vector int16 data;
+@end smallexample
+
+Note that keyword-and-predefine mode is enabled by disabling GNU
+extensions (e.g., by using @code{-std=c11}) and including
+@code{<altivec.h>}.
+@end itemize
 
 @item
 For C, overloaded functions are implemented with macros so the following