Re: [Piglit] [PATCH v2 2/7] egl-context-preemption: Add check for high priority contexts.

2018-10-31 Thread Eric Engestrom
On Monday, 2018-10-29 10:16:30 -0700, Rafael Antognolli wrote:
> Check if we can create high priority contexts, otherwise just fail the
> test immediately. There's no reason to test for preemption if we can't
> create high priority contexts.
> 
> v2: Require configless context (Tapani)
> ---
>  tests/egl/egl-context-preemption.c | 58 ++
>  1 file changed, 58 insertions(+)
> 
> diff --git a/tests/egl/egl-context-preemption.c 
> b/tests/egl/egl-context-preemption.c
> index 82a698aa1..5265bccc4 100644
> --- a/tests/egl/egl-context-preemption.c
> +++ b/tests/egl/egl-context-preemption.c
> @@ -58,6 +58,40 @@ struct test_profile {
>  static bool small = false;
>  static int total_objects = 0;
>  
> +static EGLint
> +check_priority(EGLDisplay dpy, EGLContext ctx, EGLint *expected)
> +{
> + EGLint value;
> + EGLBoolean status =
> + eglQueryContext(dpy, ctx, EGL_CONTEXT_PRIORITY_LEVEL_IMG, 
> );
> +
> + if (status == EGL_FALSE) {
> + piglit_loge("eglQueryContext failed\n");
> + piglit_report_result(PIGLIT_FAIL);
> + }
> +
> + if (expected && value != *expected) {
> + piglit_loge("%s fail: priority value 0x%x, expected 0x%x\n",
> + __func__, value, *expected);
> + piglit_loge("Can't create high priority context.\n");
> + piglit_report_result(PIGLIT_FAIL);
> + }
> + return value;
> +}
> +
> +static EGLContext
> +create_context(EGLDisplay dpy, EGLint *attr)
> +{
> + EGLContext ctx =
> + eglCreateContext(dpy, EGL_NO_CONFIG_MESA, EGL_NO_CONTEXT, attr);
> +
> + if (ctx == EGL_NO_CONTEXT) {
> + piglit_loge("could not create EGL context, attr 0x%x\n", 
> attr[1]);
> + piglit_report_result(PIGLIT_FAIL);
> + }
> + return ctx;
> +}
> +
>  static const char *vs_text =
>   "#version 330 core\n"
>   "layout (location = 0) in vec3 aPos;\n"
> @@ -304,6 +338,27 @@ piglit_display(void)
>   return result;
>  }
>  
> +static void
> +check_high_context_priority_creation(EGLDisplay dpy)
> +{
> + EGLint attr[] = {
> + EGL_CONTEXT_PRIORITY_LEVEL_IMG,
> + EGL_CONTEXT_PRIORITY_HIGH_IMG,
> + EGL_NONE
> + };
> + EGLContext ctx = create_context(dpy, attr);
> + if (ctx == EGL_NO_CONTEXT) {
> + piglit_loge("failed to create context");
> + piglit_check_egl_error(EGL_SUCCESS);
> + piglit_report_result(PIGLIT_FAIL);
> + }
> +
> + EGLint expected = EGL_CONTEXT_PRIORITY_HIGH_IMG;
> + check_priority(dpy, ctx, );
> +
> + eglDestroyContext(dpy, ctx);
> +}
> +
>  void
>  piglit_init(int argc, char **argv)
>  {
> @@ -311,6 +366,9 @@ piglit_init(int argc, char **argv)
>  
>   dpy = eglGetCurrentDisplay();
>   piglit_require_egl_extension(dpy, "EGL_IMG_context_priority");
> + piglit_require_egl_extension(dpy, "EGL_MESA_configless_context");

FYI this extension was uptreamed as EGL_KHR_no_config_context, so we
should require either one of them if we want piglit to work with
non-Mesa drivers.

Similarly, the EGL_NO_CONFIG_MESA token was renamed EGL_NO_CONFIG_KHR
in the process, since the former only exists in Mesa's EGL headers.

> +
> + check_high_context_priority_creation(dpy);
>  
>   if (piglit_strip_arg(, argv, "small"))
>   small = true;
> -- 
> 2.19.1
> 
> ___
> Piglit mailing list
> Piglit@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/piglit
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH] glsl: Correct several built-in functions availability

