Ë
    èÿæi#  ã                   ó„   — d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ  G d„ de«      Z	e
dk(  r e j                  «        yy)é    N)Újit)Úutils)ÚTestCasec                   ó    — e Zd ZdZdZd„ Zd„ Zy)ÚTestExtendedArgz3
    Test support for the EXTENDED_ARG opcode.
    éÿ   c                 ó–  — d„ }t        |j                  j                  «      }|j                  j                  }d}|d| j                  z  z   dz   }t
        j                  dk\  rd}nd}t        j                  |t        j                  d«      }|d	| |z   ||d	 z   |d	d	 |j                  j                  t        |«      |¬
«      |_        |S )zW
        Get a function with a EXTENDED_ARG opcode before a LOAD_CONST opcode.
        c                  ó
   — d} | S )Né   © )Úxs    úr/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/numba/tests/test_extended_arg.pyÚfz6TestExtendedArg.get_extended_arg_load_const.<locals>.f   s   € ØˆAØˆHó    z<BB)N)é*   )é   é   é   r   é   N)Úco_codeÚ	co_consts)Ú	bytearrayÚ__code__r   r   Úbytecode_lenr   Ú	PYVERSIONÚstructÚpackÚdisÚEXTENDED_ARGÚreplaceÚbytes)Úselfr   ÚbÚconstsÚbytecode_formatÚoffsetÚpacked_extend_args          r   Úget_extended_arg_load_constz+TestExtendedArg.get_extended_arg_load_const   sÀ   € ò	ô �a—j‘j×(Ñ(Ó)ˆØ—‘×%Ñ%ˆØˆØ˜' D×$5Ñ$5Ñ5Ñ5¸Ñ=ˆÜ�?‰?˜gÒ%ð ‰FàˆFä"ŸK™K¨¼×9IÑ9IÈ1ÓMÐØ��&ˆzÐ-Ñ-°°&°'°
Ñ:ˆ‰!ˆØ—Z‘Z×'Ñ'´°a³ÀFÐ'ÓKˆŒ
Øˆr   c                 ó  — | j                  «       }| j                  t        |j                  j                  «      | j
                  «       | j                   |«       d«        t        d¬«      |«      }| j                   |«       d«       y )Nr   T)Únopython)r(   ÚassertGreaterÚlenr   r   r   ÚassertPreciseEqualr   )r"   ÚpyfuncÚcfuncs      r   Útest_extended_arg_load_constz,TestExtendedArg.test_extended_arg_load_const)   sj   € Ø×1Ñ1Ó3ˆà×Ñœ3˜vŸ™×8Ñ8Ó9¸4×;LÑ;LÔMØ×Ñ¡£¨"Ô-Ø"”˜TÔ" 6Ó*ˆØ×Ñ¡£¨Õ,r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r(   r0   r   r   r   r   r      s   „ ñð €Lòó0-r   r   Ú__main__)Úunittestr   r   Únumbar   Ú
numba.corer   Únumba.tests.supportr   r   r1   Úmainr   r   r   Ú<module>r;      s>   ðÛ ã 
Û å Ý Ý (ô$-�hô $-ðN ˆzÒØ€H‡M�M…Oð r   