1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
#include "test_static.isph"
task void f_f(uniform float RET[], uniform float aFOO[]) {
#pragma ignore warning(perf)
float a = aFOO[programIndex&0x3];
uniform float expected[4] = { 0x1.5bf0a8p+1, 0x1.d8e64cp+2, 0x1.415e5cp+4, 0x1.b4c904p+5 };
float v = exp(a);
RET[programIndex] = 0;
#pragma ignore warning(perf)
if (abs((v - expected[programIndex & 0x3]) / expected[programIndex & 0x3]) > 1e-5)
RET[programIndex] = 1;
}
task void result(uniform float RET[]) {
RET[programIndex] = 0;
}
|