U
    luf–  ã                   @   sZ   d Z ddlmZmZmZ ddlmZmZmZm	Z	m
Z
mZmZmZ dgZG dd„ deƒZdS )zÈ
    pygments.lexers.ptx
    ~~~~~~~~~~~~~~~~~~~

    Lexer for other PTX language.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚincludeÚwords)ÚCommentÚKeywordÚNameÚStringÚNumberÚPunctuationÚ
WhitespaceÚOperatorÚPtxLexerc                   @   sî   e Zd ZdZdZdZdgZdgZdgZdZ	dZ
d	e	 d
 Zde d Zedƒed ejfedƒde ejfdejjfde	 efeejfdefdefdefdefdefgdefdefgedƒefedƒejfedƒejfedƒejfgdœZdS ) r   z}
    For NVIDIA `PTX <https://docs.nvidia.com/cuda/parallel-thread-execution/>`_
    source.

    .. versionadded:: 2.16
    ZPTXz7https://docs.nvidia.com/cuda/parallel-thread-execution/z*.ptxZptxz
text/x-ptxz"[^"]*?"z[a-zA-Z0-9_$]z([-a-zA-Z$._][\w\-$.]*|ú)ú(z|(\d+))Ú
whitespacez\s*:Úkeywordú%z%\d+zc?ú;z[*+-/]z0[xX][a-fA-F0-9]+z,-?\d+(?:[.]\d+)?(?:[eE][-+]?\d+(?:[.]\d+)?)?z[=<>{}\[\]()*.,!]|x\bz	(\n|\s+)+z//.*?\n)„ÚabsÚdiscardÚminZshfZvaddZ
activemaskÚdivZmmaZshflZvadd2ÚaddZdp2aZmovZshlZvadd4ZaddcZdp4aZ	movmatrixZshrZvavrg2ZallocaZelectÚmulÚsinZvavrg4ÚandZex2Zmul24ZslctZvmadZapplypriorityÚexitZmultimemÚsqrtZvmaxZatomZfenceZ	nanosleepÚstZvmax2ÚbarÚfmaÚnegZstackrestoreZvmax4ZbarrierÚfnsÚnotZ	stacksaveZvminZbfeZ
getctarankÚorZstmatrixZvmin2ZbfiZgriddepcontrolZpmeventÚsubZvmin4ZbfindZisspacepZpopcZsubcZvoteZbmskZistypepÚprefetchZsuldZvsetZbraZldZ	prefetchuZsuqZvset2ZbrevZldmatrixZprmtZsuredZvset4ZbrkptZlduZrcpZsustZvshlZbrxZlg2ZredZszextZvshrÚcallZlop3ZreduxÚtanhZvsubZclzZmadÚremZtestpZvsub2ZcnotZmad24ÚretZtexZvsub4ÚcopysignZmadcZrsqrtZtld4ZwgmmaÚcosZmapaZsadZtrapZwmmaÚcpÚmatchZselpZtxqÚxorZcreatepolicyÚmaxÚsetZvabsdiffÚcvtZmbarrierZ
setmaxnregZ	vabsdiff2ZcvtaZmembarZsetpZ	vabsdiff4)
Úregú.sregú.constú.globalú.localú.paramú.sharedú.texz.wideú.loc)#z.address_sizez.explicitclusterz.maxnregz.sectionz.aliasz.externz.maxntidr9   z.alignz.filez.minnctapersmr4   z.branchtargetsz.funcz	.noreturnz.targetz.callprototyper6   r8   r:   z.calltargetsr;   z.pragmaz.versionz.commonr7   z.regz.visibler5   z.maxclusterrankz.reqnctaperclusterz.weakz.entryz.maxnctapersmz.reqntid)z.s8z.s16z.s32z.s64z.u8z.u16z.u32z.u64z.f16z.f16x2z.f32z.f64z.b8z.b16z.b32z.b64z.pred)Úrootr   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚ	filenamesÚaliasesÚ	mimetypesÚstringZ	followsymÚ
identifierZblock_labelr   r   ZLabelÚVariableZ	Anonymousr   r
   r   r	   r   r   r   r   ZPseudoZReservedÚTypeÚtokens© rK   rK   ú7/tmp/pip-unpacked-wheel-7eq1ciah/pygments/lexers/ptx.pyr      sP   

ïþåü	÷úÐæN)r@   Zpygments.lexerr   r   r   Zpygments.tokenr   r   r   r   r	   r
   r   r   Ú__all__r   rK   rK   rK   rL   Ú<module>   s   
(