Jason Ekstrand <ja...@jlekstrand.net> writes:

> The previous code always compared integers as 64-bit.  Due to variations
> in sign-extension in the code generated by nir_opt_algebraic.py, this
> meant that nir_search doesn't always do what you want.  Instead, 32-bit
> values should be matched as 32-bit and 64-bit values should be matched
> as 64-bit.  While we're here we unify the unsigned and signed paths.
> Now that we're using the right bit size, they should be the same since
> the only difference we had before was sign extension.
>
> This gets the UE4 bitfield_extract optimization working again.  It had
> stopped working due to the constant 0xff00ff00 getting sign-extended
> when it shouldn't have.
>
> Cc: "17.0 13.0" <mesa-sta...@lists.freedesktop.org>
> Cc: Eric Anholt <e...@anholt.net>

I like this version better.

Reviewed-by: Eric Anholt <e...@anholt.net>

Attachment: signature.asc
Description: PGP signature

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to