[Mesa-dev] [PATCH v2 12/31] glsl: allow bindless images to be declared inside structures

Nicolai Hähnle nhaehnle at gmail.com
Wed Apr 26 15:01:29 UTC 2017


On 26.04.2017 12:16, Timothy Arceri wrote:
>
>
> On 26/04/17 20:14, Timothy Arceri wrote:
>>
>>
>> On 26/04/17 19:50, Timothy Arceri wrote:
>>> On 26/04/17 17:28, Nicolai Hähnle wrote:
>>>> On 26.04.2017 04:45, Timothy Arceri wrote:
>>>>> Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
>>>>>
>>>>> On 24/04/17 20:35, Samuel Pitoiset wrote:
>>>>>> The spec doesn't clearly state this, but I have got clarifiation
>>>>>> from the spec authors.
>>>>
>>>> Okay, that answers my question from the other email.
>>>>
>>>> BTW, what about samplers? It seems that this code doesn't check for
>>>> samplers at all?
>>>
>>> That's because this is one of those places where OpenGL is totally
>>> inconsistent. Samplers were already allowed, this was a really pain
>>> for implementing indirect indexing, especially when throwing AoA into
>>> the mix.
>>>
>>> Samuel it would be really good to have some piglit tests for images.
>>> e.g. Arrays of structs with arrays of images, etc. There should be
>>> some examples in the ARB_gpu_shader5 and ARB_arrays_of_arrays
>>> execution piglit tests.
>>>
>>>
>>>   Anyway, this patch:
>>>>
>>>> Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
>>>>
>>>>>>
>>>>>> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
>>>>>> ---
>>>>>>   src/compiler/glsl/ast_to_hir.cpp | 2 +-
>>>>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/src/compiler/glsl/ast_to_hir.cpp
>>>>>> b/src/compiler/glsl/ast_to_hir.cpp
>>>>>> index a63f9da912..5ef99bf504 100644
>>>>>> --- a/src/compiler/glsl/ast_to_hir.cpp
>>>>>> +++ b/src/compiler/glsl/ast_to_hir.cpp
>>>>>> @@ -6944,7 +6944,7 @@
>>>>>> ast_process_struct_or_iface_block_members(exec_list *instructions,
>>>>>>               _mesa_glsl_error(&loc, state, "atomic counter in
>>>>>> structure");
>>>>>>            }
>>>>>>   -         if (decl_type->contains_image()) {
>>>>>> +         if (!state->has_bindless() &&
>>>>>> decl_type->contains_image()) {
>>>>>>               /* FINISHME: Same problem as with atomic counters.
>>>>>>                * FINISHME: Request clarification from Khronos and add
>>>>>>                * FINISHME: spec quotation here.
>>
>> I believe there was a spec bug filed for this (maybe internally). We
>> should probably check if that has been resolved. If so we might just
>> have to remove this check completely.
>>
>>  From what I recall there was a spec bug where the outcome said
>> samplers in structs were allowed and atomics were not. This is what
>> the FINISHME is talking about. Currently the spec doesn't say images
>> are not allowed.
>
> I should clarify that this outcome was decided in a separate bug report
> from images.

Which bug report was this?

Cheers,
Nicolai


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


-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.


More information about the mesa-dev mailing list