Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test__opcode.cpython-311.opt-2.pyc
�

�Ke�����ddlZddlmZddlZddlZed��ZddlmZGd�dej��ZGd�dej��Z	e
d	krej��dSdS)
�N)�
import_module�_opcode)�stack_effectc��eZdZd�Zd�ZdS)�OpcodeTestsc���|�ttjd��d��|�ttjdd��d��|�ttjdd��d��|�ttjdd��d��|�t
td��|�t
ttjd��|�t
ttjdd��t
d	�tj�����D]�\}}|�|�
��5|tj	kr2t|��|�t
t|d��n1t|d��|�t
t|��ddd��n#1swxYwY��ttd����ttj�����z
D]s}|�|���5|�t
t|��|�t
t|d��ddd��n#1swxYwY�tdS)
N�POP_TOP����BUILD_SLICEr�����i0uc�*�|dtjvS�Nr��dis�deoptmap��items �;/usr/local/apps/python3/lib/python3.11/test/test__opcode.py�<lambda>z/OpcodeTests.test_stack_effect.<locals>.<lambda>���d�1�g�S�\�.I����opname�)�opcode)
�assertEqualrr�opmap�assertRaises�
ValueError�filter�items�subTest�
HAVE_ARGUMENT�set�range�values)�self�name�codes   r�test_stack_effectzOpcodeTests.test_stack_effects�������c�i�	�&:�;�;�R�@�@�@�����c�i�
�&>��B�B�B�G�G�G�����c�i�
�&>��B�B�B�G�G�G�����c�i�
�&>��B�B�B�G�G�G����*�l�E�:�:�:����*�l�C�I�m�4L�M�M�M����*�l�C�I�i�4H�!�L�L�L� �!I�!I�3�9�?�?�K\�K\�]�]�	F�	F�J�D�$����T��*�*�
F�
F��#�+�+�+� ��&�&�&��%�%�j�,��a�H�H�H�H� ��q�)�)�)��%�%�j�,��E�E�E�

F�
F�
F�
F�
F�
F�
F�
F�
F�
F�
F����
F�
F�
F�
F����c�
�
�O�O�c�#�)�*:�*:�*<�*<�&=�&=�=�	E�	E�D����T��*�*�
E�
E��!�!�*�l�D�A�A�A��!�!�*�l�D�!�D�D�D�
E�
E�
E�
E�
E�
E�
E�
E�
E�
E�
E����
E�
E�
E�
E��	E�	Es&�A4H�H 	�#H 	�AK�K	�K	c	��tjd}|�t|d��d��|�t|dd���d��|�t|dd���d��tjd}|�t|d��d��|�t|dd���d��|�t|dd���d��tjd	}|�t|d��d��|�t|dd���d��|�t|dd���d��tjtjz}t
d
�tj�����D]�\}}|�|���5|tj	kr2t|��}t|d���}t|d���}	n4t|d��}t|dd���}t|dd���}	||vr%|�|t||	����n,|�||��|�|	|��ddd��n#1swxYwY��dS)N�JUMP_IF_TRUE_OR_POPrT)�jumpFr
�FOR_ITERr�JUMP_FORWARDc�*�|dtjvSrrrs rrz4OpcodeTests.test_stack_effect_jump.<locals>.<lambda>2rrr)rrrr�hasjabs�hasjrelr"r#r$r%�max)
r)r.r0r1�has_jumpr*r+�commonr/�nojumps
          r�test_stack_effect_jumpz"OpcodeTests.test_stack_effect_jump#s���!�i�(=�>������&9�1�=�=�q�A�A�A�����&9�1�4�H�H�H�!�L�L�L�����&9�1�5�I�I�I�2�N�N�N��9�Z�(������h��2�2�A�6�6�6�����h���=�=�=�r�B�B�B�����h���>�>�>��B�B�B��y��0������l�A�6�6��:�:�:�����l�A�D�A�A�A�1�E�E�E�����l�A�E�B�B�B�A�F�F�F��;���,�� �!I�!I�3�9�?�?�K\�K\�]�]�	5�	5�J�D�$����T��*�*�

5�

5��#�+�+�+�)�$�/�/�F�'��4�8�8�8�D�)�$�U�;�;�;�F�F�)�$��2�2�F�'��a�d�;�;�;�D�)�$���>�>�>�F��8�#�#��$�$�V�S��v�->�->�?�?�?�?��$�$�T�6�2�2�2��$�$�V�V�4�4�4�

5�

5�

5�

5�

5�

5�

5�

5�

5�

5�

5����

5�

5�

5�

5��	5�	5s�(CK�K	�K	N)�__name__�
__module__�__qualname__r,r9�rrrr
s5������E�E�E�.5�5�5�5�5rrc��eZdZd�ZdS)�SpecializationStatsTestsc���tj}d�tjD��}|�d|��|�d|��t���}|��|�|t��|�|�	��|��|�|d�	��|dgz��|D])}|�|d|t���*|�|ddt��|ddD]}|�|t���dSdS)Nc��g|]A}|�d���|dtd��������BS)�	_ADAPTIVEN)�endswith�len�lower)�.0�ops  r�
<listcomp>zFSpecializationStatsTests.test_specialization_stats.<locals>.<listcomp>Gs\��)�)�)���{�{�;�'�'�)��!��[�!�!�!�!�"�(�(�*�*�)�)�)r�	load_attr�
binary_subscr�
failure_kinds)r�_specialization_stats�_specialized_instructions�assertInr�get_specialization_stats�assertIsInstance�dict�assertCountEqual�keys�int�tuple)r)�
stat_names�specialized_opcodes�stats�sn�vs      r�test_specialization_statsz2SpecializationStatsTests.test_specialization_statsDs���1�
�)�)��2�)�)�)��	
�
�
�k�#6�7�7�7��
�
�o�':�;�;�;��0�0�2�2�����!�!�%��.�.�.��!�!�%�*�*�,�,�0C�D�D�D��!�!��k�"�'�'�)�)��o�.�.�
0�
0�
0�!�
C�
C���%�%�e�K�&8��&<�c�B�B�B�B��!�!��k�"�?�3��
�
�
��;�'��8�
.�
.���%�%�a��-�-�-�-���
.�
.rN)r:r;r<r[r=rrr?r?Cs#������.�.�.�.�.rr?�__main__)r�test.support.import_helperr�unittestrrr�TestCaserr?r:�mainr=rr�<module>ras���
�
�
�
�4�4�4�4�4�4�����
�
�
�
�
�-�	�
"�
"�� � � � � � �65�65�65�65�65�(�#�65�65�65�r.�.�.�.�.�x�0�.�.�.�6�z����H�M�O�O�O�O�O��r