openCLのsincos関数のdouble8にfloat8varをキャストする際に問題が発生しました。だから私は次のことを試しました:
float8 a,b,c;
a = convert_float8(sin(convert_double8(a))); // worked
a = convert_float8(sincos(convert_double8(b),convert_double8(&c))); // failed
プログラムのビルドに失敗したというopenCLエラーがスローされます。最初、sincosはdouble8タイプを取り込めないと思いましたが、double8 varを渡すだけでも機能しますが、float8をdouble8にキャストしようとすると、上記のコードのように失敗します。
float8 a;
double8 b,c;
a = convert_float8(sincos((b),(&c))); //worked
誰かがそれを正しくキャストする理由/方法を知っていますか?
ありがとう。