[Mesa-dev] [RFC] spec: MESA_program_binary
Edward O'Callaghan
funfunctor at folklore1984.net
Thu Feb 16 04:42:26 UTC 2017
On 02/16/2017 01:52 PM, Timothy Arceri wrote:
> In order add functionality to ARB_get_program_binary we need
> binary format enums.
> ---
>
> Techland games such as Dead Island and Dying Light make use of
> GetProgramBinary(). My current guess is the Dead Island crash
> https://bugs.freedesktop.org/show_bug.cgi?id=85564 is caused
> due to buggy handling of this feature not being available.
>
> Anyway I'm not sure how we go about getting Khronos to assign
> enums for the binary formats but thought I'd send this to the
> list for discussion.
>
> docs/specs/MESA_program_binary.txt | 78 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 78 insertions(+)
> create mode 100644 docs/specs/MESA_program_binary.txt
>
> diff --git a/docs/specs/MESA_program_binary.txt b/docs/specs/MESA_program_binary.txt
> new file mode 100644
> index 0000000..b34e42e
> --- /dev/null
> +++ b/docs/specs/MESA_program_binary.txt
> @@ -0,0 +1,78 @@
> +Name
> +
> + MESA_program_binary
> +
> +Name Strings
> +
> + GL_MESA_program_binary
> +
> +Contact
> +
> + Timothy Arceri (tarceri 'at' itsqueeze.com)
> +
> +Status
> +
> + Complete.
> +
> +Version
> +
> + Last Modified Date: February 16, 2017
> + Revision: #1
> +
> +Number
> +
> + ???
> +
> +Dependencies
> +
> + OpenGL ES 2.0 is required.
> +
> + Written based on the wording of the OpenGL ES 2.0 specification.
> +
> + This extension interacts with OES_get_program_binary.
> +
> +Overview
> +
> + MESA provides drivers for multiple hardware vendors. This extension
> + provides binary formats in order to avoid conflicts between drivers when
> + loading precompiled binaries.
> +
> +New Procedures and Functions
> +
> + None.
> +
> +New Tokens
> +
> + Accepted by the <binaryFormat> parameter of ShaderBinary:
> +
> + MESA_PROGRAM_BINARY_AMD ????
Hey Timothy,
What happens in the case when say, non-GCN vs. GCN vs.
other-shinny-new-ISA? Since this is for mesa_ would it be better to have
something like,
MESA_PROGRAM_BINARY_GALLIUM, MESA_PROGRAM_BINARY_NIR or am I
misunderstanding something (probably?)
Kindest Regards,
Edward.
> + MESA_PROGRAM_BINARY_NV ????
> + MESA_PROGRAM_BINARY_INTEL ????
> + MESA_PROGRAM_BINARY_BCOM ????
> + MESA_PROGRAM_BINARY_QCOM ????
> +
> +Additions to Chapter 2 of the OpenGL ES 2.0 Specification (OpenGL Operation)
> +
> + Add the following paragraph to the end of section 2.10.2:
> +
> + "Depending on the hardware in use the apropriate <binaryFormat> is
> + returned when querying the list of SHADER_BINARY_FORMATS.
> +
> + Pre-compiled shader binaries in this format may be loaded via ShaderBinary.
> +
> + When a binary fails to load, an INVALID_VALUE error is generated and a
> + more detailed error message is appended to the shader's info log."
> +
> +Errors
> +
> + INVALID_VALUE is generated if the <binary> parameter to ShaderBinary was
> + produced with an incompatible version of the MESA shader compiler.
> +
> +New State
> +
> + None.
> +
> +Revision History
> +
> + #01 02/16/2010 Timothy Arceri First draft.
> +
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170216/48c6e04c/attachment.sig>
More information about the mesa-dev
mailing list