Mesa (staging/21.3): lavapipe: use util_pack_color_union() for generating clear colors

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sun Feb 20 19:14:39 UTC 2022


Module: Mesa
Branch: staging/21.3
Commit: 1b39d9cb4d9048d6385a92dfaf953889d17c6ff4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1b39d9cb4d9048d6385a92dfaf953889d17c6ff4

Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Mon Feb  7 12:37:32 2022 -0500

lavapipe: use util_pack_color_union() for generating clear colors

this enables clamping for packed formats (e.g., RGB10_A2UI) where color
values may exceed the width of the component

cc: mesa-stable

fixes (zink):
KHR-GL45.direct_state_access.renderbuffers_storage*

Reviewed-by: Dave Airlie <airlied at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14911>
(cherry picked from commit 08c2b9d7cbc2b60233c3d3ed411ceb9649fe5c9f)

---

 .pick_status.json                              |  2 +-
 src/gallium/drivers/zink/ci/zink-lvp-fails.txt | 71 --------------------------
 src/gallium/frontends/lavapipe/lvp_execute.c   | 36 ++-----------
 3 files changed, 4 insertions(+), 105 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index 3d8c526f27c..91120cace61 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -3640,7 +3640,7 @@
         "description": "lavapipe: use util_pack_color_union() for generating clear colors",
         "nominated": true,
         "nomination_type": 0,
-        "resolution": 0,
+        "resolution": 1,
         "main_sha": null,
         "because_sha": null
     },
diff --git a/src/gallium/drivers/zink/ci/zink-lvp-fails.txt b/src/gallium/drivers/zink/ci/zink-lvp-fails.txt
index 4ccd8cb8a50..5f87e0c17fa 100644
--- a/src/gallium/drivers/zink/ci/zink-lvp-fails.txt
+++ b/src/gallium/drivers/zink/ci/zink-lvp-fails.txt
@@ -16,17 +16,11 @@ dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_reverse_dst_x,Fail
 dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_reverse_src_dst_x,Fail
 dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_reverse_src_dst_y,Fail
 dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_min_reverse_src_x,Fail
-dEQP-GLES3.functional.multisample.fbo_4_samples.proportionality_sample_coverage,Fail
-dEQP-GLES3.functional.multisample.fbo_4_samples.sample_coverage_invert,Fail
-dEQP-GLES3.functional.multisample.fbo_max_samples.proportionality_sample_coverage,Fail
-dEQP-GLES3.functional.multisample.fbo_max_samples.sample_coverage_invert,Fail
-KHR-GL32.transform_feedback.capture_geometry_separate_test,Fail
 KHR-GL32.transform_feedback.capture_vertex_interleaved_test,Fail
 KHR-GL32.transform_feedback.capture_vertex_separate_test,Fail
 KHR-GL32.transform_feedback.discard_vertex_test,Fail
 KHR-GL32.transform_feedback.draw_xfb_instanced_test,Crash
 KHR-GL32.transform_feedback.draw_xfb_stream_instanced_test,Crash
-KHR-GL32.transform_feedback.query_geometry_separate_test,Fail
 KHR-GL32.transform_feedback.query_vertex_interleaved_test,Fail
 KHR-GL32.transform_feedback.query_vertex_separate_test,Fail
 dEQP-GLES2.functional.clipping.line.wide_line_clip_viewport_center,Fail
@@ -162,7 +156,6 @@ spec at arb_texture_float@fbo-blending-formats at GL_INTENSITY32F_ARB,Fail
 spec at arb_texture_float@fbo-blending-formats at GL_LUMINANCE16F_ARB,Fail
 spec at arb_texture_float@fbo-blending-formats at GL_LUMINANCE32F_ARB,Fail
 spec at arb_texture_float@fbo-blending-formats at GL_RGB32F,Fail
-spec at arb_texture_rg@multisample-fast-clear gl_arb_texture_rg-int,Fail
 spec at arb_texture_view@rendering-formats,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16 as GL_R16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16 as GL_R16I,Fail
