
    ܙd                         d dl Z	 d dlZdZn# e$ r dZY nw xY wd dlmZmZ d dlm	Z	m
Z
mZmZ  ej        ed           e	d           G d d	e                                  Zed
k    r ej                     dS dS )    NTF)cudatypes)skip_on_cudasimtest_data_dirunittestCUDATestCasez
Needs CFFIz"Simulator does not support linkingc                       e Zd Zd ZdS )TestCFFIc                    t          j                    t          t          dz            }t	          j        t	          j        t          j                            }t          j	        d|          t          j
        |g          fd            }t          j        d                              t          j                  } |d         |           |                     |d         |d                    d S )	Nzjitlink.ptxarray_mutator)linkc                 H                         |           } |           d S )N)from_buffer)xx_ptrr   ffis     Alib/python3.11/site-packages/numba/cuda/tests/cudapy/test_cffi.pymutate_arrayz/TestCFFI.test_from_buffer.<locals>.mutate_array   s*    OOA&&EM%            )   r   r   r   )cffiFFIstrr   r   voidCPointerint32r   declare_devicejitnparangeastypeassertEqual)selfr   sigr   r   r   r   s        @@r   test_from_bufferzTestCFFI.test_from_buffer   s    hjj==011j4455+OSAA	v				! 	! 	! 	! 	! 
		! IaLL))T1 	1qt$$$$$r   N)__name__
__module____qualname__r&    r   r   r
   r
      s#        % % % % %r   r
   __main__)numpyr    r   
_have_cffiImportErrornumbar   r   numba.cuda.testingr   r   r   r   
skipUnlessr
   r'   mainr*   r   r   <module>r3      s"      KKKJJ   JJJ        . . . . . . . . . . . . Z..566% % % % %| % % 76 /.%( zHMOOOOO s    