summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2017-01-19 11:28:31 -0800
committerJason Ekstrand <[email protected]>2017-01-21 10:34:21 -0800
commitbb96b034616d9d099752efb005b5c05e8644059c (patch)
tree0936de16fa395d441300fb6b801c6de4b0d7afe7 /src/gallium
parent817f9e3b17c784cbe40639a4b370edc762bd2513 (diff)
nir/search: Use the correct bit size for integer comparisons
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. Reviewed-by: Iago Toral Quiroga <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Cc: "17.0 13.0" <[email protected]>
Diffstat (limited to 'src/gallium')
0 files changed, 0 insertions, 0 deletions