[Mesa-dev] [PATCH v2 00/24] ARB_program_interface_query
Tapani
tapani.palli at intel.com
Thu Apr 16 02:37:56 PDT 2015
On 04/16/2015 12:32 PM, Jose Fonseca wrote:
> I took the liberty to push a follow-up change to rename `interface` to
> `program `programInterface`.
>
> `interface` caused build failures on Windows, as it is a define -- an
> alias for `struct` keyword, used when declaring COM interfaces in C or
> C++.
>
> I chose `programInterface` to match the the name name used in
> GL_ARB_program_interface_query spec/headers (which was in fact chosen
> like that for the very same reason).
>
> This is my commit:
>
>
> http://cgit.freedesktop.org/mesa/mesa/commit/?id=037e0e78abf0c312f737d33f3c33e37b22bf226d
>
>
OK, I see. This rename change is fine with me,
> Even `programInterface` was the chosen name in the extension, I admit
> is a tad long. I just want to fix the build asap, but if you prefer
> to rename to something smaller (e.g, `iface`) I'm happy to do it too.
>
> Jose
>
>
> On 01/04/15 13:14, Tapani Pälli wrote:
>> Hello;
>>
>> Here's the v2 implementation of ARB_program_interface_query extension.
>> I have addressed errors found by Ilia Mirkin in his review and there
>> are several small fixes here and there for bugs revealed with Martin's
>> Piglit tests.
>>
>> Patches add a resource list as part of gl_shader_program which contains
>> all different resources. List is then used to implement extension
>> functions as well as following existing queries:
>>
>> GetActiveAttrib
>> GetAttribLocation
>> GetUniformLocation
>> GetActiveUniformName
>> GetUniformIndices
>> GetActiveUniform
>> GetActiveUniformsiv
>> GetUniformBlockIndex
>> GetActiveUniformBlockName
>> GetActiveUniformBlockiv
>> GetActiveAtomicCounterBufferiv
>> GetTransformFeedbackVarying
>> GetFragDataLocation
>> GetFragDataIndex
>>
>> No Piglit regressions with these changes. There are Piglit tests for the
>> extension in the Piglit mailing list, all of these pass:
>>
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.freedesktop.org_archives_piglit_2015-2DApril_015457.html&d=AwIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=3w0-sDFs-LVaBLQqNorjQ5rE4obDOogdaHYG8Iosa3M&s=xQYf3XSyViAxeZGMVr3QiQgsl228e0lTG7L_Kli3ctM&e=
>>
>>
>> Extension specification:
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.opengl.org_registry_specs_ARB_program-5Finterface-5Fquery.txt&d=AwIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=3w0-sDFs-LVaBLQqNorjQ5rE4obDOogdaHYG8Iosa3M&s=exUys8YSrdaLlgkKQs9pcqsRLY7AtjRRk7FyGW4kvno&e=
>>
>>
>> Git branch with all the patches:
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__cgit.freedesktop.org_-7Etpalli_mesa_log_-3Fh-3Dpiq&d=AwIGaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=3w0-sDFs-LVaBLQqNorjQ5rE4obDOogdaHYG8Iosa3M&s=GdA-NzXKst7bl3fFT5Lbj622qrZoNeQs4dLu41WJ7zw&e=
>>
>>
>> Thanks;
>>
>> Tapani Pälli (24):
>> linker: fix varying linking if SSO program has only gs and fs
>> glapi: add GL_ARB_program_interface_query skeleton
>> mesa/glsl: build list of program resources during linking
>> mesa: glGetProgramInterfaceiv
>> mesa: glGetProgramResourceIndex
>> mesa: glGetProgramResourceName
>> mesa: glGetProgramResourceLocation
>> mesa: glGetProgramResourceLocationIndex
>> mesa: implementation of glGetProgramResourceiv
>> mesa: enable GL_ARB_program_interface_query extension
>> mesa: refactor GetActiveAttrib
>> mesa: refactor GetAttribLocation
>> mesa: refactor GetFragDataLocation
>> mesa: refactor GetFragDataIndex
>> mesa: mesa_bufferiv utility function for buffer objects
>> mesa: refactor GetActiveUniformsiv, use _mesa_program_resource_prop
>> mesa: refactor GetTransformFeedbackVarying
>> mesa: refactor GetActiveUniform
>> mesa: refactor GetActiveUniformName
>> mesa: remove unused _mesa_get_uniform_name
>> mesa: refactor GetActiveUniformBlockName
>> mesa: refactor GetUniformLocation
>> mesa: refactor GetUniformIndices
>> mesa: refactor GetUniformBlockIndex
>>
>> docs/GL3.txt | 4 +-
>> docs/relnotes/10.6.0.html | 1 +
>> src/glsl/linker.cpp | 211 +++++-
>> src/mapi/glapi/gen/ARB_program_interface_query.xml | 109 +++
>> src/mapi/glapi/gen/gl_API.xml | 4 +-
>> src/mapi/glapi/gen/gl_genexec.py | 1 +
>> src/mesa/Makefile.sources | 2 +
>> src/mesa/main/extensions.c | 1 +
>> src/mesa/main/mtypes.h | 14 +
>> src/mesa/main/program_resource.c | 417 +++++++++++
>> src/mesa/main/program_resource.h | 58 ++
>> src/mesa/main/shader_query.cpp | 764
>> ++++++++++++++++++---
>> src/mesa/main/shaderapi.h | 45 ++
>> src/mesa/main/shaderobj.c | 6 +
>> src/mesa/main/tests/dispatch_sanity.cpp | 12 +-
>> src/mesa/main/transformfeedback.c | 19 +-
>> src/mesa/main/uniform_query.cpp | 138 ++--
>> src/mesa/main/uniforms.c | 294 +++-----
>> src/mesa/main/uniforms.h | 5 -
>> 19 files changed, 1687 insertions(+), 418 deletions(-)
>> create mode 100644 src/mapi/glapi/gen/ARB_program_interface_query.xml
>> create mode 100644 src/mesa/main/program_resource.c
>> create mode 100644 src/mesa/main/program_resource.h
>>
>
More information about the mesa-dev
mailing list