added support for rsqrtd/rcpd for generic-*.h
This commit is contained in:
@@ -1086,10 +1086,18 @@ static FORCEINLINE float __rsqrt_uniform_float(float v) {
|
|||||||
return 1.f / sqrtf(v);
|
return 1.f / sqrtf(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static FORCEINLINE double __rsqrt_uniform_double(double v) {
|
||||||
|
return 1.0 / sqrt(v);
|
||||||
|
}
|
||||||
|
|
||||||
static FORCEINLINE float __rcp_uniform_float(float v) {
|
static FORCEINLINE float __rcp_uniform_float(float v) {
|
||||||
return 1.f / v;
|
return 1.f / v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static FORCEINLINE double __rcp_uniform_double(double v) {
|
||||||
|
return 1.0 / v;
|
||||||
|
}
|
||||||
|
|
||||||
static FORCEINLINE float __sqrt_uniform_float(float v) {
|
static FORCEINLINE float __sqrt_uniform_float(float v) {
|
||||||
return sqrtf(v);
|
return sqrtf(v);
|
||||||
}
|
}
|
||||||
@@ -1099,7 +1107,9 @@ static FORCEINLINE double __sqrt_uniform_double(double v) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
UNARY_OP(__vec16_f, __rcp_varying_float, __rcp_uniform_float)
|
UNARY_OP(__vec16_f, __rcp_varying_float, __rcp_uniform_float)
|
||||||
|
UNARY_OP(__vec16_d, __rcp_varying_double, __rcp_uniform_double)
|
||||||
UNARY_OP(__vec16_f, __rsqrt_varying_float, __rsqrt_uniform_float)
|
UNARY_OP(__vec16_f, __rsqrt_varying_float, __rsqrt_uniform_float)
|
||||||
|
UNARY_OP(__vec16_d, __rsqrt_varying_double, __rsqrt_uniform_double)
|
||||||
UNARY_OP(__vec16_f, __sqrt_varying_float, __sqrt_uniform_float)
|
UNARY_OP(__vec16_f, __sqrt_varying_float, __sqrt_uniform_float)
|
||||||
UNARY_OP(__vec16_d, __sqrt_varying_double, __sqrt_uniform_double)
|
UNARY_OP(__vec16_d, __sqrt_varying_double, __sqrt_uniform_double)
|
||||||
|
|
||||||
|
|||||||
@@ -1138,10 +1138,18 @@ static FORCEINLINE float __rsqrt_uniform_float(float v) {
|
|||||||
return 1.f / sqrtf(v);
|
return 1.f / sqrtf(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static FORCEINLINE double __rsqrt_uniform_double(double v) {
|
||||||
|
return 1.0 / sqrt(v);
|
||||||
|
}
|
||||||
|
|
||||||
static FORCEINLINE float __rcp_uniform_float(float v) {
|
static FORCEINLINE float __rcp_uniform_float(float v) {
|
||||||
return 1.f / v;
|
return 1.f / v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static FORCEINLINE double __rcp_uniform_double(double v) {
|
||||||
|
return 1.0 / v;
|
||||||
|
}
|
||||||
|
|
||||||
static FORCEINLINE float __sqrt_uniform_float(float v) {
|
static FORCEINLINE float __sqrt_uniform_float(float v) {
|
||||||
return sqrtf(v);
|
return sqrtf(v);
|
||||||
}
|
}
|
||||||
@@ -1151,7 +1159,9 @@ static FORCEINLINE double __sqrt_uniform_double(double v) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
UNARY_OP(__vec32_f, __rcp_varying_float, __rcp_uniform_float)
|
UNARY_OP(__vec32_f, __rcp_varying_float, __rcp_uniform_float)
|
||||||
|
UNARY_OP(__vec32_d, __rcp_varying_double, __rcp_uniform_double)
|
||||||
UNARY_OP(__vec32_f, __rsqrt_varying_float, __rsqrt_uniform_float)
|
UNARY_OP(__vec32_f, __rsqrt_varying_float, __rsqrt_uniform_float)
|
||||||
|
UNARY_OP(__vec32_d, __rsqrt_varying_double, __rsqrt_uniform_double)
|
||||||
UNARY_OP(__vec32_f, __sqrt_varying_float, __sqrt_uniform_float)
|
UNARY_OP(__vec32_f, __sqrt_varying_float, __sqrt_uniform_float)
|
||||||
UNARY_OP(__vec32_d, __sqrt_varying_double, __sqrt_uniform_double)
|
UNARY_OP(__vec32_d, __sqrt_varying_double, __sqrt_uniform_double)
|
||||||
|
|
||||||
|
|||||||
@@ -1271,10 +1271,18 @@ static FORCEINLINE float __rsqrt_uniform_float(float v) {
|
|||||||
return 1.f / sqrtf(v);
|
return 1.f / sqrtf(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static FORCEINLINE double __rsqrt_uniform_double(double v) {
|
||||||
|
return 1.0 / sqrt(v);
|
||||||
|
}
|
||||||
|
|
||||||
static FORCEINLINE float __rcp_uniform_float(float v) {
|
static FORCEINLINE float __rcp_uniform_float(float v) {
|
||||||
return 1.f / v;
|
return 1.f / v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static FORCEINLINE double __rcp_uniform_double(double v) {
|
||||||
|
return 1.0 / v;
|
||||||
|
}
|
||||||
|
|
||||||
static FORCEINLINE float __sqrt_uniform_float(float v) {
|
static FORCEINLINE float __sqrt_uniform_float(float v) {
|
||||||
return sqrtf(v);
|
return sqrtf(v);
|
||||||
}
|
}
|
||||||
@@ -1284,7 +1292,9 @@ static FORCEINLINE double __sqrt_uniform_double(double v) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
UNARY_OP(__vec64_f, __rcp_varying_float, __rcp_uniform_float)
|
UNARY_OP(__vec64_f, __rcp_varying_float, __rcp_uniform_float)
|
||||||
|
UNARY_OP(__vec64_d, __rcp_varying_double, __rcp_uniform_double)
|
||||||
UNARY_OP(__vec64_f, __rsqrt_varying_float, __rsqrt_uniform_float)
|
UNARY_OP(__vec64_f, __rsqrt_varying_float, __rsqrt_uniform_float)
|
||||||
|
UNARY_OP(__vec64_d, __rsqrt_varying_double, __rsqrt_uniform_double)
|
||||||
UNARY_OP(__vec64_f, __sqrt_varying_float, __sqrt_uniform_float)
|
UNARY_OP(__vec64_f, __sqrt_varying_float, __sqrt_uniform_float)
|
||||||
UNARY_OP(__vec64_d, __sqrt_varying_double, __sqrt_uniform_double)
|
UNARY_OP(__vec64_d, __sqrt_varying_double, __sqrt_uniform_double)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user