o
    ¦¸¢id  ã                   @   s˜   d Z ddd„Zddd„Zddd„Zdd	„ Zdd
d„ZG dd„ deƒZeƒ ZG dd„ dƒZ	G dd„ de
ƒZG dd„ de
ƒZG dd„ de
ƒZdd„ ZdZdS )zy
Most of the driver API is unsupported in the simulator, but some stubs are
provided to allow tests to import correctly.
é    c                 C   s&   |   d¡d |…  t|gƒd ¡ d S )NÚu1r   )ÚviewÚfillÚbytes)ÚdstÚvalÚsizeÚstream© r
   úa/home/ubuntu/transcripts/venv/lib/python3.10/site-packages/numba/cuda/simulator/cudadrv/driver.pyÚdevice_memset   s   &r   c                 C   s$   |  d¡d |… |   d¡d |…< d S )Nr   )r   ©r   Úsrcr   r	   r
   r
   r   Úhost_to_device   s   $r   c                 C   ó   t | ||ƒ d S ©N©r   r   r
   r
   r   Údevice_to_host   ó   r   c                 C   s   | j | j S r   )Úitemsizer   )Úobjr
   r
   r   Údevice_memory_size   s   r   c                 C   r   r   r   r   r
   r
   r   Údevice_to_device   r   r   c                   @   s   e Zd Zdd„ ZdS )Ú
FakeDriverc                 C   ó   dS )Né   r
   ©Úselfr
   r
   r   Úget_device_count   s   zFakeDriver.get_device_countN)Ú__name__Ú
__module__Ú__qualname__r   r
   r
   r
   r   r      s    r   c                   @   s&   e Zd Zeddd„ƒZedd„ ƒZdS )	ÚLinkerr   FNc                 C   s   t ƒ S r   )r"   )ÚclsÚmax_registersÚlineinfoÚccr
   r
   r   Únew$   s   z
Linker.newc                 C   r   )NFr
   r   r
   r
   r   Últo(   s   z
Linker.lto)r   FN)r   r    r!   Úclassmethodr'   Úpropertyr(   r
   r
   r
   r   r"   #   s
    r"   c                   @   ó   e Zd ZdS )ÚLinkerErrorN©r   r    r!   r
   r
   r
   r   r,   -   ó    r,   c                   @   r+   )Ú
NvrtcErrorNr-   r
   r
   r
   r   r/   1   r.   r/   c                   @   r+   )ÚCudaAPIErrorNr-   r
   r
   r
   r   r0   5   r.   r0   c                  O   s   d}t |ƒ‚)Nz<Launching kernels directly is not supported in the simulator)ÚRuntimeError)ÚargsÚkwargsÚmsgr
   r
   r   Úlaunch_kernel9   s   r5   FN)r   )Ú__doc__r   r   r   r   r   Úobjectr   Údriverr"   r1   r,   r/   r0   r5   ÚUSE_NV_BINDINGr
   r
   r
   r   Ú<module>   s    




