付録 C. AltiVec データ型およびリテラル

この付録では、サポートされる AltiVec データ型およびリテラルを示します。 これらは、AltiVec 仕様に厳密に準拠するために必要なもののスーパーセットです。


Vector データ型

以下の表に、サポートされる AltiVec データ型と、それぞれの型のサイズおよび可能な値をリストしてあります。

内容の解釈 値の範囲
vector unsigned char 16 unsigned char 0..255
vector signed char 16 signed char -128..127
vector bool char 16 unsigned char 0, 255
vector unsigned short 8 unsigned short 0..65535
vector unsigned short int
vector signed short 8 signed short -32768..32767
vector signed short int
vector bool short 8 unsigned short 0, 65535
vector bool short int
vector unsigned int 4 unsigned int 0..232-1
vector unsigned long§
vector unsigned long int§
vector signed int 4 signed int -231..231-1
vector signed long§
vector signed long int§
vector bool int 4 unsigned int 0, 232-1
vector bool long§
vector bool long int§
vector float 4 float IEEE-754 値
vector pixel 8 unsigned short 1/5/5/5 pixel

注:
§ AltiVec 仕様では、long ベクトル型は推奨されない型になりました。

コンパイラーは、すべての long ベクトル・データ型を、対応する int ベクトル型と互換性のあるものと見なします。


ベクトル・リテラル

以下の表は、サポートされるベクトル・リテラルと、コンパイラーがそれらの値を判別するために リテラルを解釈する方法を示しています。

構文 コンパイラーによる解釈
(vector unsigned char)(unsigned int) 整数定数式で値が指定された、16 個の符号なし定数のセット。
(vector unsigned char)(unsigned int, ..., unsigned int) 16 個の整数定数式で値が指定された、16 個の符号なし定数のセット。
(vector signed char)(int) 整数定数式で値が指定された、16 個の符号付き定数のセット。
(vector signed char)(int, ..., int) 16 個の整数定数式で値が指定された、16 個の符号付き定数のセット。
(vector bool char)(unsigned int)§ 整数定数式で値が指定された、16 個の符号なし定数のセット。
(vector bool char)(unsigned int, ..., unsigned int)§ 16 個の整数定数式で値が指定された、16 個の符号なし定数のセット。
(vector unsigned short)(unsigned int) 整数定数式で値が指定された、8 個の符号なし定数のセット。
(vector unsigned short)(unsigned int, ..., unsigned int) 8 個の整数定数式で値が指定された、8 個の符号なし定数のセット。
(vector signed short)(int) 整数定数式で値が指定された、8 個の符号付き定数のセット。
(vector signed short)(int, ..., int) 8 個の整数定数式で値が指定された、8 個の符号付き定数のセット。
(vector bool short)(unsigned int)§ 整数定数式で値が指定された、8 個の符号なし定数のセット。
(vector bool short)(unsigned int, ..., unsigned int)§ 8 個の整数定数式で値が指定された、8 個の符号なし定数のセット。
(vector unsigned int)(unsigned int) 整数定数式で値が指定された、4 個の符号なし定数のセット。
(vector unsigned int)(unsigned int, ..., unsigned int) 4 個の整数定数式で値が指定された、4 個の符号なし定数のセット。
(vector signed int)(int) 整数定数式で値が指定された、4 個の符号付き定数のセット。
(vector signed int)(int, ..., int) 4 個の整数定数式で値が指定された、4 個の符号付き定数のセット。
(vector bool int)(unsigned int)§ 整数定数式で値が指定された、4 個の符号なし定数のセット。
(vector bool int)(unsigned int, ..., unsigned int)§ 4 個の整数定数式で値が指定された、4 個の符号なし定数のセット。
(vector float)(float) 浮動小数点定数式で値が指定された、4 個の浮動小数点定数のセット。
(vector float)(float, float, float, float) 4 個の浮動小数点定数式で値が指定された、4 個の浮動小数点定数のセット。
(vector pixel)(unsigned int)§ 整数定数式で値が指定された、8 個の符号なし定数のセット。
(vector pixel)(unsigned int, ..., unsigned int)§ 8 個の整数定数式で値が指定された、8 個の符号なし定数のセット。
注:
§ AltiVec プログラミング・インターフェースへの拡張を指示します。
IBM Copyright 2003