比較関数
提供: Tommy6
比較関数はスカラもしくはベクトル引数をとり、戻り値はスカラもしくはベクトルの整数です。
関数 isequal, isnotequal, isgreater, isgreaterequal, isless, islessequal, islessgreater, isfinite, isinf, isnan, isnormal, isordered, isunordered, signbit は、スカラ型を引数にとるとき、比較が false であれば 0 を、true であれば 1 を返します。また、ベクトル型を引数にとるとき、false であれば 0 を、 true であれば -1 (すべてのビットを 1 にする)を返します。
関数 isequal, isgreater, isgreaterequal, isless, islessequal, islessgreater は、引数のいずれかひとつが NaN のとき、常に 0 を返します。関数 isnotequal は、引数がスカラ型でそのいずれかひとつが NaN のとき 1 を返し、引数がベクトル型でそのいずれかひとつが NaN のとき -1 を返します。
関数の一覧
1.1 : OpenCL 1.1で追加・変更
関数 | 概要 |
---|---|
isequal | 要素ごとに x == y の比較を行った結果を返します。 |
isnotequal | 要素ごとに x != y の比較を行った結果を返します。 |
isgreater | 要素ごとに x > y の比較を行った結果を返します。 |
isgreaterequal | 要素ごとに x >= y の比較を行った結果を返します。 |
isless | 要素ごとに x < y の比較を行った結果を返します。 |
islessequal | 要素ごとに x <= y の比較を行った結果を返します。 |
islessgreater | 要素ごとに (x < y) || (x > y) の比較を行った結果を返します。 |
isfinite | 与えられた値が有限値かどうかを検査します。 |
isinf | 与えられた値が無限値かどうかを検査します。 |
isnan | 与えられた値が NaN 値かどうかを検査します。 |
isnormal | 与えられた値が正規値(0, 非正規化数, 無限大, NaN のいずれでもない)かどうかを検査します。 |
isordered | |
isunordered | |
signbit | |
any | |
all | |
bitselect | |
select |
変更記録
―――― Version 1.1, The OpenCL Specification
より翻訳