Ë
    èÿæi·  ã                   ó`   — d Z ddlmZmZ ddlmZ ddlmZ ed„ «       Zed„ «       Z	ed„ «       Z
y)	z? This module provides the unsafe things for targets/numbers.py
é    )ÚtypesÚerrors)Ú	intrinsic)Úirc                 ó~  ‡— |j                   }t        |j                  t        j                  «      rt        j                  |«      ŠnYt        |j                  t        j                  «      r.|dk(  rt        j                  «       nt        j                  «       ŠnJ d«       ‚ˆfd„}|j                  } |||«      }||fS )z4 Bitcast a scalar 'val' to the given type 'viewty'. é    Úunreachablec                 ó2   •— |d   }|j                  |‰«      S )Nr   )Úbitcast)ÚcgctxÚbuilderÚtypÚargsÚfltÚ	bitcasttys        €úq/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/numba/cpython/unsafe/numbers.pyÚcodegenzviewer.<locals>.codegen   s   ø€ Ø�1‰gˆØ�‰˜s IÓ.Ð.ó    )
ÚbitwidthÚ
isinstanceÚdtyper   ÚIntegerr   ÚIntTypeÚFloatÚ	FloatTypeÚ
DoubleType)ÚtyctxÚvalÚviewtyÚbitsr   ÚrettyÚsigr   s          @r   Úviewerr#   	   s‰   ø€ ð �<‰<€DÜ�&—,‘,¤§¡Ô.Ü—J‘J˜tÓ$‰	Ü	�F—L‘L¤%§+¡+Ô	.Ø&*¨b¢j”B—L‘L”N´b·m±m³o‰	à�-Óˆqô/ð �L‰L€EÙ
��VÓ
€CØ�ˆ<Ðr   c                 ó†   — t        |t        j                  «      sd|› d�}t        j                  |«      ‚d„ } ||«      |fS )zACounts trailing zeros in the binary representation of an integer.zCtrailing_zeros is only defined for integers, but value passed was 'ú'.c                 ó|   — |\  }|j                  |t        j                  t        j                  d«      d«      «      S ©Né   r   )Úcttzr   ÚConstantr   ©Úcontextr   Ú	signaturer   Úsrcs        r   r   ztrailing_zeros.<locals>.codegen$   ó-   € Ø‰ˆØ�|‰|˜C¤§¡¬R¯Z©Z¸«]¸AÓ!>Ó?Ð?r   ©r   r   r   r   ÚNumbaTypeError©Ú
typeingctxr.   Úmsgr   s       r   Útrailing_zerosr5      óM   € ô �cœ5Ÿ=™=Ô)ðØ�e˜2ðˆä×#Ñ# CÓ(Ð(ò@ñ ˆs‹8�WÐÐr   c                 ó†   — t        |t        j                  «      sd|› d�}t        j                  |«      ‚d„ } ||«      |fS )z@Counts leading zeros in the binary representation of an integer.zBleading_zeros is only defined for integers, but value passed was 'r%   c                 ó|   — |\  }|j                  |t        j                  t        j                  d«      d«      «      S r'   )Úctlzr   r*   r   r+   s        r   r   zleading_zeros.<locals>.codegen2   r/   r   r0   r2   s       r   Úleading_zerosr:   *   r6   r   N)Ú__doc__Ú
numba.corer   r   Únumba.core.extendingr   Úllvmliter   r#   r5   r:   © r   r   Ú<module>r@      sO   ðñç $Ý *å ð ñó ðð$ ñ
ó ð
ð ñ
ó ñ
r   