[Piglit] [PATCH 4/5] cl: Add isnotequal(float, float) relational tests

2014-06-11 Thread Aaron Watry
Signed-off-by: Aaron Watry 
---
 generated_tests/generate-cl-relational-builtins.py | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/generated_tests/generate-cl-relational-builtins.py 
b/generated_tests/generate-cl-relational-builtins.py
index 97e6be6..f22f5d1 100644
--- a/generated_tests/generate-cl-relational-builtins.py
+++ b/generated_tests/generate-cl-relational-builtins.py
@@ -32,7 +32,8 @@ from genclbuiltins import gen, TRUE
 CLC_VERSION_MIN = {
 'isnan' : 10,
 'isgreater' : 10,
-'isgreaterequal' : 10
+'isgreaterequal' : 10,
+'isnotequal' : 10,
 }
 
 DATA_TYPES = ['float']
@@ -71,6 +72,15 @@ tests = {
 [0.0,  float("nan"), 1.0,  1,float("nan"), 
float("inf"), 1.0,  0.5 ], # Arg0
 [0.0,  float("nan"), 1.0,  float("nan"), 1,
float("inf"), 0.5,  1.0 ]  # Arg1
 ]
+},
+'isnotequal' : {
+'arg_types': [I, F, F],
+'function_type': 'ttt',
+'values': [
+[0,TRUE, 0,TRUE, TRUE, 0,  
  TRUE, TRUE],# Result
+[0.0,  float("nan"), 1.0,  1,float("nan"), 
float("inf"), 1.0,  0.5 ], # Arg0
+[0.0,  float("nan"), 1.0,  float("nan"), 1,
float("inf"), 0.5,  1.0 ]  # Arg1
+]
 }
 }
 
-- 
1.9.1

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


Re: [Piglit] [PATCH 4/5] cl: Add isnotequal(float, float) relational tests

2014-06-12 Thread Tom Stellard
On Wed, Jun 11, 2014 at 02:14:14PM -0500, Aaron Watry wrote:
> Signed-off-by: Aaron Watry 
> ---
>  generated_tests/generate-cl-relational-builtins.py | 12 +++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/generated_tests/generate-cl-relational-builtins.py 
> b/generated_tests/generate-cl-relational-builtins.py
> index 97e6be6..f22f5d1 100644
> --- a/generated_tests/generate-cl-relational-builtins.py
> +++ b/generated_tests/generate-cl-relational-builtins.py
> @@ -32,7 +32,8 @@ from genclbuiltins import gen, TRUE
>  CLC_VERSION_MIN = {
>  'isnan' : 10,
>  'isgreater' : 10,
> -'isgreaterequal' : 10
> +'isgreaterequal' : 10,
> +'isnotequal' : 10,
>  }
>  
>  DATA_TYPES = ['float']
> @@ -71,6 +72,15 @@ tests = {
>  [0.0,  float("nan"), 1.0,  1,float("nan"), 
> float("inf"), 1.0,  0.5 ], # Arg0
>  [0.0,  float("nan"), 1.0,  float("nan"), 1,
> float("inf"), 0.5,  1.0 ]  # Arg1
>  ]
> +},
> +'isnotequal' : {
> +'arg_types': [I, F, F],
> +'function_type': 'ttt',
> +'values': [
> +[0,TRUE, 0,TRUE, TRUE, 0,
> TRUE, TRUE],# Result

I think comparisons involving nan are always false, so the three nan
cases should be changed to 0.  You might want to double check this,
though.

-Tom

> +[0.0,  float("nan"), 1.0,  1,float("nan"), 
> float("inf"), 1.0,  0.5 ], # Arg0
> +[0.0,  float("nan"), 1.0,  float("nan"), 1,
> float("inf"), 0.5,  1.0 ]  # Arg1
> +]
>  }
>  }
>  
> -- 
> 1.9.1
> 
___
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH 4/5] cl: Add isnotequal(float, float) relational tests

