On 18/04/17 20:48, Nicolai Hähnle wrote:
On 18.04.2017 02:09, Timothy Arceri wrote:
V2: some bug fixes and suggestions addressed as suggested by Brian and
    Nicolai.

This series adds some initial support for the KHR_no_error.

For now it can only be enabled with the MESA_NO_ERROR environment
variable. To start with I've added support to some of the api
calls that were taking a long time (or where caled often) in
the Civ6 benchmark.

Just as a matter of general musing, I wonder if in some cases the
no_error version of an API entry point can be directly configured in the
dispatch table. I.e., have a _mesa_no_error_Foo function which the
_mesa_Foo function chains to. Though often you have lookups in both
cases. Perhaps this is a rare case where templates are actually useful?
Having a "no_error" template argument so that the compiler creates two
function versions for us automatically, if such a thing were possible in
C. Something to consider for later perhaps.

My current thinking was to do this on a case by case basis, adding an extra attribute to the API XML to flag a function that has a no error variant. There will be cases like the Uniform functions where it makes sense to just use the if branch to avoid excessive code duplication. Other than that I agree it probably makes sense to have the dispatch table point directly to a no error function where possible.


I think patch #1 needs a security check. I also sent a minor comment on
patch #4, apart from that patches 2-9, 11, 12 are

Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com>


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev



_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to