[Piglit] [PATCH] internalformat_query(2): fix SAMPLES pname checks for RGB9_E5
Antia Puentes
apuentes at igalia.com
Tue Feb 20 16:28:52 UTC 2018
On 20/02/18 17:18, Alejandro Piñeiro wrote:
> I also noted that the commit message says "internalformat_query(2)". Not
> sure why it uses parenthesis, shouldn't be just "internalformat_query2"?
It includes changes both in the ARB_internalformat_query tests
(api-errors.c)
and query2 (samples-pnames.c).
> On 20/02/18 17:14, Alejandro Piñeiro wrote:
>> On 20/02/18 14:54, Antia Puentes wrote:
>>> SAMPLES and NUM_SAMPLE_COUNTS queries accept internalformats which
>>> are defined as color-, depth- or stencil-renderable. RGB9_E5 is marked
>>> as non color-renderable in OpenGL 4.6, however if the
>>> EXT_texture_shared_exponent extension is exposed it must be considered
>>> as such. The later was discussed in:
>>> https://github.com/KhronosGroup/OpenGL-API/issues/32
>>> ---
>>> tests/spec/arb_internalformat_query/api-errors.c | 16 ++++++++++++++-
>>> .../arb_internalformat_query2/samples-pnames.c | 23 +++++++++++++++++++++-
>>> 2 files changed, 37 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/tests/spec/arb_internalformat_query/api-errors.c b/tests/spec/arb_internalformat_query/api-errors.c
>>> index a174143a3..eabf6a8d5 100644
>>> --- a/tests/spec/arb_internalformat_query/api-errors.c
>>> +++ b/tests/spec/arb_internalformat_query/api-errors.c
>>> @@ -128,7 +128,10 @@ static const GLenum invalid_formats[] = {
>>> GL_BGRA_INTEGER_EXT,
>>> GL_LUMINANCE_INTEGER_EXT,
>>> GL_LUMINANCE_ALPHA_INTEGER_EXT,
>>> - GL_RGB9_E5
>>> +};
>>> +
>>> +static const GLenum text_shared_exponent_formats[] = {
>> I dont like too much using "text" as the shortname for "texture" (it is
>> slightly confusing). I would prefer the full "texture" or just remove it
>> if you think that becomes too long (so "shared_exponent_formats").
>>
>>> + GL_RGB9_E5,
>>> };
>>>
>>> static const GLenum valid_pnames[] = {
>>> @@ -295,6 +298,17 @@ piglit_init(int argc, char **argv)
>>> GL_INVALID_ENUM)
>>> && pass;
>>>
>>> + /* RGB9_E5 is defined as color-renderable if EXT_texture_shared_exponent
>>> + * is exposed, otherwise INVALID_ENUM should be returned.
>>> + */
>>> + if (!piglit_is_extension_supported("GL_EXT_texture_shared_exponent")) {
>>> + pass = try(valid_targets, ARRAY_SIZE(valid_targets),
>>> + text_shared_exponent_formats, 1,
>>> + valid_pnames, ARRAY_SIZE(valid_pnames),
>>> + GL_INVALID_ENUM)
>>> + && pass;
>>> + }
>>> +
>>> /* The GL_ARB_internalformat_query spec says:
>>> *
>>> * "If the <target> parameter to GetInternalformativ is not one of
>>> diff --git a/tests/spec/arb_internalformat_query2/samples-pnames.c b/tests/spec/arb_internalformat_query2/samples-pnames.c
>>> index f6def23d0..48972705e 100644
>>> --- a/tests/spec/arb_internalformat_query2/samples-pnames.c
>>> +++ b/tests/spec/arb_internalformat_query2/samples-pnames.c
>>> @@ -96,7 +96,10 @@ static const GLenum non_renderable_internalformats[] = {
>>> GL_BGRA_INTEGER_EXT,
>>> GL_LUMINANCE_INTEGER_EXT,
>>> GL_LUMINANCE_ALPHA_INTEGER_EXT,
>>> - GL_RGB9_E5
>>> +};
>>> +
>>> +static const GLenum text_shared_exponent_formats[] = {
>>> + GL_RGB9_E5,
>>> };
>> Ditto (about name)
>>
>>>
>>> enum piglit_result
>>> @@ -217,6 +220,15 @@ check_num_sample_counts(void)
>>> GL_NUM_SAMPLE_COUNTS, data)
>>> && pass;
>>>
>>> + /* RGB9_E5 is not defined as color-renderable unless
>>> + * EXT_texture_shared_exponent is exposed. */
>> The closing "*/" should be on the next line. I know that we didn't
>> respect it consistently on this query2 tests, but just checking it is
>> the common on most piglit tests. Additionally, you do that on the
>> previous comment. So at least this patch should be consistent with one
>> option or the other.
>>
>>> + if (!piglit_is_extension_supported("GL_EXT_texture_shared_exponent")) {
>>> + pass = try(valid_targets, ARRAY_SIZE(valid_targets),
>>> + text_shared_exponent_formats, 1,
>>> + GL_NUM_SAMPLE_COUNTS, data)
>>> + && pass;
>>> + }
>>> +
>>> /*
>>> * ... or if <target> does not support
>>> * multiple samples (ie other than
>>> @@ -266,6 +278,15 @@ check_samples(void)
>>> GL_SAMPLES, data)
>>> && pass;
>>>
>>> + /* RGB9_E5 is not defined as color-renderable unless
>>> + * EXT_texture_shared_exponent is exposed. */
>> Ditto (about comment).
>>
>>> + if (!piglit_is_extension_supported("GL_EXT_texture_shared_exponent")) {
>>> + pass = try(valid_targets, ARRAY_SIZE(valid_targets),
>>> + text_shared_exponent_formats, 1,
>>> + GL_SAMPLES, data)
>>> + && pass;
>>> + }
>>> +
>>> /*
>>> * or if <target> does not support multiple samples (ie other
>>> * than TEXTURE_2D_MULTISAMPLE, TEXTURE_2D_MULTISAMPLE_ARRAY,
>> With those nitpicks fixed:
>> Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
>>
>>
>> _______________________________________________
>> Piglit mailing list
>> Piglit at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/piglit
>
More information about the Piglit
mailing list