Skip to content

v3d/compiler: fix V3D double-rounding of .8 fixed-point XY coordinates

Iago Toral requested to merge itoral/mesa:v3d_xy_coord_rounding into master

Pre-V3D 4.3 hardware has a quirk where it expects XY coordinates in .8 fixed-point format, but then it will internally round it to .6 fixed-point, introducing a double rounding. The double rounding can cause very slight differences in triangle raterization coverage that can actually be noticed by some CTS tests.

The correct fix for this as recommended by Broadcom is to convert to .8 fixed-point with ffloor().

Fixes: dEQP-VK.renderpass.suballocation.subpass_dependencies.late_fragment_tests.*

Merge request reports