o
    cZhA                     @   sP  d dl mZ ejdkddZejdkddZejdkddZejdkd	d
ZejdkddZejdkddZejdkddZ	ejdkddZ
ejdkddZejdkddZejdkddZejdkddZejdkddZejdkddZejdkdd Zejdkd!d"Zejdkd#d$Zejdkd%d&Zejdkd'd(Zejdkd)d*Zejdkd+d,Zejdkd-d.Zejdkd/d0Zejdkd1d2Zejdkd3d4Zejdkd5d6Zejdkd7d8Zejdkd9d:Zejdkd;d<Zejdkd=d>Z ejdkd?d@Z!ejdkdAdBZ"ejdkdCdDZ#ejdkdEdFZ$ejdkdGdHZ%ejdkdIdJZ&ejdkdKdLZ'ejdkdMdNZ(ejdkdOdPZ)ejdkdQdRZ*ejdkdSdTZ+ejdkdUdVZ,ejdkdWdXZ-ejdkdYdZZ.ejdkd[d\Z/ejdkd]d^Z0ejdkd_d`Z1ejdkdadbZ2ejdkdcddZ3ejdkdedfZ4ejdkdgdhZ5ejdkdidjZ6dS )l    )coreNc                 C   sp   t jdd| gt dfdt dft dfdt dft dfdt dft dfdt dfid|d	S )
N int32Z__triton_hip_iabsint64fp32Z__triton_hip_fabsfp64TZis_pure_builderr   extern_elementwisedtypearg0r	    r   R/var/www/auris/lib/python3.10/site-packages/triton/language/extra/hip/libdevice.pyabs   s   r   c                 C   D   t jdd| gt dfdt dft dfdt dfid|dS )Nr   r   Z__ocml_floor_f32r   Z__ocml_floor_f64Tr   r
   r   r   r   r   floor      r   c                 C   r   )Nr   r   Z__ocml_rsqrt_f32r   Z__ocml_rsqrt_f64Tr   r
   r   r   r   r   rsqrt   r   r   c                 C   r   )Nr   r   Z__ocml_ceil_f32r   Z__ocml_ceil_f64Tr   r
   r   r   r   r   ceil!   r   r   c                 C   r   )Nr   r   Z__ocml_trunc_f32r   Z__ocml_trunc_f64Tr   r
   r   r   r   r   trunc*   r   r   c                 C   r   )Nr   r   Z__ocml_exp2_f32r   Z__ocml_exp2_f64Tr   r
   r   r   r   r   exp23   r   r   c                 C   r   )Nr   r   Z__ocml_exp_f32r   Z__ocml_exp_f64Tr   r
   r   r   r   r   exp<   r   r   c              	   C   s.   t jdd| gt dfdt dfid|dS )Nr   r   Z__triton_hip_fast_expfTr   r
   r   r   r   r   	fast_expfE   s
   r   c              	   C   s8   t jdd| |gt dt dfdt dfid|dS )Nr   r   Z__triton_hip_fast_fdividefTr   r
   r   arg1r	   r   r   r   fast_dividefL   s
   r   c                 C   r   )Nr   r   Z__ocml_sqrt_f32r   Z__ocml_sqrt_f64Tr   r
   r   r   r   r   sqrtS   r   r   c                 C   sD   t jdd| gt dfdt dft dfdt dfid|dS )Nr   r   Z__triton_hip_llrintr   r   Tr   r
   r   r   r   r   llrint\   r   r   c                 C   r   )Nr   r   Z__ocml_nearbyint_f32r   Z__ocml_nearbyint_f64Tr   r
   r   r   r   r   	nearbyinte      r    c                 C   P   t jdd| gt dfdt dft dfdt dfid|djt j|d	S )
