§
    ž²Åj/  ã                  ó²  — d dl mZ d dlZd dlZd dlZd dlmZ d dlmZm	Z	 ej
                             d¦  «        dk    r ed¦  «        dd„¦   «         Zndd„Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        ZdS ) é    )ÚannotationsN)Ú	lru_cache)ÚAnyÚListÚTORCHINDUCTOR_WRITE_MISSING_OPSÚ1Útargetr   ÚreturnÚNonec                óÊ   — t          t          j        ¦   «         › d�d¦  «        5 }|                     t	          | ¦  «        dz   ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz/missing_ops.txtÚaú
)ÚopenÚtempfileÚ
gettempdirÚwriteÚstr)r	   Úfds     úDC:\Projects\Historical\venv\Lib\site-packages\torch/_inductor/exc.pyÚ_record_missing_opr      s¢   € å•XÔ(Ñ*Ô*Ð<Ð<Ð<¸cÑBÔBð 	)ÀbØ�HŠH•S˜‘[”[ 4Ñ'Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð 	)ð 	)s   ¥&AÁAÁAc                ó   — d S )N© )r	   s    r   r   r      s   € Øˆó    c                  ó&   — e Zd Zedd	„¦   «         Zd
S )ÚOperatorIssuer	   r   Úargsú	List[Any]Úkwargsúdict[str, Any]r
   r   c                óÆ   — d| › �gd„ t          |¦  «        D ¦   «         z   }|r|                     d|› �¦  «         t          j        d                     |¦  «        d¦  «        S )Nztarget: c                ó$   — g | ]\  }}d |› d|› �‘ŒS )zargs[z]: r   )Ú.0ÚiÚargs      r   ú
<listcomp>z.OperatorIssue.operator_str.<locals>.<listcomp>   s:   € ð )
ð )
ð )
Ù$* A sÐ�AÐÐ˜#ÐÐð)
ð )
ð )
r   zkwargs: r   z  )Ú	enumerateÚappendÚtextwrapÚindentÚjoin)r	   r   r   Úliness       r   Úoperator_strzOperatorIssue.operator_str   s|   € à$˜FÐ$Ð$Ð%ð )
ð )
Ý.7¸©o¬oð)
ñ )
ô )
ñ 
ˆð ð 	.Ø�LŠLÐ, FÐ,Ð,Ñ-Ô-Ð-ÝŒ˜tŸyšy¨Ñ/Ô/°Ñ6Ô6Ð6r   N)r	   r   r   r   r   r   r
   r   )Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr,   r   r   r   r   r      s2   € € € € € Øð7ð 7ð 7ñ „\ð7ð 7ð 7r   r   c                  ó    ‡ — e Zd Zd
ˆ fd	„Zˆ xZS )ÚMissingOperatorWithoutDecompr	   r   r   r   r   r   r
   r   c                ó˜   •— t          |¦  «         t          ¦   «                              d|                      |||¦  «        › �¦  «         d S )Nzmissing lowering
)r   ÚsuperÚ__init__r,   ©Úselfr	   r   r   Ú	__class__s       €r   r5   z%MissingOperatorWithoutDecomp.__init__#   sJ   ø€ Ý˜6Ñ"Ô"Ð"Ý‰Œ×ÒÐW¨d×.?Ò.?ÀÈÈfÑ.UÔ.UÐWÐWÑXÔXÐXÐXÐXr   ©r	   r   r   r   r   r   r
   r   ©r-   r.   r/   r5   Ú__classcell__©r8   s   @r   r2   r2   "   sG   ø€ € € € € ðYð Yð Yð Yð Yð Yð Yð Yð Yð Yr   r2   c                  ó    ‡ — e Zd Zd
ˆ fd	„Zˆ xZS )ÚMissingOperatorWithDecompr	   r   r   r   r   r   r
   r   c                óÊ   •— t          |¦  «         t          ¦   «                              d|                      |||¦  «        › �t	          j        d|› d�¦  «        z   ¦  «         d S )Nzmissing decomposition
z9

                There is a decomposition available for z° in
                torch._decomp.get_decompositions().  Please add this operator to the
                `decompositions` list in torch._inductor.decomposition
                )r   r4   r5   r,   r(   Údedentr6   s       €r   r5   z"MissingOperatorWithDecomp.__init__)   s   ø€ Ý˜6Ñ"Ô"Ð"Ý‰Œ×ÒØO d×&7Ò&7¸ÀÀfÑ&MÔ&MÐOÐOÝŒoðà8>ðð ð ñô ññ
	
ô 
	
ð 
	
ð 
	
ð 
	
r   r9   r:   r<   s   @r   r>   r>   (   s=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   r>   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚLoweringExceptionÚexcÚ	Exceptionr	   r   r   r   r   r   r
   r   c                ó¨   •— t          ¦   «                              t          |¦  «        j        › d|› d|                      |||¦  «        › �¦  «         d S )Nz: r   )r4   r5   Útyper-   r,   )r7   rC   r	   r   r   r8   s        €r   r5   zLoweringException.__init__9   s_   ø€ õ 	‰Œ×ÒÝ�C‰yŒyÔ!ÐUÐU SÐUÐU¨D×,=Ò,=¸fÀdÈFÑ,SÔ,SÐUÐUñ	
ô 	
ð 	
ð 	
ð 	
r   )
rC   rD   r	   r   r   r   r   r   r
   r   r:   r<   s   @r   rB   rB   8   ó=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rB   c                  ó   — e Zd ZdS )ÚSubgraphLoweringExceptionN©r-   r.   r/   r   r   r   rI   rI   A   ó   € € € € € Ø€Dr   rI   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚInvalidCxxCompilerr
   r   c                ó€   •— ddl m} t          ¦   «                              d|j        › d|j        j        › �¦  «         d S )Né   )Úconfigz!No working C++ compiler found in z
.cpp.cxx: )Ú rP   r4   r5   r-   ÚcppÚcxx)r7   rP   r8   s     €r   r5   zInvalidCxxCompiler.__init__F   sT   ø€ ØÐÐÐÐÐå‰Œ×ÒØ[°´Ð[Ð[È6Ì:Ì>Ð[Ð[ñ	
ô 	
ð 	
ð 	
ð 	
r   )r
   r   r:   r<   s   @r   rM   rM   E   rG   r   rM   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )ÚCppWrapperCodegenErrorÚmsgr   r
   r   c                óP   •— t          ¦   «                              d|› �¦  «         d S )NzC++ wrapper codegen error: )r4   r5   )r7   rV   r8   s     €r   r5   zCppWrapperCodegenError.__init__O   s*   ø€ Ý‰Œ×ÒÐ<°sÐ<Ð<Ñ=Ô=Ð=Ð=Ð=r   )rV   r   r
   r   r:   r<   s   @r   rU   rU   N   s=   ø€ € € € € ð>ð >ð >ð >ð >ð >ð >ð >ð >ð >r   rU   c                  ó    ‡ — e Zd Zdˆ fd„Zˆ xZS )	ÚCppCompileErrorÚcmdú	list[str]Úoutputr   r
   r   c                ó6  •— t          |t          ¦  «        r|                     d¦  «        }t          ¦   «                              t          j        d¦  «                             ¦   «                              d 	                    |¦  «        |¬¦  «        ¦  «         d S )Nzutf-8z©
                    C++ compile error

                    Command:
                    {cmd}

                    Output:
                    {output}
                ú )rZ   r\   )
Ú
isinstanceÚbytesÚdecoder4   r5   r(   r@   ÚstripÚformatr*   )r7   rZ   r\   r8   s      €r   r5   zCppCompileError.__init__T   s†   ø€ Ý�f�eÑ$Ô$ð 	,Ø—]’] 7Ñ+Ô+ˆFå‰Œ×ÒÝŒOðñ
ô 
÷ ŠU‰WŒWßŠV˜Ÿš ™œ¨fˆVÑ5Ô5ñ	
ô 	
ð 	
ð 	
ð 	
r   )rZ   r[   r\   r   r
   r   r:   r<   s   @r   rY   rY   S   s=   ø€ € € € € ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rY   c                  ó   — e Zd ZdS )ÚCUDACompileErrorNrJ   r   r   r   re   re   i   rK   r   re   )r	   r   r
   r   )Ú
__future__r   Úosr   r(   Ú	functoolsr   Útypingr   r   ÚenvironÚgetr   ÚRuntimeErrorr   r2   r>   rB   rI   rM   rU   rY   re   r   r   r   ú<module>rm      sC  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø €€€Ø €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ð Ð ð „:‡>‚>Ð3Ñ4Ô4¸Ò;Ð;à€Yˆt�_„_ð)ð )ð )ñ „_ð)ð )ðð ð ð ð7ð 7ð 7ð 7ð 7�Lñ 7ô 7ð 7ðYð Yð Yð Yð Y =ñ Yô Yð Yð
ð 
ð 
ð 
ð 
 ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
˜ñ 
ô 
ð 
ð	ð 	ð 	ð 	ð 	 ñ 	ô 	ð 	ð
ð 
ð 
ð 
ð 
˜ñ 
ô 
ð 
ð>ð >ð >ð >ð >˜\ñ >ô >ð >ð

ð 
ð 
ð 
ð 
�lñ 
ô 
ð 
ð,	ð 	ð 	ð 	ð 	�ñ 	ô 	ð 	ð 	ð 	r   