On 17/04/16 13:57, Marek Olšák wrote:
On Sun, Apr 17, 2016 at 11:12 AM, Jose Fonseca <jfons...@vmware.com> wrote:
On 16/04/16 23:27, Roland Scheidegger wrote:
Am 16.04.2016 um 14:50 schrieb Marek Olšák:
From: Marek Olšák <marek.ol...@amd.com>
we should use MESA_SHADER_* everywhere, but we're not ready for that yet
---
I think the idea initially was that tgsi is essentially self-contained:
you can parse the token stream without any "external" dependencies.
Feels a bit unnecessary though.
I would object to using MESA_SHADER_ though. Those are clearly defined
outside gallium. If you'd wanted to reorder the pipe ones to match the
ordering, that would be something different, though pretty sure it would
require some code changes and break even more out-of-tree code ;-).
Agree. For sake of non-Mesa state trackers, gallium interface should not
depend on Mesa/OpenGL etc.
The MESA_SHADER_* enums are used by OpenGL, Vulkan, and NIR, which is
an even more independent IR than TGSI and is going to be supported by Gallium.
MESA_SHADER are defined in src/compiler/shader_enums.h , which is full
of symbols without any sort of standard prefix.
Furthermore src/compiler/shader_enums.c depends on src/mesa/* i.
I'm OK with src/compiler/* becoming a API-agnostic module, and have
gallium interfaces depend on it at some point, but first the house needs
to be cleaned up, at least to the same standards of gallium headers,
which are not even particularly high by any standard.
I'm also a bit frustrated we keep going around on circles on these sort
of matters. Gallium is already OS/API agnostic. It was made so it
didn't depend on anything. So I'm not sure why we need to make it
depend on stuff it clearly had no goal of being OS/API agnostic when it
was designed.
Honestly, using a single set of FOO_SHADER_* enums everywhere is far
less important that keeping gallium dependencies in check IMO.
Jose
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev