
    sh                         S SK rS SKJrJr  S SKJrJrJrJ	r	  S SK
Jr  \\" S5       " S S\	5      5       5       r\S:X  a  \R                  " 5         gg)	    N)cudatypes)skip_on_cudasimtest_data_dirunittestCUDATestCase)skip_unless_cffiz"Simulator does not support linkingc                       \ rS rSrS rSrg)TestCFFI	   c                   ^^ SS K nUR                  5       m[        [        S-  5      n[        R
                  " [        R                  " [        R                  5      5      n[        R                  " SU5      m[        R                  " U/S9UU4S j5       n[        R                  " S5      R                  [        R                  5      nUS   " U5        U R                  US   US   5        g )	Nr   zjitlink.ptxarray_mutator)linkc                 8   > TR                  U 5      nT" U5        g )N)from_buffer)xx_ptrr   ffis     u/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/cuda/tests/cudapy/test_cffi.pymutate_array/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_buffer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____firstlineno__r)   __static_attributes__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>r7      sY     . . 0 56%| % 7 %* zMMO r   