
    J/Ph!                         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                     dS dS )    N)jit)utils)TestCasec                   "    e Zd ZdZdZd Zd ZdS )TestExtendedArgz3
    Test support for the EXTENDED_ARG opcode.
       c                 z   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                            t          |          |
          |_        |S )zW
        Get a function with a EXTENDED_ARG opcode before a LOAD_CONST opcode.
        c                  
    d} | S )N    )xs    ]/var/www/html/test/jupyter/venv/lib/python3.11/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    	 	 	 aj())%'D$555=?g%% FFF"K9I1MM&z--&''
:!!!Z''aF'KK
r   c                 <   |                                  }|                     t          |j        j                  | j                   |                      |            d            t          d          |          }|                      |            d           d S )Nr   T)nopython)r(   assertGreaterlenr   r   r   assertPreciseEqualr   )r"   pyfunccfuncs      r   test_extended_arg_load_constz,TestExtendedArg.test_extended_arg_load_const)   s    11333v8994;LMMM"---"T"""6**,,,,,r   N)__name__
__module____qualname____doc__r   r(   r0   r   r   r   r   r      sC          L  0- - - - -r   r   __main__)unittestr   r   numbar   
numba.corer   numba.tests.supportr   r   r1   mainr   r   r   <module>r;      s     



              ( ( ( ( ( ($- $- $- $- $-h $- $- $-N zHMOOOOO r   