2014-06-13 Thread Bruno Jimenez
On Thu, 2014-06-12 at 19:32 -0400, Tom Stellard wrote:
> On Wed, Jun 11, 2014 at 02:14:14PM -0500, Aaron Watry wrote:
> > Signed-off-by: Aaron Watry 
> > ---
> >  generated_tests/generate-cl-relational-builtins.py | 12 +++-
> >  1 file changed, 11 insertions(+), 1 deletion(-)
> > 
> > diff --git a/generated_tests/generate-cl-relational-builtins.py 
> > b/generated_tests/generate-cl-relational-builtins.py
> > index 97e6be6..f22f5d1 100644
> > --- a/generated_tests/generate-cl-relational-builtins.py
> > +++ b/generated_tests/generate-cl-relational-builtins.py
> > @@ -32,7 +32,8 @@ from genclbuiltins import gen, TRUE
> >  CLC_VERSION_MIN = {
> >  'isnan' : 10,
> >  'isgreater' : 10,
> > -'isgreaterequal' : 10
> > +'isgreaterequal' : 10,
> > +'isnotequal' : 10,
> >  }
> >  
> >  DATA_TYPES = ['float']
> > @@ -71,6 +72,15 @@ tests = {
> >  [0.0,  float("nan"), 1.0,  1,float("nan"), 
> > float("inf"), 1.0,  0.5 ], # Arg0
> >  [0.0,  float("nan"), 1.0,  float("nan"), 1,
> > float("inf"), 0.5,  1.0 ]  # Arg1
> >  ]
> > +},
> > +'isnotequal' : {
> > +'arg_types': [I, F, F],
> > +'function_type': 'ttt',
> > +'values': [
> > +[0,TRUE, 0,TRUE, TRUE, 0,  
> >   TRUE, TRUE],# Result
> 
> I think comparisons involving nan are always false, so the three nan
> cases should be changed to 0.  You might want to double check this,
> though.

Hi,

That's not entirely true, there's an exception here (too many exceptions
i'm finding in this language) According to the spec for OpenCL 1.2
section 6.12.6 "Relational Functions"

"The relational functions isequal, isgreater, isgreaterequal, isless,
islessequal, and islessgreater always return 0 if either argument is not
a number (NAN) [ok here]. isnotequal returns 1 if one or both arguments
are not a number (NAN) and the argument type is a scalar and returns -1
if one or both arguments are not a number (NAN) and the argument type is
a vector. [exceptions...]"

Bruno
> 
> -Tom
> 
> > +[0.0,  float("nan"), 1.0,  1,float("nan"), 
> > float("inf"), 1.0,  0.5 ], # Arg0
> > +[0.0,  float("nan"), 1.0,  float("nan"), 1,
> > float("inf"), 0.5,  1.0 ]  # Arg1
> > +]
> >  }
> >  }
> >  
> > -- 
> > 1.9.1
> > 
> ___
> Piglit mailing list
> Piglit@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/piglit


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


Re: [Piglit] [PATCH 4/5] cl: Add isnotequal(float, float) relational tests

2014-06-17 Thread Aaron Watry
On Fri, Jun 13, 2014 at 3:52 AM, Bruno Jimenez  wrote:
> On Thu, 2014-06-12 at 19:32 -0400, Tom Stellard wrote:
>> On Wed, Jun 11, 2014 at 02:14:14PM -0500, Aaron Watry wrote:
>> > Signed-off-by: Aaron Watry 
>> > ---
>> >  generated_tests/generate-cl-relational-builtins.py | 12 +++-
>> >  1 file changed, 11 insertions(+), 1 deletion(-)
>> >
>> > diff --git a/generated_tests/generate-cl-relational-builtins.py 
>> > b/generated_tests/generate-cl-relational-builtins.py
>> > index 97e6be6..f22f5d1 100644
>> > --- a/generated_tests/generate-cl-relational-builtins.py
>> > +++ b/generated_tests/generate-cl-relational-builtins.py
>> > @@ -32,7 +32,8 @@ from genclbuiltins import gen, TRUE
>> >  CLC_VERSION_MIN = {
>> >  'isnan' : 10,
>> >  'isgreater' : 10,
>> > -'isgreaterequal' : 10
>> > +'isgreaterequal' : 10,
>> > +'isnotequal' : 10,
>> >  }
>> >
>> >  DATA_TYPES = ['float']
>> > @@ -71,6 +72,15 @@ tests = {
>> >  [0.0,  float("nan"), 1.0,  1,float("nan"), 
>> > float("inf"), 1.0,  0.5 ], # Arg0
>> >  [0.0,  float("nan"), 1.0,  float("nan"), 1,
>> > float("inf"), 0.5,  1.0 ]  # Arg1
>> >  ]
>> > +},
>> > +'isnotequal' : {
>> > +'arg_types': [I, F, F],
>> > +'function_type': 'ttt',
>> > +'values': [
>> > +[0,TRUE, 0,TRUE, TRUE, 0, 
>> >TRUE, TRUE],# Result
>>
>> I think comparisons involving nan are always false, so the three nan
>> cases should be changed to 0.  You might want to double check this,
>> though.
>
> Hi,
>
> That's not entirely true, there's an exception here (too many exceptions
> i'm finding in this language) According to the spec for OpenCL 1.2
> section 6.12.6 "Relational Functions"
>
> "The relational functions isequal, isgreater, isgreaterequal, isless,
> islessequal, and islessgreater always return 0 if either argument is not
> a number (NAN) [ok here]. isnotequal returns 1 if one or both arguments
> are not a number (NAN) and the argument type is a scalar and returns -1
> if one or both arguments are not a number (NAN) and the argument type is
> a vector. [exceptions...]"
>
> Bruno

Yeah, Bruno beat me to it.  isnotequal is different from the other
relational functions with respect to NAN reporting.

We good with this one?

--Aaron

>>
>> -Tom
>>
>> > +[0.0,  float("nan"), 1.0,  1,float("nan"), 
>> > float("inf"), 1.0,  0.5 ], # Arg0
>> > +[0.0,  float("nan"), 1.0,  float("nan"), 1,
>> > float("inf"), 0.5,  1.0 ]  # Arg1
>> > +]
>> >  }
>> >  }
>> >
>> > --
>> > 1.9.1
>> >
>> ___
>> Piglit mailing list
>> Piglit@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/piglit
>
>
___
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH 4/5] cl: Add isnotequal(float, float) relational tests

