bug using arrays in kernels

in my .cl code I declare
[font=“Courier New”]typedef struct{ float v[128]; } dataset_param;[/font]
then in my kernel argument function I declare
[font=“Courier New”]const dataset_param ds,[/font]
and access it in statement like
[font=“Courier New”]ds.v[ index ];[/font]

I checked the values of index in different ways and they are correct
but ds.v[ index ] is wrong for index < 64
if I force index to a fix value before using it in my kernel with a
[font=“Courier New”]index = value;[/font]
value in [0-127] the result is correct.
To sum up dynamic access to my array don’t work for part of it.

this behavior appear around 265 driver serie and is still in all the instance I tried since.
I checked only on quadro series for now (FX 3700 M and FX 5800 for now.
same untouched kernels and executable work fine on AMD/Ati Graphic boards
this look like a driver bug

any ideas ?