Ë
    èÿæiå
  ã                   ó*  — d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ  e
«       Zej                   Z ej"                   ej$                  d«      «      Zed	„ «       Zej+                  ej,                  «      ej+                  ej.                  «      d
„ «       «       Zej+                  ej2                  «      d„ «       Zej+                  ej6                  «      d„ «       Z ee ej<                  ej>                  «      «      d„ «       Z y)é    )Úsingledispatch)Úir)ÚtypesÚcgutils)ÚNumbaWarning)ÚRegistry)Ú	nvvmutils)Úwarné   c                 ó   — t        d| ›�«      ‚)zµ
    Handle printing of a single value of the given Numba type.
    A (format string, [list of arguments]) is returned that will allow
    forming the final printf()-like call.
    z*printing unimplemented for values of type )ÚNotImplementedError)ÚtyÚcontextÚbuilderÚvals       úi/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/numba/cuda/printimpl.pyÚ
print_itemr      s   € õ Ù!#ð&ó 'ð 'ó    c                 ó¢   — | t         j                  v rd}t         j                  }nd}t         j                  }|j	                  ||| |«      }||gfS )Nz%lluz%lld)r   Úunsigned_domainÚuint64Úint64Úcast)r   r   r   r   ÚrawfmtÚdsttypeÚllds          r   Úint_print_implr      sN   € ð 
ŒU×"Ñ"Ñ"ØˆÜ—,‘,‰àˆÜ—+‘+ˆØ
�,‰,�w  R¨Ó
1€CØ�C�5ˆ=Ðr   c                 óP   — |j                  ||| t        j                  «      }d|gfS )Nz%f)r   r   Úfloat64)r   r   r   r   r   s        r   Úreal_print_implr    )   s&   € à
�,‰,�w  R¬¯©Ó
7€CØ�#�ˆ;Ðr   c                 óp   — | j                   }t        |t        «      sJ ‚d}|j                  ||«      }||gfS )Nz%s)Úliteral_valueÚ
isinstanceÚstrÚinsert_string_const_addrspace)r   r   r   ÚsigvalÚpyvalr   r   s          r   Úconst_print_implr(   /   s@   € à×Ñ€EÜ�eœSÔ!Ð!Ð!Ø€FØ
×
/Ñ
/°¸Ó
?€CØ�C�5ˆ=Ðr   c                 ó¸  — t        j                  |j                  «      }g }g }t        t	        |j
                  |«      «      D ];  \  }\  }}	t        || ||	«      \  }
}|j                  |
«       |j                  |«       Œ= dj                  |«      dz   }t        |«      dkD  r$d}t        |t        «       |j                  dd«      }| j                  ||«      }t        j                   ||«      }t        j"                  ||«      }t        j                  |j                  «      }|j%                  |||j'                  |t(        «      f«       | j+                  «       S )z½This function is a generic 'print' wrapper for arbitrary types.
    It dispatches to the appropriate 'print' implementations above
    depending on the detected real types in the signature.Ú Ú
é    zjCUDA print() cannot print more than 32 items. The raw format string will be emitted by the kernel instead.Ú%z%%)r	   Údeclare_vprintÚmoduleÚ	enumerateÚzipÚargsr   ÚappendÚextendÚjoinÚlenr
   r   Úreplacer%   r   Úmake_anonymous_structÚalloca_once_valueÚcallÚbitcastÚvoidptrÚget_dummy_value)r   r   Úsigr2   ÚvprintÚformatsÚvaluesÚiÚargtypeÚargvalÚargfmtÚargvalsr   ÚmsgÚfmtÚarrayÚarrayptrs                    r   Úprint_varargsrK   8   s+  € ô ×%Ñ% g§n¡nÓ5€Fà€GØ€Fä )¬#¨c¯h©h¸Ó*=Ö >ÑˆÑˆG�VÜ$ W¨g°wÀÓG‰ˆ�Ø�‰�vÔØ�‰�gÕð !?ð
 �X‰X�gÓ Ñ%€FÜ
ˆ4ƒy�2‚~ðNˆäˆS”,Ôà—‘  TÓ*ˆØ
×
/Ñ
/°¸Ó
@€CÜ×)Ñ)¨'°6Ó:€EÜ×(Ñ(¨°%Ó8€Hä×%Ñ% g§n¡nÓ5€FØ‡L�L�˜#˜wŸ™¨x¼ÓAÐBÔCà×"Ñ"Ó$Ð$r   N)!Ú	functoolsr   Úllvmliter   Ú
numba.corer   r   Únumba.core.errorsr   Únumba.core.imputilsr   Ú
numba.cudar	   Úwarningsr
   ÚregistryÚlowerÚPointerTypeÚIntTyper<   r   ÚregisterÚIntegerÚIntegerLiteralr   ÚFloatr    ÚStringLiteralr(   ÚprintÚVarArgÚAnyrK   © r   r   Ú<module>r`      s  ðÝ $Ý ß %Ý *Ý (Ý  Ý á‹:€Ø�‰€à
ˆ"�.‰.˜˜Ÿ™ A›Ó
'€ð
 ñ'ó ð'ð ×Ñ�U—]‘]Ó#Ø×Ñ�U×)Ñ)Ó*ñó +ó $ðð ×Ñ�U—[‘[Ó!ñó "ðð
 ×Ñ�U×(Ñ(Ó)ñó *ðñ €uˆlˆe�l‰l˜5Ÿ9™9Ó%Ó&ñ%ó 'ñ%r   