These were correct since they were used only in conversions to signed integers,
however this makes the implementation a bit more is more consistent and reduces
chances of propagating use of these macros to unsigned cases in the future, which
would not be correct.
Reviewed-by: Matt Turner <mattst88@gmail.com>
* a floating-point value is rounded to the
* nearest integer..."
*/
- dst[didx].i = IROUND(src[sidx].f);
+ dst[didx].i = (int64_t) roundf(src[sidx].f);
break;
case GLSL_TYPE_BOOL:
dst[didx].i = src[sidx].i ? 1 : 0;
case GLSL_TYPE_DOUBLE: {
double tmp;
memcpy(&tmp, &src[sidx].f, sizeof(tmp));
- dst[didx].i = IROUNDD(tmp);
+ dst[didx].i = (int64_t) round(tmp);
break;
}
case GLSL_TYPE_UINT64: {