Nr   r   Z__ocml_isnan_f32r   r   Z__ocml_isnan_f64Tr   r	   r   r   r   toZint1r   r   r   r   isnanp   s   r&   c                 C   D   t jdd| gt dfdt dft dfdt dfid|dS )	Nr   r   Z__ocml_signbit_f32r   r   Z__ocml_signbit_f64Tr   r
   r   r   r   r   signbit{   r!   r(   c                 C   V   t jdd| |gt dt dfdt dft dt dfdt dfid|dS )Nr   r   Z__ocml_copysign_f32r   Z__ocml_copysign_f64Tr   r
   r   r   r   r   copysign      
r*   c                 C   r"   )
Nr   r   Z__ocml_isinf_f32r   r   Z__ocml_isinf_f64Tr   r#   r$   r   r   r   r   isinf   s   r,   c                 C   r)   )Nr   r   Z__ocml_nextafter_f32r   Z__ocml_nextafter_f64Tr   r
   r   r   r   r   	nextafter   r+   r-   c                 C   r   )Nr   r   Z__ocml_sin_f32r   Z__ocml_sin_f64Tr   r
   r   r   r   r   sin   r   r.   c                 C   r   )Nr   r   Z__ocml_cos_f32r   Z__ocml_cos_f64Tr   r
   r   r   r   r   cos   r   r/   c                 C   r   )Nr   r   Z__ocml_tan_f32r   Z__ocml_tan_f64Tr   r
   r   r   r   r   tan   r   r0   c                 C   r   )Nr   r   Z__ocml_log2_f32r   Z__ocml_log2_f64Tr   r
   r   r   r   r   log2   r   r1   c                 C   r   )Nr   r   Z__ocml_cosh_f32r   Z__ocml_cosh_f64Tr   r
   r   r   r   r   cosh   r   r2   c                 C   r   )Nr   r   Z__ocml_sinh_f32r   Z__ocml_sinh_f64Tr   r
   r   r   r   r   sinh   r   r3   c                 C   r   )Nr   r   Z__ocml_tanh_f32r   Z__ocml_tanh_f64Tr   r
   r   r   r   r   tanh   r   r4   c                 C   r)   )Nr   r   Z__ocml_atan2_f32r   Z__ocml_atan2_f64Tr   r
   r   r   r   r   atan2   r+   r5   c                 C   r   )Nr   r   Z__ocml_atan_f32r   Z__ocml_atan_f64Tr   r
   r   r   r   r   atan   r   r6   c                 C   r   )Nr   r   Z__ocml_asin_f32r   Z__ocml_asin_f64Tr   r
   r   r   r   r   asin   r   r7   c                 C   r   )Nr   r   Z__ocml_acos_f32r   Z__ocml_acos_f64Tr   r
   r   r   r   r   acos   r   r8   c                 C   r   )Nr   r   Z__ocml_log_f32r   Z__ocml_log_f64Tr   r
   r   r   r   r   log  r   r9   c                 C   r   )Nr   r   Z__ocml_log10_f32r   Z__ocml_log10_f64Tr   r
   r   r   r   r   log10  r   r:   c                 C   r   )Nr   r   Z__ocml_log1p_f32r   Z__ocml_log1p_f64Tr   r
   r   r   r   r   log1p  r   r;   c                 C   r   )Nr   r   Z__ocml_acosh_f32r   Z__ocml_acosh_f64Tr   r
   r   r   r   r   acosh  r   r<   c                 C   r   )Nr   r   Z__ocml_asinh_f32r   Z__ocml_asinh_f64Tr   r
   r   r   r   r   asinh(  r   r=   c                 C   r   )Nr   r   Z__ocml_atanh_f32r   Z__ocml_atanh_f64Tr   r
   r   r   r   r   atanh1  r   r>   c                 C   r   )Nr   r   Z__ocml_expm1_f32r   Z__ocml_expm1_f64Tr   r
   r   r   r   r   expm1:  r   r?   c                 C   r)   )Nr   r   Z__ocml_hypot_f32r   Z__ocml_hypot_f64Tr   r
   r   r   r   r   hypotC  r+   r@   c                 C   r   )Nr   r   Z__ocml_j0_f32r   Z__ocml_j0_f64Tr   r
   r   r   r   r   j0L  r   rA   c                 C   r   )Nr   r   Z__ocml_j1_f32r   Z__ocml_j1_f64Tr   r
   r   r   r   r   j1U  r   rB   c                 C   r   )Nr   r   Z__ocml_y0_f32r   Z__ocml_y0_f64Tr   r
   r   r   r   r   y0^  r   rC   c                 C   r   )Nr   r   Z__ocml_y1_f32r   Z__ocml_y1_f64Tr   r
   r   r   r   r   y1g  r   rD   c                 C   r   )Nr   r   Z__ocml_i0_f32r   Z__ocml_i0_f64Tr   r
   r   r   r   r   cyl_bessel_i0p  r   rE   c                 C   r   )Nr   r   Z__ocml_i1_f32r   Z__ocml_i1_f64Tr   r
   r   r   r   r   cyl_bessel_i1y  r   rF   c                 C   r   )Nr   r   Z__ocml_erf_f32r   Z__ocml_erf_f64Tr   r
   r   r   r   r   erf  r   rG   c                 C   r   )Nr   r   Z__ocml_erfinv_f32r   Z__ocml_erfinv_f64Tr   r
   r   r   r   r   erfinv  r   rH   c                 C   r   )Nr   r   Z__ocml_erfc_f32r   Z__ocml_erfc_f64Tr   r
   r   r   r   r   erfc  r   rI   c                 C   r   )Nr   r   Z__ocml_erfcx_f32r   Z__ocml_erfcx_f64Tr   r
   r   r   r   r   erfcx  r   rJ   c                 C   r   )Nr   r   Z__ocml_lgamma_f32r   Z__ocml_lgamma_f64Tr   r
   r   r   r   r   lgamma  r   rK   c                 C   sV   t jdd| |gt dt dfdt dft dt dfdt dfid|dS )	Nr   r   r   Z__ocml_ldexp_f32r   Z__ocml_ldexp_f64Tr   r
   r   r   r   r   ldexp  r+   rL   c                 C   r)   )Nr   r   Z__ocml_fmod_f32r   Z__ocml_fmod_f64Tr   r
   r   r   r   r   fmod  r+   rM   c                 C   sh   t jdd| ||gt dt dt dfdt dft dt dt dfdt dfid|dS )Nr   r   Z__ocml_fma_f32r   Z__ocml_fma_f64Tr   r
   )r   r   Zarg2r	   r   r   r   fma  s   &&rN   c                 C   s   t jdd| |gt dt dfdt dft dt dfdt dft dt dfdt dft dt dfdt dfid	|d
S )Nr   r   r   Z__ocml_pown_f32r   Z__ocml_pown_f64Z__ocml_pow_f32Z__ocml_pow_f64Tr   r
   r   r   r   r   pow  s   
rO   c                 C   r'   )	Nr   r   Z__ocml_ilogb_f32r   r   Z__ocml_ilogb_f64Tr   r
   r   r   r   r   ilogb  r   rP   )N)7Ztriton.languager   Zexternr   r   r   r   r   r   r   r   r   r   r   r    r&   r(   r*   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   r   r   r   r   <module>   s    




