[Piglit] [PATCH 5/6] arb_bindless_texture: add inout-non-matching-type.frag compiler tests

Samuel Pitoiset samuel.pitoiset at gmail.com
Thu Apr 27 08:12:56 UTC 2017



On 04/27/2017 10:02 AM, Samuel Pitoiset wrote:
> 
> 
> On 04/27/2017 02:24 AM, Timothy Arceri wrote:
>> Same comment for 3-5 as for comment 2. I'd rather see varyables 
>> function params and return values used as frag/vert outputs otherwise 
>> there is no guarantee the compiler won't just optimise the invalid 
>> uses away.
> 
> I think it's a bit overkill. Most of the compiler tests in piglit are 
> really pretty simple. Looks like only very few of them guarantee that 
> the compiler won't optimize. Yeah, it's sad.
> 
> I have written and tested this series against NV blob. At least, this 
> one doesn't need anything else because it fails as-is.

I understand your point of view though. But the way I designed the 
compiler tests for ARB_bindless_texture would need a bunch of changes.

> 
>>
>> On 27/04/17 08:52, Samuel Pitoiset wrote:
>>> "Replace Section 4.1.X, (Images)"
>>>
>>>      "As function parameters, images may be only passed to images
>>>       of matching type."
>>>
>>> "Replace Section 4.1.7 (Samplers), p. 25"
>>>
>>>      "As function parameters, samplers may be only passed to samplers
>>>       of matching type."
>>>
>>> Two simple test cases to make sure types are checked.
>>>
>>> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
>>> ---
>>>   .../compiler/images/inout-non-matching-type.frag   | 26 
>>> ++++++++++++++++++++++
>>>   .../compiler/samplers/inout-non-matching-type.frag | 25 
>>> +++++++++++++++++++++
>>>   2 files changed, 51 insertions(+)
>>>   create mode 100644 
>>> tests/spec/arb_bindless_texture/compiler/images/inout-non-matching-type.frag 
>>>
>>>   create mode 100644 
>>> tests/spec/arb_bindless_texture/compiler/samplers/inout-non-matching-type.frag 
>>>
>>>
>>> diff --git 
>>> a/tests/spec/arb_bindless_texture/compiler/images/inout-non-matching-type.frag 
>>> b/tests/spec/arb_bindless_texture/compiler/images/inout-non-matching-type.frag 
>>>
>>> new file mode 100644
>>> index 000000000..0ff8d5bc9
>>> --- /dev/null
>>> +++ 
>>> b/tests/spec/arb_bindless_texture/compiler/images/inout-non-matching-type.frag 
>>>
>>> @@ -0,0 +1,26 @@
>>> +// [config]
>>> +// expect_result: fail
>>> +// glsl_version: 3.30
>>> +// require_extensions: GL_ARB_bindless_texture 
>>> GL_ARB_shader_image_load_store
>>> +// [end config]
>>> +
>>> +#version 330
>>> +#extension GL_ARB_bindless_texture: require
>>> +#extension GL_ARB_shader_image_load_store: enable
>>> +
>>> +// The ARB_bindless_texture spec says:
>>> +//
>>> +//  "Replace Section 4.1.X, (Images)"
>>> +//
>>> +//  "As function parameters, images may be only passed to images of
>>> +//   matching type."
>>> +
>>> +void f(inout image2D p)
>>> +{
>>> +}
>>> +
>>> +void main()
>>> +{
>>> +    writeonly image1D u;
>>> +    f(u);
>>> +}
>>> diff --git 
>>> a/tests/spec/arb_bindless_texture/compiler/samplers/inout-non-matching-type.frag 
>>> b/tests/spec/arb_bindless_texture/compiler/samplers/inout-non-matching-type.frag 
>>>
>>> new file mode 100644
>>> index 000000000..25a5724cf
>>> --- /dev/null
>>> +++ 
>>> b/tests/spec/arb_bindless_texture/compiler/samplers/inout-non-matching-type.frag 
>>>
>>> @@ -0,0 +1,25 @@
>>> +// [config]
>>> +// expect_result: fail
>>> +// glsl_version: 3.30
>>> +// require_extensions: GL_ARB_bindless_texture
>>> +// [end config]
>>> +
>>> +#version 330
>>> +#extension GL_ARB_bindless_texture: require
>>> +
>>> +// The ARB_bindless_texture spec says:
>>> +//
>>> +//  "Replace Section 4.1.7 (Samplers), p. 25"
>>> +//
>>> +//  "As function parameters, samplers may be only passed to samplers of
>>> +//   matching type."
>>> +
>>> +void f(inout sampler2D p)
>>> +{
>>> +}
>>> +
>>> +void main()
>>> +{
>>> +    sampler1D u;
>>> +    f(u);
>>> +}
>>>


More information about the Piglit mailing list