§
    ƒÛg�  ã                   ó¤   — d dl Z d dlmZ d dlmZmZ d dlmZ dZ	dZ
 G d„ de¦  «        Z G d	„ d
e¦  «        Zedk    r e j        ¦   «          dS dS )é    N)Únjit)ÚTestCaseÚoverride_config)Úllvm_pass_timingsaZ  
===-------------------------------------------------------------------------===
                      ... Pass execution timing report ...
===-------------------------------------------------------------------------===
  Total Execution Time: 0.0001 seconds (0.0001 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   0.0001 ( 90.1%)   0.0001 ( 90.1%)   0.0001 ( 90.1%)   0.0001 ( 90.1%)  A1
   0.0000 (  9.9%)   0.0000 (  9.9%)   0.0000 (  9.9%)   0.0000 (  9.9%)  A2
   0.0001 (100.0%)   0.0001 (100.0%)   0.0001 (100.0%)   0.0001 (100.0%)  Total

aZ  
===-------------------------------------------------------------------------===
                      ... Pass execution timing report ...
===-------------------------------------------------------------------------===
  Total Execution Time: 0.0001 seconds (0.0001 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   0.0001 ( 90.1%)        -----        0.0001 ( 90.1%)   0.0001 ( 90.1%)  A1
   0.0000 (  9.9%)        -----        0.0000 (  9.9%)   0.0000 (  9.9%)  A2
   0.0001 (100.0%)        -----        0.0001 (100.0%)   0.0001 (100.0%)  Total

c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestLLVMPassTimingsc                 ó†  — t           d„ ¦   «         }t          dd¦  «        5   |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     |j        d         ¦  «        }|d         }|                      |t
          j        ¦  «         t          |¦  «        }|                      d|¦  «         |  	                    t          |¦  «        d¦  «         |d         }|                      |t
          j        ¦  «         |                      |j        t          ¦  «         |                      |j        t
          j        ¦  «         d S )	Nc                 ó8   — d}t          | ¦  «        D ]}||z  }Œ|S ©Nr   ©Úrange©ÚnÚcÚis      úX/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/test_llvm_pass_timings.pyÚfooz+TestLLVMPassTimings.test_usage.<locals>.foo&   ó,   € àˆAÝ˜1‘X”Xð ð �Ø�Q‘��ØˆHó    ÚLLVM_PASS_TIMINGSTé
   r   r   z!Module passes (full optimization)éÿÿÿÿ)r   r   Úget_metadataÚ
signaturesÚassertIsInstanceÚlptÚPassTimingsCollectionÚstrÚassertInÚassertGreaterÚlenÚNamedTimingsÚnameÚtimingsÚProcessedPassTimings)Úselfr   Úmdr$   ÚtextÚlasts         r   Ú
test_usagezTestLLVMPassTimings.test_usage%   sg  € Ý	ð	ð 	ñ 
Œð	õ Ð0°$Ñ7Ô7ð 	ð 	ØˆC�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò˜cœn¨QÔ/Ñ0Ô0ˆØÐ(Ô)ˆà×Ò˜g¥sÔ'@ÑAÔAÐAå�7‰|Œ|ˆØ�ŠÐ9¸4Ñ@Ô@Ð@à×Ò�3˜w™<œ<¨Ñ+Ô+Ð+à�rŒ{ˆØ×Ò˜d¥CÔ$4Ñ5Ô5Ð5à×Ò˜dœi­Ñ-Ô-Ð-Ø×Ò˜dœl­CÔ,DÑEÔEÐEÐEÐEó   ¡9¹=Á =c                 óÒ  — t           d„ ¦   «         }t          dd¦  «        5   |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     |j        d         ¦  «        }|d         }|                      |                     ¦   «         t          ¦  «         |                      |                     ¦   «         t          ¦  «         | 	                    ¦   «         }|  
                    t          |¦  «        t          |¦  «        ¦  «         |d         j                             ¦   «         }|dd …         D ]3}|j                             ¦   «         }|                      ||¦  «         |}Œ4d S )Nc                 ó\   — d}t          | ¦  «        D ]}t          |¦  «        D ]}||z  }ŒŒ|S r   r   )r   r   r   Újs       r   r   z-TestLLVMPassTimings.test_analyze.<locals>.fooA   sF   € àˆAÝ˜1‘X”Xð ð �Ý˜q™œð ð �AØ˜‘F�A�AðàˆHr   r   Tr   r   r   é   )r   r   r   r   r   Úget_total_timeÚfloatÚsummaryr   Úlist_longest_firstÚassertEqualr!   r$   ÚassertGreaterEqual)r&   r   r'   Útimings_collectionÚlongest_firstr)   ÚrecÚcurs           r   Útest_analyzez TestLLVMPassTimings.test_analyze@   s¡  € Ý	ð	ð 	ñ 
