i have this method: void b_bisect( struct _intervalo *destino1, struct _intervalo *destino2, struct _intervalo *origem) that is in a file outside of kernel.
Inside kernel i have the call b_bisect(&caixa,&caixa2,caixa);
Inside of b_bisect some operations modify some variables of struct, but when back to kernel, caixa and caixa2 continue with old values, don't modifies after b_bisect execute.
This occurs only in GPU, in CPU runs ok. Since i use AMD in CPU and GPU, the same SDK.