o
    8Î®cT  ã                !   @   sr  d dl Z d dlmZ d dlmZmZmZ eƒ ZejZ	e	e j
ƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e jƒe	e j ƒe	e j!ƒe	e j"ƒe	e j#ƒe	e j$ƒe	e j%ƒe	e j&ƒG dd„ deƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒZ'e	e j(ƒG dd„ deƒƒZ)e	e j*ƒG dd	„ d	eƒƒZ+e	e j,ƒe	e j-ƒG d
d„ deƒƒƒZ.e	e j/ƒG dd„ deƒƒZ0e	e j1ƒG dd„ deƒƒZ2e	e j3ƒG dd„ deƒƒZ4e	e j5ƒG dd„ deƒƒZ6e	e j7ƒe	e j8ƒe	e j9ƒG dd„ deƒƒƒƒZ:e	e j;ƒG dd„ deƒƒZ<dS )é    N)Útypes)ÚConcreteTemplateÚ	signatureÚRegistryc                   @   s@   e Zd ZeejejƒeejejƒeejejƒeejejƒgZ	dS )Ú
Math_unaryN)
Ú__name__Ú
__module__Ú__qualname__r   r   Úfloat64Úint64Úuint64Úfloat32Úcases© r   r   ú:/tmp/pip-target-vg8gfxp4/lib/python/numba/cuda/cudamath.pyr   
   s    ür   c                   @   óV   e Zd ZejZeejej	ej	ƒeejej
ej
ƒeejejejƒeejejejƒgZdS )Ú
Math_atan2N)r   r   r	   ÚmathÚatan2Úkeyr   r   r
   r   r   r   r   r   r   r   r   r   0   ó    ür   c                   @   r   )Ú
Math_hypotN)r   r   r	   r   Úhypotr   r   r   r
   r   r   r   r   r   r   r   r   r   ;   r   r   c                   @   ó0   e Zd ZeejejejƒeejejejƒgZdS )ÚMath_binaryN©r   r   r	   r   r   r   r
   r   r   r   r   r   r   F   s    þr   c                   @   r   )ÚMath_remainderNr   r   r   r   r   r   O   ó    þr   c                   @   sP   e Zd ZeejejejƒeejejejƒeejejejƒeejejejƒgZdS )ÚMath_powN)	r   r   r	   r   r   r   r
   Úint32r   r   r   r   r   r   W   s    ür   c                   @   s@   e Zd Zee ejejg¡ejƒee ejejg¡ejƒgZ	dS )Ú
Math_frexpN)
r   r   r	   r   r   ÚTupler   r   r
   r   r   r   r   r   r    a   s    þr    c                   @   s0   e Zd ZeejejejƒeejejejƒgZdS )Ú
Math_ldexpN)	r   r   r	   r   r   r   r   r
   r   r   r   r   r   r"   i   r   r"   c                   @   s@   e Zd Zeejejƒeejejƒeejejƒeejej	ƒgZ
dS )Ú
Math_isnanN)r   r   r	   r   r   Úbooleanr   r   r   r
   r   r   r   r   r   r#   q   s    ür#   c                   @   s8   e Zd Zee ejd¡ejƒee ejd¡ejƒgZdS )Ú	Math_modfé   N)	r   r   r	   r   r   ÚUniTupler
   r   r   r   r   r   r   r%   }   s    þr%   )=r   Ú
numba.corer   Únumba.core.typing.templatesr   r   r   ÚregistryÚregister_globalÚinfer_globalÚacosÚacoshÚasinÚasinhÚatanÚatanhÚceilÚcosÚcoshÚdegreesÚerfÚerfcÚexpÚexpm1ÚfabsÚfloorÚgammaÚlgammaÚlogÚlog2Úlog10Úlog1pÚradiansÚsinÚsinhÚsqrtÚtanÚtanhÚtruncr   r   r   r   r   ÚcopysignÚfmodr   Ú	remainderr   Úpowr   Úfrexpr    Úldexpr"   ÚisinfÚisnanÚisfiniter#   Úmodfr%   r   r   r   r   Ú<module>   sp    J	

		