
    xKg                         d dl Zd dlmZmZ d dlmZmZmZm	Z	 d dl
mZ e ed       G d de	                    Zedk(  r ej                          yy)	    N)cudatypes)skip_on_cudasimtest_data_dirunittestCUDATestCase)skip_unless_cffiz"Simulator does not support linkingc                       e Zd Zd Zy)TestCFFIc                    dd l }|j                         t        t        dz        }t	        j
                  t	        j                  t        j                              }t        j                  d|      t        j                  |g      fd       }t        j                  d      j                  t        j                        } |d   |       | j                  |d   |d          y )	Nr   zjitlink.ptxarray_mutator)linkc                 8    j                  |       } |       y )N)from_buffer)xx_ptrr   ffis     e/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/numba/cuda/tests/cudapy/test_cffi.pymutate_arrayz/TestCFFI.test_from_buffer.<locals>.mutate_array   s    OOA&E%        )   r   r   )cffiFFIstrr   r   voidCPointerint32r   declare_devicejitnparangeastypeassertEqual)selfr   r   sigr   r   r   r   s         @@r   test_from_bufferzTestCFFI.test_from_buffer   s    hhj==01jj45++OSA	v		! 
	! IIaL)T1 	1qt$r   N)__name__
__module____qualname__r'    r   r   r   r   	   s    %r   r   __main__)numpyr!   numbar   r   numba.cuda.testingr   r   r   r   numba.tests.supportr	   r   r(   mainr+   r   r   <module>r2      s[     . . 0 56%| % 7 %* zHMMO r   