@@ -177,16 +170,12 @@ spec at arb_texture_view@rendering-formats at clear GL_R16F as GL_RG8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16F as GL_RG8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_R16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_R16F,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_R16I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_R16_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_RG8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_RG8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16I as GL_RG8_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_R16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_R16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_R16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_R16_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_RG8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_RG8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16UI as GL_RG8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R16_SNORM as GL_R16,Fail
@@ -225,9 +214,6 @@ spec at arb_texture_view@rendering-formats at clear GL_R8 as GL_R8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R8 as GL_R8UI,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R8 as GL_R8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R8I as GL_R8,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R8I as GL_R8I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R8I as GL_R8_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_R8UI as GL_R8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R8UI as GL_R8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R8UI as GL_R8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_R8_SNORM as GL_R8,Fail
@@ -254,20 +240,15 @@ spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_R32F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_R32I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RG16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RG16F,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RG16I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RG16_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RGB10_A2,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RGBA8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RGBA8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16I as GL_RGBA8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_R32F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_R32I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RGB10_A2,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RGBA8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RGBA8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16UI as GL_RGBA8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG16_SNORM as GL_R32F,Fail
@@ -307,13 +288,9 @@ spec at arb_texture_view@rendering-formats at clear GL_RG8I as GL_R16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8I as GL_R16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8I as GL_R16_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8I as GL_RG8,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG8I as GL_RG8I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG8I as GL_RG8_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_R16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_R16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_R16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_R16_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_RG8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_RG8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8UI as GL_RG8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RG8_SNORM as GL_R16,Fail
@@ -337,12 +314,9 @@ spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2 as GL_RGBA8UI,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2 as GL_RGBA8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_R32F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_R32I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGB10_A2,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGBA8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGBA8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGBA8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16 as GL_RGB16F,Fail
@@ -353,9 +327,6 @@ spec at arb_texture_view@rendering-formats at clear GL_RGB16F as GL_RGB16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16F as GL_RGB16_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16I as GL_RGB16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16I as GL_RGB16F,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB16I as GL_RGB16I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB16I as GL_RGB16_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB16UI as GL_RGB16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16UI as GL_RGB16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16UI as GL_RGB16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB16UI as GL_RGB16_SNORM,Fail
@@ -367,9 +338,6 @@ spec at arb_texture_view@rendering-formats at clear GL_RGB8 as GL_RGB8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB8 as GL_RGB8UI,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB8 as GL_RGB8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB8I as GL_RGB8,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB8I as GL_RGB8I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB8I as GL_RGB8_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGB8UI as GL_RGB8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB8UI as GL_RGB8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB8UI as GL_RGB8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGB8_SNORM as GL_RGB8,Fail
@@ -389,11 +357,8 @@ spec at arb_texture_view@rendering-formats at clear GL_RGBA16I as GL_RG32F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16I as GL_RG32I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16F,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RG32F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RG32I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16_SNORM,Fail
@@ -423,16 +388,11 @@ spec at arb_texture_view@rendering-formats at clear GL_RGBA8I as GL_RG16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8I as GL_RG16_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGB10_A2,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGBA8,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGBA8I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGBA8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_R32F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_R32I,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16F,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16_SNORM,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGB10_A2,Fail
-spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGBA8,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGBA8I,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGBA8_SNORM,Fail
 spec at arb_texture_view@rendering-formats at clear GL_RGBA8_SNORM as GL_R32F,Fail
@@ -511,7 +471,6 @@ spec at ext_image_dma_buf_import@ext_image_dma_buf_import-sample_yvu420,Fail
 spec at ext_image_dma_buf_import@ext_image_dma_buf_import-transcode-nv12-as-r8-gr88,Fail
 spec at ext_image_dma_buf_import@ext_image_dma_buf_import-unsupported_format,Fail
 spec at ext_packed_float@query-rgba-signed-components,Fail
-spec at ext_texture_integer@multisample-fast-clear gl_ext_texture_integer,Fail
 spec at ext_texture_snorm@fbo-blending-formats,Fail
 spec at ext_texture_snorm@fbo-blending-formats at GL_INTENSITY16_SNORM,Fail
 spec at ext_texture_snorm@fbo-blending-formats at GL_INTENSITY8_SNORM,Fail
