shader: Use integer type for ARM (MALI GPU)

Merged Lepton Wu requested to merge lepton/virglrenderer:type into master

Currently, even the input/output buffers are integer formats, we still use float type for them. This is actually undefined behavior and MALI GPU will do type conversion and cause unexpected results. To fix this, we check the input buffer format for vertex shader and also color buffer format for fragment shader, if they are integer types, just use integer types in generated shaders. Since the old way works fine on other GPU, only enable this fix for ARM MALI.

Signed-off-by: Lepton Wu

Edited by Gert Wollny

Merge request reports