2018-10-31 Thread Vadim Shovkoplias
Sorry, wrong mailing list. It was intended for Mesa
Please ignore this.


ср, 31 окт. 2018 г. в 18:05, Vadym Shovkoplias :

> In GLSL versions 1.00 ES, 1.10 and 1.20, Mesa includes
> some built-in functions which shouldn't be present in
> that version, namely:
>
>genIType abs(genIType x)
>genIType sign(genIType x)
>genIType min(genIType x, genIType y)
>genIType min(genIType x, int y)
>genIType max(genIType x, genIType y)
>genIType max(genIType x, int y)
>genIType clamp(genIType x, genIType minVal, genIType maxVal)
>genIType clamp(genIType x, int minVal, int maxVal)
>genType trunc(genType x)
>genType round(genType x)
>genType roundEven(genType x)
>genType modf(genType x, out genType i)
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108160
> Signed-off-by: Vadym Shovkoplias 
> ---
>  src/compiler/glsl/builtin_functions.cpp | 57 ++---
>  1 file changed, 41 insertions(+), 16 deletions(-)
>
> diff --git a/src/compiler/glsl/builtin_functions.cpp
> b/src/compiler/glsl/builtin_functions.cpp
> index 5650365d1d..2b549312b5 100644
> --- a/src/compiler/glsl/builtin_functions.cpp
> +++ b/src/compiler/glsl/builtin_functions.cpp
> @@ -144,6 +144,12 @@ v130(const _mesa_glsl_parse_state *state)
> return state->is_version(130, 300);
>  }
>
> +static bool
> +v150(const _mesa_glsl_parse_state *state)
> +{
> +   return state->is_version(150, 300);
> +}
> +
>  static bool
>  v130_desktop(const _mesa_glsl_parse_state *state)
>  {
> @@ -1439,10 +1445,10 @@ builtin_builder::create_builtins()
>  _##NAME(always_available, glsl_type::vec2_type),  \
>  _##NAME(always_available, glsl_type::vec3_type),  \
>  _##NAME(always_available, glsl_type::vec4_type),  \
> -_##NAME(always_available, glsl_type::int_type),   \
> -_##NAME(always_available, glsl_type::ivec2_type), \
> -_##NAME(always_available, glsl_type::ivec3_type), \
> -_##NAME(always_available, glsl_type::ivec4_type), \
> +_##NAME(v130, glsl_type::int_type),   \
> +_##NAME(v130, glsl_type::ivec2_type), \
> +_##NAME(v130, glsl_type::ivec3_type), \
> +_##NAME(v130, glsl_type::ivec4_type), \
>  _##NAME(fp64, glsl_type::double_type), \
>  _##NAME(fp64, glsl_type::dvec2_type),  \
>  _##NAME(fp64, glsl_type::dvec3_type),  \
> @@ -1534,14 +1540,14 @@ builtin_builder::create_builtins()
>  _##NAME(always_available, glsl_type::vec3_type,
> glsl_type::vec3_type),  \
>  _##NAME(always_available, glsl_type::vec4_type,
> glsl_type::vec4_type),  \
>
> \
> -_##NAME(always_available, glsl_type::int_type,
>  glsl_type::int_type),   \
> -_##NAME(always_available, glsl_type::ivec2_type,
> glsl_type::int_type),   \
> -_##NAME(always_available, glsl_type::ivec3_type,
> glsl_type::int_type),   \
> -_##NAME(always_available, glsl_type::ivec4_type,
> glsl_type::int_type),   \
> +_##NAME(v130, glsl_type::int_type,
>  glsl_type::int_type),   \
> +_##NAME(v130, glsl_type::ivec2_type,
> glsl_type::int_type),   \
> +_##NAME(v130, glsl_type::ivec3_type,
> glsl_type::int_type),   \
> +_##NAME(v130, glsl_type::ivec4_type,
> glsl_type::int_type),   \
>
> \
> -_##NAME(always_available, glsl_type::ivec2_type,
> glsl_type::ivec2_type), \
> -_##NAME(always_available, glsl_type::ivec3_type,
> glsl_type::ivec3_type), \
> -_##NAME(always_available, glsl_type::ivec4_type,
> glsl_type::ivec4_type), \
> +_##NAME(v130, glsl_type::ivec2_type,
> glsl_type::ivec2_type), \
> +_##NAME(v130, glsl_type::ivec3_type,
> glsl_type::ivec3_type), \
> +_##NAME(v130, glsl_type::ivec4_type,
> glsl_type::ivec4_type), \
>
> \
>  _##NAME(v130, glsl_type::uint_type,
> glsl_type::uint_type),  \
>  _##NAME(v130, glsl_type::uvec2_type,
> glsl_type::uint_type),  \
> @@ -1609,11 +1615,30 @@ builtin_builder::create_builtins()
> FD(sqrt)
> FD(inversesqrt)
> FI64(abs)
> -   FI64(sign)
> +
> +   add_function("sign",  \
> +_sign(always_available, glsl_type::float_type), \
> +_sign(always_available, glsl_type::vec2_type),  \
> +_sign(always_available, glsl_type::vec3_type),  \
> +_sign(always_available, glsl_type::vec4_type),  \
> +_sign(v150, glsl_type::int_type),   \
> +_sign(v150, glsl_type::ivec2_type), \
> +_sign(v150, glsl_type::ivec3_type), \
> +_sign(v150, glsl_type::ivec4_type), \
> +_sign(fp64, 

[Piglit] [PATCH] glsl: Correct several built-in functions availability

2018-10-31 Thread Vadym Shovkoplias
In GLSL versions 1.00 ES, 1.10 and 1.20, Mesa includes
some built-in functions which shouldn't be present in
that version, namely:

   genIType abs(genIType x)
   genIType sign(genIType x)
   genIType min(genIType x, genIType y)
   genIType min(genIType x, int y)
   genIType max(genIType x, genIType y)
   genIType max(genIType x, int y)
   genIType clamp(genIType x, genIType minVal, genIType maxVal)
   genIType clamp(genIType x, int minVal, int maxVal)
   genType trunc(genType x)
   genType round(genType x)
   genType roundEven(genType x)
   genType modf(genType x, out genType i)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108160
Signed-off-by: Vadym Shovkoplias 
---
 src/compiler/glsl/builtin_functions.cpp | 57 ++---
 1 file changed, 41 insertions(+), 16 deletions(-)

diff --git a/src/compiler/glsl/builtin_functions.cpp 
b/src/compiler/glsl/builtin_functions.cpp
index 5650365d1d..2b549312b5 100644
--- a/src/compiler/glsl/builtin_functions.cpp
+++ b/src/compiler/glsl/builtin_functions.cpp
@@ -144,6 +144,12 @@ v130(const _mesa_glsl_parse_state *state)
return state->is_version(130, 300);
 }
 
+static bool
+v150(const _mesa_glsl_parse_state *state)
+{
+   return state->is_version(150, 300);
+}
+
 static bool
 v130_desktop(const _mesa_glsl_parse_state *state)
 {
@@ -1439,10 +1445,10 @@ builtin_builder::create_builtins()
 _##NAME(always_available, glsl_type::vec2_type),  \
 _##NAME(always_available, glsl_type::vec3_type),  \
 _##NAME(always_available, glsl_type::vec4_type),  \
-_##NAME(always_available, glsl_type::int_type),   \
-_##NAME(always_available, glsl_type::ivec2_type), \
-_##NAME(always_available, glsl_type::ivec3_type), \
-_##NAME(always_available, glsl_type::ivec4_type), \
+_##NAME(v130, glsl_type::int_type),   \
+_##NAME(v130, glsl_type::ivec2_type), \
+_##NAME(v130, glsl_type::ivec3_type), \
+_##NAME(v130, glsl_type::ivec4_type), \
 _##NAME(fp64, glsl_type::double_type), \
 _##NAME(fp64, glsl_type::dvec2_type),  \
 _##NAME(fp64, glsl_type::dvec3_type),  \
@@ -1534,14 +1540,14 @@ builtin_builder::create_builtins()
 _##NAME(always_available, glsl_type::vec3_type,  
glsl_type::vec3_type),  \
 _##NAME(always_available, glsl_type::vec4_type,  
glsl_type::vec4_type),  \

  \
