
    (Th                         S SK r S SKrS SKrS SKrSSKJrJrJr  SSKJ	r	  S SK
r
S rS rSS jrSS jrS	 rS
 rS r\S:X  a  \" 5         gg)    N   )startfinalize_select_backend)set_command_linec            	         [         R                  " SS[         R                  S9n U R                  SS[        SS9  U R                  SS	[        S
S / SQS9  U R                  SS[        SSSS/S9  U R                  SS[        SSS/S9  U R                  SS[        SS S S/S9  U R                  SS[        SS S S/S9  U R                  S[         R
                  SS 9  U R                  5       nXR                  4$ )!NzBThe proton command utility for profiling scripts and pytest tests.z
    proton [options] script.py [script_args] [script_options]
    proton [options] pytest [pytest_args] [script_options]
    python -m triton.profiler.proton [options] script.py [script_args] [script_options]
)descriptionusageformatter_classz-nz--namezName of the profiling session)typehelpz-bz	--backendzProfiling backend)cupticupti_pcsampling	roctracer)r   r   defaultchoicesz-cz	--contextzProfiling contextshadowpythonz-dz--datazProfiling datatreez-kz--hookzProfiling hooktritonz-iz--instrumentzInstrumentation analysis typeprint-mem-spacestarget_argszSubcommand and its arguments)nargsr   )argparseArgumentParserRawTextHelpFormatteradd_argumentstr	REMAINDER
parse_argsr   )parserargss     N/var/www/auris/envauris/lib/python3.13/site-packages/triton/profiler/proton.pyparse_argumentsr$   
   s0   $$X a 224F hS7VW
k:MW[ J  L
k:MW_!)8 4  6
hS7GQWbhaij
hS7GQU`dfn_op
n3=\fj!%'9 :  <
X-?-?FdeD!!!!    c                 F    [         R                  R                  U 5      S:H  $ )Npytest)ospathbasename)scripts    r#   	is_pytestr,      s    77F#x//r%   c                    [         R                  R                  U 5      nSSSUS[        [        R
                  [        0n[        R                  nU /U-   [        l        [        R                  R                  [         R                  R                  U5      5        [         R                  R                  [        R                  5      nUS:X  aq  [        [        [        R                  " U5      R                  S5      S 5      5      nS[         R                   S'   S	[         R                   S
'   U[         R                   S'    [#        US5       n[%        UR'                  5       US5      n	S S S 5        [)        W	U5        U[        l        g ! , (       d  f       N&= f! [*         a  n
[-        SU
 35         S n
A
N:S n
A
ff = f! U[        l        f = f)N__name____main____file____builtins__r   zlibPrintLoadStoreMemSpaces.so1TRITON_ALWAYS_COMPILE0TRITON_DISABLE_LINE_INFOLLVM_PASS_PLUGIN_PATHrbexecz.An error occurred while executing the script: )r(   r)   abspathr1   sysr.   argvappenddirnamer   r0   r   nextpathlibPathrglobenvironopencompilereadr8   	Exceptionprint)r+   r"   instrumentation_passscript_pathclean_globalsoriginal_argvtop_level_triton_pathinstrumentation_pass_pathfilecodees              r#   execute_as_mainrQ   #   sZ   ''//&)K 	JKc	M HHMx$CHHHOOBGGOOK01GGOOFOO<11$'34::;Z[]ab%d!.1

*+14

-..G

*+!+t$499;V<D %T=! ! %$  D>qcBCCD !sB    F F(F 
FF 
F;#F61F> 6F;;F> >Gc                     [        5         U S   n[        U 5      S:  a  U SS  O/ n[        U5      (       a  SS KnUR	                  U5        g [        X#U5        g )Nr   r   )r   lenr,   r'   mainrQ   )r   rH   r+   script_argsr'   s        r#   do_setup_and_executerV   E   sO    ^F%(%5%9+ab/rKK -ABr%   c                     U R                   (       a  U R                   O	[        5       n[        U R                  U R                  U R
                  X R                  S9  [        U5        [        5         g )N)contextdatabackendhook)	rZ   r   r   namerX   rY   r[   rV   r   )r"   r   rZ   s      r#   run_profilingr]   R   sC    "lldll0AG	$))T\\		7QZQZ[%Jr%   c                 .    [        XR                  5        g N)rV   
instrumentr"   r   s     r#   run_instrumentationrb   \   s    oo6r%   c                  l    [        5       u  pU R                  (       a  [        X5        g [        X5        g r_   )r$   r`   rb   r]   ra   s     r#   rT   rT   `   s'    ')DD.$$r%   r/   r_   )r   r:   r(   r?   profiler   r   r   flagsr   r   r$   r,   rQ   rV   r]   rb   rT   r.    r%   r#   <module>rg      sV     
 	  5 5 # "*0!D
C7% zF r%   