この記事は編集レビューを必要としています。ぜひご協力ください。
この翻訳は不完全です。英語から この記事を翻訳 してください。
This is an experimental technology, part of the Harmony (ECMAScript 7) proposal.
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future version of browsers as the spec changes.
静的なSIMD.%type%.greaterThanOrEqual()
メソッドは、各レーンで大なりイコール比較(a >= b
)に応じた値をもつ選択マスクを返します。
構文
SIMD.float32x4.greaterThanOrEqual(a, b) SIMD.float64x2.greaterThanOrEqual(a, b) SIMD.int8x16.greaterThanOrEqual(a, b) SIMD.int16x8.greaterThanOrEqual(a, b) SIMD.int32x4.greaterThanOrEqual(a, b)
引数
- a
- SIMD型のインスタンス
b
- SIMD型の別のインスタンス
戻り値
(サイズに応じた、int32x4
、int16x8
、int8x16
型のうちの)選択マスク。そのマスクのレーン値は、a >= b
の結果に応じたtrue
またはfalse
のどちらかです。
説明
SIMD.%type%.greaterThanOrEqual
メソッドはSIMD comparison operationsのうちの1つです。2つのインスタンスの大なりイコール比較の値を直接戻しません。そのかわりに、Boolean値をもつ選択マスクが返されます。
例
2つのベクトルから最大か等号のレーン値を選択する
この例では、2つのSIMD float32x4
データ型が、各レーンに対して最大か等しい値を探すために比較されます。選択マスクはその結果に基づいて生成されます。この選択マスクは、両方のベクトルのうち最大か等しい値を新しいfloat32x4
ベクトルに選ぶために使われます。
var a = SIMD.float32x4(1, 6, 3, 11); var b = SIMD.float32x4(1, 4, 7, 9); var mask = SIMD.float32x4.greaterThanOrEqual(a,b); // int32x4[-1, -1, 0, -1] var result = SIMD.float32x4.select(mask, a, b); // float32x4[1, 6, 7, 11]
仕様
SIMDはまだ公式規格文書やドラフトでサポートされていません。typed arraysに基づいた標準化作業や互換性実装のために、ecmascript_simd GitHub リポジトリを確かめて下さい。
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基本サポート | 未サポート | Nightly build | 未サポート | 未サポート | 未サポート |
機能 | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
基本サポート | 未サポート | 未サポート | Nightly build | 未サポート | 未サポート | 未サポート |