-_##NAME(always_available, glsl_type::int_type,   
glsl_type::int_type),   \
-_##NAME(always_available, glsl_type::ivec2_type, 
glsl_type::int_type),   \
-_##NAME(always_available, glsl_type::ivec3_type, 
glsl_type::int_type),   \
-_##NAME(always_available, glsl_type::ivec4_type, 
glsl_type::int_type),   \
+_##NAME(v130, glsl_type::int_type,   glsl_type::int_type),   \
+_##NAME(v130, glsl_type::ivec2_type, glsl_type::int_type),   \
+_##NAME(v130, glsl_type::ivec3_type, glsl_type::int_type),   \
+_##NAME(v130, glsl_type::ivec4_type, glsl_type::int_type),   \

  \
-_##NAME(always_available, glsl_type::ivec2_type, 
glsl_type::ivec2_type), \
-_##NAME(always_available, glsl_type::ivec3_type, 
glsl_type::ivec3_type), \
-_##NAME(always_available, glsl_type::ivec4_type, 
glsl_type::ivec4_type), \
+_##NAME(v130, glsl_type::ivec2_type, glsl_type::ivec2_type), \
+_##NAME(v130, glsl_type::ivec3_type, glsl_type::ivec3_type), \
+_##NAME(v130, glsl_type::ivec4_type, glsl_type::ivec4_type), \

  \
 _##NAME(v130, glsl_type::uint_type,  glsl_type::uint_type),
  \
 _##NAME(v130, glsl_type::uvec2_type, glsl_type::uint_type),
  \
