U
    hâËdé  ã                   @   sH   d dl Zd dlmZ d dlmZmZ G dd„ deƒZedkrDe 	¡  dS )é    N)Úcuda)ÚunittestÚCUDATestCasec                   @   s   e Zd Zdd„ ZdS )ÚTestFreeVarc                    sL   ddl m} d‰|‰ t d¡‡ ‡fdd„ƒ}tjddd	�}|d
 |dƒ dS )zrMake sure we can compile the following kernel with freevar reference
        in arguments to shared.array
        r   )Úfloat32i   z(float32[::1], intp)c                    s    t jjˆˆ d�}|| | |< dS )zDummy function©ZdtypeN)r   ZsharedÚarray)ÚAÚiZsdata©ZnbtypeÚsize© ú]/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/numba/cuda/tests/cudapy/test_freevar.pyÚfoo   s    ÿz%TestFreeVar.test_freevar.<locals>.fooé   r   r   )é   r   N)Únumbar   r   ZjitÚnpZarange)Úselfr   r   r	   r   r   r   Útest_freevar   s    zTestFreeVar.test_freevarN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s   r   Ú__main__)
Únumpyr   r   r   Znumba.cuda.testingr   r   r   r   Úmainr   r   r   r   Ú<module>   s
   