We don't natively support BGRA format, instead we handle these as RGBA and we lower the loads to swap components R and B. However, the driver emits VPM loads based on the size of the input variables so when we have a vec2 or float BGRA input, it would only emit VPM loads for components 0 and 1, which is not correct since we emit a load of component 2 to swap with component 0. v2: handle GL legacy vertex inputs gracefully. Fixes: dEQP-VK.draw.output_location.array.b8g8r8a8-unorm-highp-output-vec2 dEQP-VK.draw.output_location.array.b8g8r8a8-unorm-mediump-output-vec2 Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7271> |
||
|---|---|---|
| .. | ||
| meson.build | ||
| nir_to_vir.c | ||
| qpu_schedule.c | ||
| qpu_validate.c | ||
| v3d33_tex.c | ||
| v3d33_vpm_setup.c | ||
| v3d40_tex.c | ||
| v3d_compiler.h | ||
| v3d_nir_lower_image_load_store.c | ||
| v3d_nir_lower_io.c | ||
| v3d_nir_lower_line_smooth.c | ||
| v3d_nir_lower_logic_ops.c | ||
| v3d_nir_lower_robust_buffer_access.c | ||
| v3d_nir_lower_scratch.c | ||
| v3d_nir_lower_txf_ms.c | ||
| vir.c | ||
| vir_dump.c | ||
| vir_live_variables.c | ||
| vir_opt_copy_propagate.c | ||
| vir_opt_dead_code.c | ||
| vir_opt_redundant_flags.c | ||
| vir_opt_small_immediates.c | ||
| vir_register_allocate.c | ||
| vir_to_qpu.c | ||