llvmpipe/format: fix snorm conversion

This fixes:
GTF-GL45.gtf33.GL3Tests.vertex_type_2_10_10_10_rev.vertex_type_2_10_10_10_rev_conversion
and
piglit
spec/arb_texture_view/rendering-formats/clear gl_rgba8_snorm as gl_r32f

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5820>
This commit is contained in:
Dave Airlie 2020-04-14 14:00:11 +10:00
parent 75e01d01a5
commit 2adb13f187
4 changed files with 7 additions and 13 deletions

View File

@ -85,8 +85,6 @@ dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide
dEQP-GLES3.functional.vertex_arrays.single_attribute.normalize.int2_10_10_10.components4_quads1
dEQP-GLES3.functional.vertex_arrays.single_attribute.normalize.int2_10_10_10.components4_quads256
dEQP-GLES31.functional.atomic_counter.dec.1_counter_100_calls_10_threads
dEQP-GLES31.functional.atomic_counter.dec.1_counter_100_calls_1_thread
dEQP-GLES31.functional.atomic_counter.dec.1_counter_1_call_10_threads

View File

@ -86,8 +86,6 @@ dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide
dEQP-GLES3.functional.vertex_arrays.single_attribute.normalize.int2_10_10_10.components4_quads1
dEQP-GLES3.functional.vertex_arrays.single_attribute.normalize.int2_10_10_10.components4_quads256
dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.8
dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.4
dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.9

View File

@ -880,7 +880,6 @@ spec/arb_texture_view/rendering-formats/clear gl_rgba8 as gl_rg16f: fail
spec/arb_texture_view/rendering-formats/clear gl_rgba8 as gl_rg16i: fail
spec/arb_texture_view/rendering-formats/clear gl_rgba8 as gl_rgba8_snorm: fail
spec/arb_texture_view/rendering-formats/clear gl_rgba8 as gl_rgba8i: fail
spec/arb_texture_view/rendering-formats/clear gl_rgba8_snorm as gl_r32f: fail
spec/arb_timer_query/query gl_timestamp: fail
spec/arb_vertex_attrib_64bit/get_double_attribs-display-lists: skip
spec/arb_vertex_program/vp-address-02: skip
@ -1627,7 +1626,6 @@ spec/oes_texture_view/rendering-formats/clear gl_rgba8 as gl_rg16f: fail
spec/oes_texture_view/rendering-formats/clear gl_rgba8 as gl_rg16i: fail
spec/oes_texture_view/rendering-formats/clear gl_rgba8 as gl_rgba8_snorm: fail
spec/oes_texture_view/rendering-formats/clear gl_rgba8 as gl_rgba8i: fail
spec/oes_texture_view/rendering-formats/clear gl_rgba8_snorm as gl_r32f: fail
spec/oes_texture_view/rendering-formats/render to gl_rgb16 as gl_rgb16f: skip
spec/oes_texture_view/rendering-formats/render to gl_rgb16 as gl_rgb16i: skip
spec/oes_texture_view/rendering-formats/render to gl_rgb16 as gl_rgb16ui: skip
@ -1672,8 +1670,8 @@ wgl/wgl-sanity: skip
summary:
name: results
---- --------
pass: 21853
fail: 202
pass: 21855
fail: 200
crash: 0
skip: 1445
timeout: 0

View File

@ -209,12 +209,12 @@ lp_build_extract_soa_chan(struct lp_build_context *bld,
LLVMValueRef scale_val = lp_build_const_vec(gallivm, type, scale);
input = LLVMBuildFMul(builder, input, scale_val, "");
/*
* The formula above will produce value below -1.0 for most negative
* value but everything seems happy with that hence disable for now.
* The formula above will produce value below -1.0 for most negative values.
* compliance requires clamping it.
* GTF-GL45.gtf33.GL3Tests.vertex_type_2_10_10_10_rev.vertex_type_2_10_10_10_rev_conversion.
*/
if (0)
input = lp_build_max(bld, input,
lp_build_const_vec(gallivm, type, -1.0f));
input = lp_build_max(bld, input,
lp_build_const_vec(gallivm, type, -1.0f));
}
}
else if (chan_desc.pure_integer) {