aboutsummaryrefslogtreecommitdiffstats
path: root/src/glsl/loop_controls.cpp
diff options
context:
space:
mode:
authorRoland Scheidegger <[email protected]>2013-07-30 21:26:27 +0200
committerRoland Scheidegger <[email protected]>2013-08-02 03:49:57 +0200
commite7ed70a52e2d0efc11d1e9fe19938bc431f947c1 (patch)
tree3e1a5cb36d282047bebd91807540812a47656191 /src/glsl/loop_controls.cpp
parent7a72bef47e8731276ac4ca0b8c4d6d50366c1ec2 (diff)
gallivm: obey clarified shift behavior
llvm shifts are undefined for shift counts exceeding (or matching) bit width, so need to apply a mask for the tgsi shift instructions. v2: only use mask for the tgsi shift instructions, not for the build shift helpers. None of the internal callers need this behavior, and while llvm can optimize away the masking for constants there are legitimate cases where it might not be able to do so even if we know that shift count must be smaller than type width (currently all such callers do not use the build shift helpers). Reviewed-by: Zack Rusin <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/glsl/loop_controls.cpp')
0 files changed, 0 insertions, 0 deletions