panfrost: XMLify the rest of shader_meta
This contains a bit of everything, so just XML for this commit. The rest of the series will be slowly moving over to this representation. The one noteworthy addition is the rename of "No MSAA" to "Single-sampled lines". This came about due to a buggy branch that forgot to set this bit. Ths worked, with the caveat of the following tests failing with a single-sampled framebuffer: dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide dEQP-GLES2.functional.rasterization.primitives.line_loop dEQP-GLES2.functional.rasterization.primitives.line_loop_wide dEQP-GLES2.functional.rasterization.primitives.line_strip dEQP-GLES2.functional.rasterization.primitives.line_strip_wide dEQP-GLES2.functional.rasterization.primitives.lines dEQP-GLES2.functional.rasterization.primitives.lines_wide That is, this bit controls the behaviour of line rasterization with multisampling. This is required to implement the divergent behaviours described in the OpenGL ES 3.2 specification sections 13.6.1 ("Basic Line Segment Rasterization") and 13.6.4 ("Line Multisample Rasterization"), where setting this bit corresponds to the former (single-sampled) behaviour. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6440>
This commit is contained in:
parent
80f1d611c5
commit
754d543829
|
@ -403,6 +403,40 @@
|
|||
<field name="Varying count" size="16" start="3:16" type="uint"/>
|
||||
</struct>
|
||||
|
||||
<struct name="Multisample, Misc" size="1">
|
||||
<field name="Sample mask" size="16" start="0" type="uint"/>
|
||||
<field name="Multisample enable" size="1" start="16" type="bool"/>
|
||||
<!-- TODO 17 -->
|
||||
<field name="Evaluate per-sample" size="1" start="18" type="bool"/>
|
||||
<field name="Unknown 1" size="1" start="19" type="bool"/>
|
||||
<field name="Unknown 2" size="1" start="20" type="bool"/>
|
||||
<field name="SFBD Load destination" size="1" start="21" type="bool"/>
|
||||
<field name="SFBD Blend shader" size="1" start="22" type="bool"/>
|
||||
<!-- TODO 23 -->
|
||||
<field name="Depth function" size="3" start="24" type="Func"/>
|
||||
<field name="Depth write mask" size="1" start="27" type="bool"/>
|
||||
<field name="Near discard" size="1" start="28" type="bool"/>
|
||||
<field name="Far discard" size="1" start="29" type="bool"/>
|
||||
<!-- TODO: 30-31 -->
|
||||
</struct>
|
||||
|
||||
<struct name="Stencil Mask, Misc" size="1">
|
||||
<field name="Stencil mask front" size="8" start="0" type="uint"/>
|
||||
<field name="Stencil mask back" size="8" start="8" type="uint"/>
|
||||
<field name="Stencil enable" size="1" start="16" type="bool"/>
|
||||
<field name="Alpha-to-coverage" size="1" start="17" type="bool"/>
|
||||
<!-- TODO 18-19 -->
|
||||
<field name="SFBD Write enable" size="1" start="20" type="bool"/>
|
||||
<field name="Unknown 1" size="3" start="21" type="uint"/>
|
||||
<field name="SFBD sRGB" size="1" start="24" type="bool"/>
|
||||
<field name="SFBD Dither disable" size="1" start="25" type="bool"/>
|
||||
<field name="Unknown 2" size="1" start="26" type="bool"/>
|
||||
<field name="Depth Range 1" size="1" start="28" type="bool"/>
|
||||
<field name="Depth Range 2" size="1" start="29" type="bool"/>
|
||||
<field name="Single-sampled lines" size="1" start="30" type="bool"/>
|
||||
<!-- TODO: 31 -->
|
||||
</struct>
|
||||
|
||||
<struct name="Stencil">
|
||||
<field name="Reference Value" size="8" start="0" type="uint"/>
|
||||
<field name="Mask" size="8" start="8" type="uint" default="0xFF"/>
|
||||
|
@ -412,6 +446,21 @@
|
|||
<field name="Depth Pass" size="3" start="25" type="Stencil Op"/>
|
||||
</struct>
|
||||
|
||||
<struct name="State" with_opaque="true">
|
||||
<field name="Shader" size="128" start="0:0" type="Shader"/>
|
||||
<field name="Properties" size="32" start="4:0" type="uint"/>
|
||||
<field name="Depth units" size="32" start="5:0" type="float"/>
|
||||
<field name="Depth factor" size="32" start="6:0" type="float"/>
|
||||
<!-- TODO: word 7 -->
|
||||
<field name="Multisample, Misc" size="32" start="8:0" type="Multisample, Misc"/>
|
||||
<field name="Stencil Mask, Misc" size="32" start="9:0" type="Stencil Mask, Misc"/>
|
||||
<field name="Stencil front" size="32" start="10:0" type="Stencil"/>
|
||||
<field name="Stencil back" size="32" start="11:0" type="Stencil"/>
|
||||
<field name="Preload" size="32" start="12:0" type="Preload"/>
|
||||
<!--- TODO: word 13 -->
|
||||
<field name="SFBD Blend" size="64" start="14:0" type="uint"/>
|
||||
</struct>
|
||||
|
||||
<struct name="Uniform Buffer">
|
||||
<field name="Entries" size="12" start="0" type="uint" modifier="minus(1)"/>
|
||||
<field name="Pointer" size="52" start="12" type="address" modifier="shr(4)" element="16" count="Entries"/>
|
||||
|
|
Loading…
Reference in New Issue