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
   `/home/ubuntu/veenaModal/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    