Œð	õ Ð0°$Ñ7Ô7ð 	ð 	ØˆC�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò˜cœn¨QÔ/Ñ0Ô0ˆØÐ 3Ô4Ðà×ÒÐ0×?Ò?ÑAÔAÅ5ÑIÔIÐIà×ÒÐ0×8Ò8Ñ:Ô:½CÑ@Ô@Ð@à*×=Ò=Ñ?Ô?ˆØ×Ò�˜]Ñ+Ô+­SÐ1CÑ-DÔ-DÑEÔEÐEØ˜QÔÔ'×6Ò6Ñ8Ô8ˆØ    Ô$ð 	ð 	ˆCØ”+×,Ò,Ñ.Ô.ˆCØ×#Ò# D¨#Ñ.Ô.Ð.ØˆCˆCð	ð 	r+   c                 ó¾  — t          j        t          ¦  «        }|                      |                     ¦   «         d¦  «         |                      |                     ¦   «         t          ¦  «         t          j        t          ¦  «        }|                      |                     ¦   «         d¦  «         |                      |                     ¦   «         t          ¦  «         d S )Ng-Cëâ6?)	r   r%   Útimings_raw1ÚassertAlmostEqualr0   r   r2   r   Útimings_raw2)r&   Útimings1Útimings2s      r   Útest_parse_rawz"TestLLVMPassTimings.test_parse_raw[   s°   € ÝÔ+­LÑ9Ô9ˆØ×Ò˜x×6Ò6Ñ8Ô8¸&ÑAÔAÐAØ×Ò˜h×.Ò.Ñ0Ô0µ#Ñ6Ô6Ð6åÔ+­LÑ9Ô9ˆØ×Ò˜x×6Ò6Ñ8Ô8¸&ÑAÔAÐAØ×Ò˜h×.Ò.Ñ0Ô0µ#Ñ6Ô6Ð6Ð6Ð6r   N)Ú__name__Ú
__module__Ú__qualname__r*   r:   rA   © r   r   r   r   #   sD   € € € € € ðFð Fð Fð6ð ð ð67ð 7ð 7ð 7ð 7r   r   c                   ó   — e Zd Zd„ ZdS )ÚTestLLVMPassTimingsDisabledc                 óÊ  — t           d„ ¦   «         }t          dd¦  «        5   |d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     |j        d         ¦  «        }|d         }|                      |                     ¦   «         d¦  «         |                      |                     ¦   «         ¦  «         |                      |                     ¦   «         g ¦  «         d S )Nc                 ó8   — d}t          | ¦  «        D ]}||z  }Œ|S r   r   r   s      r   r   z?TestLLVMPassTimingsDisabled.test_disabled_behavior.<locals>.foog   r   r   r   Fr   r   r   zNo pass timings were recorded)	r   r   r   r   r4   r2   ÚassertIsNoner0   r3   )r&   r   r'   r$   s       r   Útest_disabled_behaviorz2TestLLVMPassTimingsDisabled.test_disabled_behaviorf   s   € Ý	ð	ð 	ñ 
Œð	õ Ð0°%Ñ8Ô8ð 	ð 	ØˆC�‰GŒGˆGð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò˜cœn¨QÔ/Ñ0Ô0ˆØÐ(Ô)ˆà×Ò˜ŸšÑ*Ô*Ð,KÑLÔLÐLà×Ò˜'×0Ò0Ñ2Ô2Ñ3Ô3Ð3à×Ò˜×3Ò3Ñ5Ô5°rÑ:Ô:Ð:Ð:Ð:r+   N)rB   rC   rD   rK   rE   r   r   rG   rG   e   s#   € € € € € ð;ð ;ð ;ð ;ð ;r   rG   Ú__main__)ÚunittestÚnumbar   Únumba.tests.supportr   r   Ú
numba.miscr   r   r<   r>   r   rG   rB   ÚmainrE   r   r   ú<module>rR      sÓ   ðØ €€€à Ð Ð Ð Ð Ð Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø /Ð /Ð /Ð /Ð /Ð /ð€ð€ð?7ð ?7ð ?7ð ?7ð ?7˜(ñ ?7ô ?7ð ?7ðD;ð ;ð ;ð ;ð ; (ñ ;ô ;ð ;ð, ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   