本書では、構文と戻り値に次の表記法を使用しています。
Fvecクラスの構文には次の表記を使用します。
[Fvec_Class] R = [Fvec_Class] A [operator][Ivec_Class] B;
例 1: F64vec2 R = F64vec2 A & F64vec2 B;
[Fvec_Class] R = [operator]([Fvec_Class] A,[Fvec_Class] B);
例 2: F64vec2 R = andnot(F64vec2 A, F64vec2 B);
[Fvec_Class] R [operator]= [Fvec_Class] A;
例 3: F64vec2 R &= F64vec2 A;
各アイテムの意味は次のとおりです。
[operator]は演算子(例えば&、|、^)
[Fvec_Class]は、Fvecクラスのいずれか(F64vec2、F32vec4、F32vec1)
R、A、Bは、それぞれ宣言済みのFvec変数
Fvecクラスはパックド要素をいくつか含んでいるため、通常その戻り値は下記の表「戻り値表記の対応表」に示した規則に従います。F32vec4は4個の単精度浮動小数点値(R0,R1,R2,R3)を返します。F64vec2は2個の倍精度浮動小数点値を返し、F32vec1は最下位単精度浮動小数点値(R0)を返します。
例 1: | 例 2: | 例 3: | F32vec4 | F64vec2 | F32vec1 |
---|---|---|---|---|---|
R0 := A0 & B0; |
R0 := A0 andnot B0; |
R0 &= A0; |
x |
x |
x |
R1 := A1 & B1; |
R1 := A1 andnot B1; |
R1 &= A1; |
x |
x |
N/A |
R2 := A2 & B2; |
R2 := A2 andnot B2; |
R2 &= A2; |
x |
N/A |
N/A |
R3 := A3 & B3 |
R3 := A3 andhot B3; |
R3 &= A3; |
x |
N/A |
N/A |