i965/fs: Fix 32-bit integer multiplication.
authorEric Anholt <eric@anholt.net>
Tue, 16 Aug 2011 05:36:18 +0000 (22:36 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 17 Aug 2011 18:51:01 +0000 (11:51 -0700)
commit3f78f719732b87e6707f94c187ad6e263c6c2ef0
treee9e4e5eeef91afe0ae779845fd3bc296175d9277
parent34980cd153050111edc545545ddff11f5b68347e
i965/fs: Fix 32-bit integer multiplication.

The MUL opcode does a 16bit * 32bit multiply, and we need to do the
MACH to get the top 16bit * 32bit added in.

Fixes fs-op-mult-int-*, fs-op-mult-ivec*

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_fs_emit.cpp
src/mesa/drivers/dri/i965/brw_fs_visitor.cpp