[Mesa-dev] [PATCH] gallivm: fix conversion for pure integer formats
Jose Fonseca
jfonseca at vmware.com
Mon Dec 17 13:22:56 PST 2012
Nice find Roland.
Reviewed-by: Jose Fonseca <jfonseca at vmware.com>
Jose
----- Original Message -----
> From: Roland Scheidegger <sroland at vmware.com>
>
> Since the idea is to just expand or shrink the bit width but not
> otherwise do
> conversion we also need to adjust the sign bit according to src,
> otherwise
> the conversion code will incorrectly clamp the values. (Since this
> only works
> for casting to ordinary floats the norm and fixed bits should always
> be fine.)
>
> This fixes the remaining piglit attribs GL3 failures.
> ---
> .../auxiliary/gallivm/lp_bld_format_aos_array.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/src/gallium/auxiliary/gallivm/lp_bld_format_aos_array.c
> b/src/gallium/auxiliary/gallivm/lp_bld_format_aos_array.c
> index 1eb9446..9642b9e 100644
> --- a/src/gallium/auxiliary/gallivm/lp_bld_format_aos_array.c
> +++ b/src/gallium/auxiliary/gallivm/lp_bld_format_aos_array.c
> @@ -150,6 +150,7 @@ lp_build_fetch_rgba_aos_array(struct
> gallivm_state *gallivm,
> if (pure_integer) {
> assert(dst_type.floating);
> tmp_type.floating = 0;
> + tmp_type.sign = src_type.sign;
> }
>
> /* Convert to correct format */
> --
> 1.7.9.5
>
>
More information about the mesa-dev
mailing list