@@ -591,16 +550,12 @@ spec at oes_texture_view@rendering-formats at clear GL_R16F as GL_RG8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16F as GL_RG8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_R16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_R16F,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_R16I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_R16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_RG8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_RG8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16I as GL_RG8_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_R16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_R16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_R16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_R16_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_RG8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_RG8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16UI as GL_RG8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R16_SNORM as GL_R16,Fail
@@ -639,9 +594,6 @@ spec at oes_texture_view@rendering-formats at clear GL_R8 as GL_R8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R8 as GL_R8UI,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R8 as GL_R8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R8I as GL_R8,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R8I as GL_R8I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R8I as GL_R8_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_R8UI as GL_R8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R8UI as GL_R8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R8UI as GL_R8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_R8_SNORM as GL_R8,Fail
@@ -668,20 +620,15 @@ spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_R32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_R32I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RG16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RG16F,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RG16I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RG16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RGB10_A2,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RGBA8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RGBA8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16I as GL_RGBA8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_R32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_R32I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RG16_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RGB10_A2,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RGBA8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RGBA8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16UI as GL_RGBA8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG16_SNORM as GL_R32F,Fail
@@ -721,13 +668,9 @@ spec at oes_texture_view@rendering-formats at clear GL_RG8I as GL_R16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8I as GL_R16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8I as GL_R16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8I as GL_RG8,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG8I as GL_RG8I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG8I as GL_RG8_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_R16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_R16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_R16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_R16_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_RG8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_RG8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8UI as GL_RG8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RG8_SNORM as GL_R16,Fail
@@ -751,24 +694,18 @@ spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2 as GL_RGBA8UI,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2 as GL_RGBA8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_R32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_R32I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RG16_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGB10_A2,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGBA8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGBA8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB10_A2UI as GL_RGBA8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB16 as GL_RGB16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB16F as GL_RGB16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB16F as GL_RGB16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB16I as GL_RGB16,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGB16I as GL_RGB16_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGB16UI as GL_RGB16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB16UI as GL_RGB16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB16_SNORM as GL_RGB16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB8I as GL_RGB8,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGB8UI as GL_RGB8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGB8_SNORM as GL_RGB8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16 as GL_RG32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16 as GL_RG32I,Fail
@@ -784,11 +721,8 @@ spec at oes_texture_view@rendering-formats at clear GL_RGBA16I as GL_RG32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16I as GL_RG32I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16F,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA16I as GL_RGBA16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RG32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RG32I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA16UI as GL_RGBA16_SNORM,Fail
@@ -818,16 +752,11 @@ spec at oes_texture_view@rendering-formats at clear GL_RGBA8I as GL_RG16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8I as GL_RG16_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGB10_A2,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGBA8,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGBA8I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA8I as GL_RGBA8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_R32F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_R32I,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16F,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RG16_SNORM,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGB10_A2,Fail
-spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGBA8,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGBA8I,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8UI as GL_RGBA8_SNORM,Fail
 spec at oes_texture_view@rendering-formats at clear GL_RGBA8_SNORM as GL_R32F,Fail
diff --git a/src/gallium/frontends/lavapipe/lvp_execute.c b/src/gallium/frontends/lavapipe/lvp_execute.c
index ff5662a089b..d1c65d5838f 100644
--- a/src/gallium/frontends/lavapipe/lvp_execute.c
+++ b/src/gallium/frontends/lavapipe/lvp_execute.c
@@ -2847,43 +2847,13 @@ static void handle_copy_query_pool_results(struct vk_cmd_queue_entry *cmd,
    }
 }
 
-static void pack_clear_color(enum pipe_format pformat, VkClearColorValue *in_val, uint32_t col_val[4])
-{
-   const struct util_format_description *desc = util_format_description(pformat);
-   col_val[0] = col_val[1] = col_val[2] = col_val[3] = 0;
-   for (unsigned c = 0; c < 4; c++) {
-      if (desc->swizzle[c] >= 4)
-         continue;
-      const struct util_format_channel_description *channel = &desc->channel[desc->swizzle[c]];
-      if (channel->size == 32) {
-         col_val[c] = in_val->uint32[c];
-         continue;
-      }
-      if (channel->pure_integer) {
-         uint64_t v = in_val->uint32[c] & ((1u << channel->size) - 1);
-         switch (channel->size) {
-         case 2:
-         case 8:
-         case 10:
-            col_val[0] |= (v << channel->shift);
-            break;
-         case 16:
-            col_val[c / 2] |= (v << (16 * (c % 2)));
-            break;
-         }
-      } else {
-         util_pack_color(in_val->float32, pformat, (union util_color *)col_val);
-         break;
-      }
-   }
-}
-
 static void handle_clear_color_image(struct vk_cmd_queue_entry *cmd,
                                      struct rendering_state *state)
 {
    LVP_FROM_HANDLE(lvp_image, image, cmd->u.clear_color_image.image);
-   uint32_t col_val[4];
-   pack_clear_color(image->bo->format, cmd->u.clear_color_image.color, col_val);
+   union util_color uc;
+   uint32_t *col_val = uc.ui;
+   util_pack_color_union(image->bo->format, &uc, (void*)cmd->u.clear_color_image.color);
    for (unsigned i = 0; i < cmd->u.clear_color_image.range_count; i++) {
       VkImageSubresourceRange *range = &cmd->u.clear_color_image.ranges[i];
       struct pipe_box box;



More information about the mesa-commit mailing list