U
    ,d                     @   s(  d dl Z d dlZd dlmZ d dlmZmZ d dlm	Z	m
Z
mZ d dlmZ d dlmZ e	dZde_ed	eefed
ddd Zedddd Zedddd ZdZedddd Ze	dZde_edddd Zedddd Zedd d!d Zed"d#d$d" Zed%d#d&d' Zed(d)d*d+ Ze	d,Zed-d)d.d- Zered/d)d0d/ Zed1d2d3d1 Z ed4d5d6d4 Z!e
d7d8ge ed9e ed:d;d<d: Z"ed=eed>d= Z#ed?eed@d= Z#edAe dBd= Z#dS )C    N)float32)unicode_typei8)CC
exportmanyexport)has_blas)typedZpycc_test_simpleFZmultfZmultiz
i4(i4, i4)c                 C   s   | | S N )abr   r   A/tmp/pip-unpacked-wheel-eu7e0c37/numba/tests/compile_with_pycc.pymult   s    r   get_noneznone()c                   C   s   d S r
   r   r   r   r   r   r      s    divz
f8(f8, f8)c                 C   s   | | S r
   r   )xyr   r   r   r      s       squarezi8(i8)c                 C   s   | t  S r
   )_twour   r   r   r   &   s    Zpycc_test_helperlibpowerz
i8(i8, i8)c                 C   s   | | S r
   r   )r   vr   r   r   r   .   s    sqrtzc16(c16)c                 C   s
   t | S r
   )cmathr   r   r   r   r   r   2   s    sizez	i8(f8[:])c                 C   s   | j S r
   )r   arrr   r   r   r   6   s    np_sqrtzf8(f8)c                 C   s
   t | S r
   )npr   r   r   r   r   r    ;   s    spacingc                 C   s
   t | S r
   )r!   r"   r   r   r   r   
np_spacing?   s    r#   randomzf8(i4)c                 C   s   | dkrt j|  t j S N)r!   r$   seed)r'   r   r   r   random_implE   s    r(   Zpycc_test_nrtzero_scalarc                 C   s   t | }|d S r%   r!   zeros)nr   r   r   r   r)   N   s    

vector_dotc                 C   s   t d| | }t ||S )N   )r!   Zlinspacedot)r,   r   r   r   r   r-   U   s    r+   z	f8[:](i4)c                 C   s
   t | S r
   r*   )r,   r   r   r   r+   [   s    
np_argsortzintp[:](float64[:])c                 C   s
   t | S r
   )r!   Zargsortr   r   r   r   r0   `   s    zmultf f4(f4,f4)zmulti i4(i4,i4)zmult f8(f8, f8)dict_usecasezintp[:](intp[:])c                 C   sP   t  }t| jD ]}| | ||< qt| }| D ]\}}|| ||< q6|S r
   )r	   Dictranger   r!   Z
zeros_likeitems)r   dioutkr   r   r   r   r1   n   s    
internal_str_dictc                 C   s*   t jtt}| |kr"t||| < t|S r
   )r	   r2   emptyr   r   len)r   r5   r   r   r   r9   y   s    Zhash_strc                 C   s   t | S r
   hash)r   r   r   r   r9      s    Zhash_literal_str_Ac                   C   s   t dS )NAr<   r   r   r   r   r9      s    )$r   Znumpyr!   Znumbar   Znumba.typesr   r   Z
numba.pyccr   r   r   Znumba.tests.supportr   r	   ccZuse_nrtr   r   r   r   r   Zcc_helperlibr   r   r   r    r#   r(   Zcc_nrtr)   r-   r+   r0   r1   r9   r   r   r   r   <module>   sh   