2014-06-17 Thread Tom Stellard
On Tue, Jun 17, 2014 at 08:45:03AM -0500, Aaron Watry wrote:
> On Fri, Jun 13, 2014 at 3:52 AM, Bruno Jimenez  wrote:
> > On Thu, 2014-06-12 at 19:32 -0400, Tom Stellard wrote:
> >> On Wed, Jun 11, 2014 at 02:14:14PM -0500, Aaron Watry wrote:
> >> > Signed-off-by: Aaron Watry 
> >> > ---
> >> >  generated_tests/generate-cl-relational-builtins.py | 12 +++-
> >> >  1 file changed, 11 insertions(+), 1 deletion(-)
> >> >
> >> > diff --git a/generated_tests/generate-cl-relational-builtins.py 
> >> > b/generated_tests/generate-cl-relational-builtins.py
> >> > index 97e6be6..f22f5d1 100644
> >> > --- a/generated_tests/generate-cl-relational-builtins.py
> >> > +++ b/generated_tests/generate-cl-relational-builtins.py
> >> > @@ -32,7 +32,8 @@ from genclbuiltins import gen, TRUE
> >> >  CLC_VERSION_MIN = {
> >> >  'isnan' : 10,
> >> >  'isgreater' : 10,
> >> > -'isgreaterequal' : 10
> >> > +'isgreaterequal' : 10,
> >> > +'isnotequal' : 10,
> >> >  }
> >> >
> >> >  DATA_TYPES = ['float']
> >> > @@ -71,6 +72,15 @@ tests = {
> >> >  [0.0,  float("nan"), 1.0,  1,float("nan"), 
> >> > float("inf"), 1.0,  0.5 ], # Arg0
> >> >  [0.0,  float("nan"), 1.0,  float("nan"), 1,
> >> > float("inf"), 0.5,  1.0 ]  # Arg1
> >> >  ]
> >> > +},
> >> > +'isnotequal' : {
> >> > +'arg_types': [I, F, F],
> >> > +'function_type': 'ttt',
> >> > +'values': [
> >> > +[0,TRUE, 0,TRUE, TRUE, 0,   
> >> >  TRUE, TRUE],# Result
> >>
> >> I think comparisons involving nan are always false, so the three nan
> >> cases should be changed to 0.  You might want to double check this,
> >> though.
> >
> > Hi,
> >
> > That's not entirely true, there's an exception here (too many exceptions
> > i'm finding in this language) According to the spec for OpenCL 1.2
> > section 6.12.6 "Relational Functions"
> >
> > "The relational functions isequal, isgreater, isgreaterequal, isless,
> > islessequal, and islessgreater always return 0 if either argument is not
> > a number (NAN) [ok here]. isnotequal returns 1 if one or both arguments
> > are not a number (NAN) and the argument type is a scalar and returns -1
> > if one or both arguments are not a number (NAN) and the argument type is
> > a vector. [exceptions...]"
> >
> > Bruno
> 
> Yeah, Bruno beat me to it.  isnotequal is different from the other
> relational functions with respect to NAN reporting.
> 
> We good with this one?
> 

Yes, feel free to commit.

-Tom

> --Aaron
> 
> >>
> >> -Tom
> >>
> >> > +[0.0,  float("nan"), 1.0,  1,float("nan"), 
> >> > float("inf"), 1.0,  0.5 ], # Arg0
> >> > +[0.0,  float("nan"), 1.0,  float("nan"), 1,
> >> > float("inf"), 0.5,  1.0 ]  # Arg1
> >> > +]
> >> >  }
> >> >  }
> >> >
> >> > --
> >> > 1.9.1
> >> >
> >> ___
> >> Piglit mailing list
> >> Piglit@lists.freedesktop.org
> >> http://lists.freedesktop.org/mailman/listinfo/piglit
> >
> >
___
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit