+
    ړLj                        ^ RI t ^ RIt^ RIt^ RIt^ RIt]P
                  ! R4      t]P
                  ! R4      t]P
                  ! R4      t]P
                  ! R4      t	R t
R t] P                  ! 4       RR l4       tR	 tR
 tR# )    Nz1\s*/\*\w{4}\*/\s*([^;]*;)\s*/\* 0x(\w{16}) \*/\s*z\s*/\* 0x(\w{16}) \*/\s*z\s*Function : (\w+)\s*z(.*BRA(?:\.U)? )(0x\w+);c           
         \        \        P                  V 4      P                  ^4      ^4      pV^),	          ^,          pV^-,	          ^,          pV^.,	          ^,          pV^1,	          ^,          pV^4,	          ^?,          pV^ 8X  d   RMRpV^8X  d   RM
\	        V4      pV^8X  d   RM
\	        V4      p	V^ 8X  d   RMVR p
V
 RV	 RV RV RVR 2	# )   Y-z--02d:x)intSLINE_REmatchgroupstr)slineencstallyldwrtdbreadbwatdbyld_str	wrtdb_str	readb_str	watdb_strs   &          ?/app/.local/lib/python3.14/site-packages/triton/tools/disasm.py	parseCtrlr   #   s    
hnnU#))!,b
1CBY#E"9
CBY#EBY#EBY$EAXc3Gzs5zIzs5zI
5+I[)Ai['!E!9EE    c                 d   \         P                  V 4      P                  ^4      pVP                  R4      '       d   VRR R,           p\	        V4      p\
        P                  V4      eC   \        \
        P                  V4      P                  ^4      ^4      pWR9   d   M\        V4      W%&   V V 3# )r   z ;N;)FLINE_REr   r   endswithr   BRA_REr
   len)fliner   labelsasmctrltargets   &&&   r   processSassLinesr)   2   s    
..

%
%a
(C
||D#2hnUD||C$V\\#&,,Q/4 [FNf#  r   c                 0   \         P                  ! 4       w  r# \        VR 4      ;_uu_ 4       pVP                  V 4       RRR4       \	        W14      p\
        P                  ! V4       V#   + '       g   i     L3; i  \
        P                  ! T4       i ; i)wbN)tempfilemkstempopenwriteextractosremove)	cubin_asmfunfdpathcubinsasss   &&    r   get_sassr9   B   se    !HB"d^^uKK	" t!
		$K ^ 			$s!   A= A*A= *A:	5A= =Bc                  N    ^ RI Hp  V P                  P                  P                  # )r   knobs)tritonr<   nvidia	cuobjdumpr6   r;   s    r   path_to_cuobjdumpr@   N   s    <<!!&&&r   c                    \        4       pVf   \        P                  ! VRV .4      pM\        P                  ! VRVRV .4      pVP                  4       p^ pV\	        V4      8  Ed   WE,          P                  4       p\        P                  V4      f4   V^,          pV\	        V4      8  d   WE,          P                  4       pKH  R # \        P                  V4      P                  ^4      pRpVRV R2,          pV^,          pWE,          P                  4       p/ p	. p
\        P                  V4      er   WE,          P                  4       pV^,          pWE,          P                  4       pV^,          pV
P                  \        WV	4      4       WE,          P                  4       pK  \        V
4       F  w  pw  rV^,          pVV	9   d   RV	V,           2pVV R2,          pWR,           ,          p\        P                  V4      '       dU   \        \        P                  V4      P                  ^4      ^4      pRV	V,           2p\        P                  R	V R
2V4      pWR,           ,          pK  	  VR,          pV# R # )Nz-sassz-fun z	Function:
LBBz:
	z\1r   )r@   
subprocesscheck_output
splitlinesr#   decodeFNAME_REr   r   r    appendr)   	enumerater"   r
   sub)	file_pathr4   r?   sass_str
sass_linesline_idxlinefnameretr%   
asm_bufferr$   r   idxr'   r&   offset
label_namer(   target_names   &&                  r   r0   r0   S   s>   !#I
{**Iw	+JK**IvsGY+WX$$&JH
S_
$#**, nnT"*MH#j/)!+224t$**1-5'$$A#**, 
nnT".(//1EMH(//1EMH.uVDE'..0D !** 5C$2XF"6&>"23
*S))$;C||C  V\\#.44Q7< #F6N#34jjB{m1!5s;:C !6 	t
i %r   )N)	functoolsr1   rerF   r,   compiler    r   rJ   r"   r   r)   	lru_cacher9   r@   r0    r   r   <module>r_      s   .  	 	  ::JK::12::/0	/	0F!   '
<r   