@@ -1609,11 +1615,30 @@ builtin_builder::create_builtins()
FD(sqrt)
FD(inversesqrt)
FI64(abs)
-   FI64(sign)
+
+   add_function("sign",  \
+_sign(always_available, glsl_type::float_type), \
+_sign(always_available, glsl_type::vec2_type),  \
+_sign(always_available, glsl_type::vec3_type),  \
+_sign(always_available, glsl_type::vec4_type),  \
+_sign(v150, glsl_type::int_type),   \
+_sign(v150, glsl_type::ivec2_type), \
+_sign(v150, glsl_type::ivec3_type), \
+_sign(v150, glsl_type::ivec4_type), \
+_sign(fp64, glsl_type::double_type), \
+_sign(fp64, glsl_type::dvec2_type),  \
+_sign(fp64, 

[Piglit] [Bug 108612] The spec@arb_program_interface_query@arb_program_interface_query-getprogramresourceiv fails

2018-10-31 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=108612

--- Comment #1 from asimiklit  ---
The possible solution:
https://patchwork.freedesktop.org/patch/259513/

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


[Piglit] [PATCH] program_interface_query: don't expect a valid location for TCS output

2018-10-31 Thread asimiklit . work
From: Andrii Simiklit 

I guess we should not expect a valid location for:
"patch out vec4 tcs_patch;"
because this output variable is declareted
without "layout (location=X)" and according to spec:
   "Not all active variables are assigned valid locations; the
following variables will have an effective location of -1:

  * uniforms declared as atomic counters;

  * members of a uniform block;

  * built-in inputs, outputs, and uniforms (starting with "gl_"); and

  * inputs or outputs not declared with a "location" layout qualifier,
except for vertex shader inputs and fragment shader outputs."

Also I fixed some conflicting comments.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108612
Signed-off-by: Andrii Simiklit 
---
 .../getprogramresourceiv.c   | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/tests/spec/arb_program_interface_query/getprogramresourceiv.c 
b/tests/spec/arb_program_interface_query/getprogramresourceiv.c
index 2727a6c87..70212350e 100755
--- a/tests/spec/arb_program_interface_query/getprogramresourceiv.c
+++ b/tests/spec/arb_program_interface_query/getprogramresourceiv.c
@@ -360,7 +360,7 @@ static const struct subtest_t subtests[] = {
{ GL_REFERENCED_BY_GEOMETRY_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_FRAGMENT_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_COMPUTE_SHADER, 1, { 0 } },
-   { GL_LOCATION, 1, { -1 } }, /* valid index == anything but -1 */
+   { GL_LOCATION, 1, { -1 } }, /* invalid index */
{ 0, 0, { 0 } }}
  },
  { _loc, GL_PROGRAM_INPUT, "input0", NULL, {
@@ -396,12 +396,12 @@ static const struct subtest_t subtests[] = {
{ GL_NAME_LENGTH, 1, { 6 } },
{ GL_TYPE, 1, { GL_FLOAT_VEC4 } },
{ GL_ARRAY_SIZE, 1, { 1 } },
-   { GL_OFFSET, 1, { -1 } }, /* valid index == anything but -1 */
+   { GL_OFFSET, 1, { -1 } }, /* invalid index */
{ GL_BLOCK_INDEX, 1, { -1 } }, /* invalid index */
-   { GL_ARRAY_STRIDE, 1, { -1 } }, /* valid index == anything but -1 */
+   { GL_ARRAY_STRIDE, 1, { -1 } }, /* invalid index */
{ GL_MATRIX_STRIDE, 1, { -1 } },
{ GL_IS_ROW_MAJOR, 1, { 0 } },
-   { GL_ATOMIC_COUNTER_BUFFER_INDEX, 1, { -1 } }, /* valid index == 
anything but -1 */
+   { GL_ATOMIC_COUNTER_BUFFER_INDEX, 1, { -1 } }, /* invalid index */
{ GL_REFERENCED_BY_VERTEX_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_TESS_CONTROL_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_TESS_EVALUATION_SHADER, 1, { 0 } },
@@ -421,8 +421,8 @@ static const struct subtest_t subtests[] = {
{ GL_REFERENCED_BY_GEOMETRY_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_FRAGMENT_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_COMPUTE_SHADER, 1, { 0 } },
-   { GL_LOCATION, 1, { 0 } }, /* valid index == anything but -1 */
-   { GL_LOCATION_INDEX, 1, { -1 } }, /* valid index == anything but -1 */
+   { GL_LOCATION, 1, { -1 } }, /* invalid index */
+   { GL_LOCATION_INDEX, 1, { -1 } }, /* invalid index */
{ GL_IS_PER_PATCH, 1, { 1 } },
{ 0, 0, { 0 } }}
 },
@@ -435,14 +435,14 @@ static const struct subtest_t subtests[] = {
{ GL_ARRAY_STRIDE, 1, { 0 } }, /* valid index == anything but -1 */
{ GL_MATRIX_STRIDE, 1, { 0 } },
{ GL_IS_ROW_MAJOR, 1, { 0 } },
-   { GL_ATOMIC_COUNTER_BUFFER_INDEX, 1, { -1 } }, /* valid index == 
anything but -1 */
+   { GL_ATOMIC_COUNTER_BUFFER_INDEX, 1, { -1 } }, /* invalid index */
{ GL_REFERENCED_BY_VERTEX_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_TESS_CONTROL_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_TESS_EVALUATION_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_GEOMETRY_SHADER, 1, { 0 } },
{ GL_REFERENCED_BY_FRAGMENT_SHADER, 1, { 1 } },
{ GL_REFERENCED_BY_COMPUTE_SHADER, 1, { 0 } },
-   { GL_LOCATION, 1, { -1 } }, /* valid index == anything but -1 */
+   { GL_LOCATION, 1, { -1 } }, /* invalid index */
{ 0, 0, { 0 } }}
  },
  { _std, GL_UNIFORM_BLOCK, "fs_uniform_block", fs_std_fs_uniform_blk, {
-- 
2.17.1

___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


[Piglit] [Bug 108612] New: The spec@arb_program_interface_query@arb_program_interface_query-getprogramresourceiv fails

2018-10-31 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=108612

Bug ID: 108612
   Summary: The
spec@arb_program_interface_query@arb_program_interface
_query-getprogramresourceiv fails
   Product: piglit
   Version: unspecified
  Hardware: Other
OS: All
Status: NEW
  Severity: normal
  Priority: medium
 Component: tests
  Assignee: piglit@lists.freedesktop.org
  Reporter: andrey.simik...@gmail.com
QA Contact: piglit@lists.freedesktop.org

I guess this piglit test fails because we require a valid location for TCS
output which is declared without "layout (location=X)"
but according to spec:

"Not all active variables are assigned valid locations; the
 following variables will have an effective location of -1:

  * uniforms declared as atomic counters;

  * members of a uniform block;

  * built-in inputs, outputs, and uniforms (starting with "gl_"); and

  * inputs or outputs not declared with a "location" layout qualifier,
except for vertex shader inputs and fragment shader outputs."

I will provide the possible solution shortly.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH] glsl/frexp: fix the incorrect expected values

2018-10-31 Thread andrey simiklit
Hello,

Could you please help me with a push.

Thanks,
Andrii.

On Fri, Oct 26, 2018 at 5:50 PM andrey simiklit 
wrote:

> Hello,
>
> Thanks a lot for reviewing.
>
> Regards,
> Andrii.
>
> On Fri, Oct 26, 2018 at 3:23 PM Haehnle, Nicolai 
> wrote:
>
>> On 24.10.18 14:52, asimiklit.w...@gmail.com wrote:
>> > From: Andrii Simiklit 
>> >
>> > I guess that this test has the incorrect expected values.
>> > For instance the test expects that exponent for a value 2 will be 1
>> > But it contradicts to spec because in this case
>> > the value of 'significand' must be 1.0:
>> > 2.0 = 1.0 * 2 ^ 1
>> >
>> > GLSL spec says (about 'frexp'):
>> >"Splits x into a floating-point significand in the range
>> > [0.5, 1.0) and an integral exponent of two, such that:
>> >
>> >x = significand * 2 ^ exponent
>> >
>> > The significand is returned by the function and the
>> > exponent is returned in the parameter exp. For a
>> > floating-point value of zero, the significant and exponent
>> > are both zero. For a floating-point value that is an
>> > infinity or is not a number, the results are undefined.
>>
>> You're absolutely right. It seems like radeonsi is currently passing
>> this incorrectly, because a bunch of other things surrounding frexp are
>> broken.
>>
>> The test change is correct.
>>
>> Reviewed-by: Nicolai Hähnle 
>>
>> >
>> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108537
>> > Signed-off-by: Andrii Simiklit 
>> > ---
>> >   .../fs-frexp-dvec4-only-exponent.shader_test| 13 -
>> >   1 file changed, 12 insertions(+), 1 deletion(-)
>> >
>> > diff --git
>> a/tests/spec/arb_gpu_shader_fp64/execution/built-in-functions/fs-frexp-dvec4-only-exponent.shader_test
>> b/tests/spec/arb_gpu_shader_fp64/execution/built-in-functions/fs-frexp-dvec4-only-exponent.shader_test
>> > index d7dc64032..c4a7555ff 100644
>> > ---
>> a/tests/spec/arb_gpu_shader_fp64/execution/built-in-functions/fs-frexp-dvec4-only-exponent.shader_test
>> > +++
>> b/tests/spec/arb_gpu_shader_fp64/execution/built-in-functions/fs-frexp-dvec4-only-exponent.shader_test
>> > @@ -31,7 +31,18 @@ clear color 0 0 0 1
>> >   clear
>> >
>> >   uniform dvec4 u_in 2 3 4 9
>> > -uniform ivec4 u_exponent 1 1 2 3
>> > +
>> > +# The function frexp() splits each single-precision floating-point
>> number in
>> > +#  into a binary significand, a floating-point number in the range
>> [0.5,
>> > +# 1.0), and an integral exponent of two, such that:
>> > +#
>> > +#x = significand * 2 ^ exponent
>> > +#
>> > +# 2 = 0.5 * 2^2
>> > +# 3 = 0.75 * 2^2
>> > +# 4 = 0.5 * 2^3
>> > +# 9 = 0.5625 * 2^4
>> > +uniform ivec4 u_exponent 2 2 3 4
>> >
>> >   draw rect -1 -1 2 2
>> >   probe all rgba 0 1 0 1
>> >
>>
>>
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit