[Piglit] [PATCH 07/10] cl: Add test for negative index + small offset for private

Matt Arsenault arsenm2 at gmail.com
Thu Dec 8 19:47:51 UTC 2016


> On Dec 7, 2016, at 11:03, Jan Vesely <jan.vesely at rutgers.edu> wrote:
> 
> On Tue, 2016-12-06 at 11:05 -0800, Matt Arsenault wrote:
>>> On Dec 6, 2016, at 11:04, Jan Vesely <jan.vesely at rutgers.edu> wrote:
>>> 
>>> On Tue, 2016-12-06 at 10:52 -0800, Matt Arsenault wrote:
>>>>> On Dec 5, 2016, at 12:42, Jan Vesely <jan.vesely at rutgers.edu> wrote:
>>>>> 
>>>>> On Mon, 2016-12-05 at 09:48 -0800, arsenm2 at gmail.com <mailto:arsenm2 at gmail.com> wrote:
>>>>>> From: Matt Arsenault <arsenm2 at gmail.com>
>>>>>> 
>>>>>> ---
>>>>>> .../execute/negative-private-base-pointer.cl       | 120 +++++++++++++++++++++
>>>>>> 1 file changed, 120 insertions(+)
>>>>>> create mode 100644 tests/cl/program/execute/negative-private-base-pointer.cl
>>>>>> 
>>>>>> diff --git a/tests/cl/program/execute/negative-private-base-pointer.cl b/tests/cl/program/execute/negative-private-base-pointer.cl
>>>>>> new file mode 100644
>>>>>> index 0000000..7ee528b
>>>>>> --- /dev/null
>>>>>> +++ b/tests/cl/program/execute/negative-private-base-pointer.cl
>>>>>> @@ -0,0 +1,120 @@
>>>>>> +/*!
>>>>>> +[config]
>>>>>> +name: negative private buffer base index
>>>>>> +clc_version_min: 10
>>>>>> +dimensions: 1
>>>>>> +
>>>>>> +[test]
>>>>>> +kernel_name: read_write_private_base_plus_offset
>>>>>> +name: negative base private index
>>>>>> +global_size: 1 0 0
>>>>>> +
>>>>>> +arg_out: 0 buffer int[16]  \
>>>>>> +  0xab       \
>>>>>> +  0xbc       \
>>>>>> +  0xabcd     \
>>>>>> +  0xdead     \
>>>>>> +             \
>>>>>> +  0xcafe     \
>>>>>> +  0xf00d     \
>>>>>> +  0xababfeed \
>>>>>> +  0xca00fe   \
>>>>>> +             \
>>>>>> +  0xb00feed  \
>>>>>> +  0xca00fe   \
>>>>>> +  0xfeedbeef \
>>>>>> +  0xfe       \
>>>>>> +             \
>>>>>> +  0xbe00fe   \
>>>>>> +  0xabcdef   \
>>>>>> +  0xbeef     \
>>>>>> +  0xde
>>>>>> +
>>>>>> +
>>>>>> +arg_in: 1 buffer int[16] \
>>>>>> +    -1 \
>>>>>> +    -1 \
>>>>>> +    -4 \
>>>>>> +    -4 \
>>>>>> +       \
>>>>>> +    -3 \
>>>>>> +    -4 \
>>>>>> +    -2 \
>>>>>> +  -115 \
>>>>>> +       \
>>>>>> +  -109 \
>>>>>> + -1015 \
>>>>>> + -1011 \
>>>>>> + -1020 \
>>>>>> +       \
>>>>>> + -1014 \
>>>>>> +  -137 \
>>>>>> +  -151 \
>>>>>> +   -40
>>>>>> +
>>>>>> +!*/
>>>>>> +
>>>>>> +#if 0
>>>>>> +  0xab   \
>>>>>> +  0xbc   \
>>>>>> +  0xf00d \
>>>>>> +  0xdead \
>>>>>> +  0xcafe \
>>>>>> +  0xabcd \
>>>>>> +  0xababfeed \
>>>>>> +  0xca00fe   \
>>>>>> +  0xb00feed  \
>>>>>> +  0xca00fe   \
>>>>>> +  0xfeedbeef \
>>>>>> +  0xfe       \
>>>>>> +  0xbe00fe   \
>>>>>> +  0xabcdef   \
>>>>>> +  0xbeef     \
>>>>>> +  0xde
>>>>>> +#endif
>>>>>> +
>>>>>> +kernel void read_write_private_base_plus_offset(global int* out, global int* in)
>>>>>> +{
>>>>>> +    volatile int alloca[16];
>>>>> 
>>>>> does this need to be volatile?
>>>>> 
>>>>> other than that:
>>>>> Reviewed-by: Jan Vesely <jan.vesely at rutgers.edu <mailto:jan.vesely at rutgers.edu>>
>>>>> 
>>>>> Jan
>>>> 
>>>> Yes, otherwise the private memory access will be trivially optimized
>>>> out defeating the point of the test
>>> 
>>> I don't get the trivial part. what would that be optimized to? the
>>> indices are using values from input buffer (therefore unknown), so it
>>> cannot directly match the constants to corresponding position in out
>>> buffer.
>>> 
>>> Jan
>> 
>> This could be replaced with a series of selects or hit the move to LDS optimization 
> 
> right, thanks. I didn't consider move to LDS.
> 
> last question. what's the purpose of that #if 0 block?
> 
> Jan


I think it was just other values I was going to test but then never finished them
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/piglit/attachments/20161208/33ee87d4/attachment.html>


More information about the Piglit mailing list