FLT_TO_INT rounding issues on pre R800 cards
Submitted by Patrick Rudolph
Assigned to Default DRI bug account
Description
Running WINE tests with Gallium Nine enabled I found the following test to fail on pre R800 cards. The failing test is from wine d3d9/tests/visual.c test_mova(). It can be found here: https://source.winehq.org/ident?_i=test_mova&_remember=1
To issue doesn't exists on radeonsi, softpipe and R800+.
The problem seems to be TGSI_OPCODE_ARR that should round on FLT_TO_INT, but pre R800 cards truncate instead. This might result in wrong addressing, as TGSI_OPCODE_ARR is expected to round. If the card doesn't support rounding on FLT_TO_INT, r600 driver should insert a rounding instruction.
Tested with latest mesa git on RV770.