i7idZddlZddlmZmZmZmZmZmZm Z ddl m Z m Z ddl mZddlmZmZmZmZmZmZmZmZmZmZgdZGdd eZd ZGd d eZGd deZGddeZGddeZ GddeZ!GddeZ"GddeZ#GddeZ$GddeZ%GddeZ&Gdd eZ'Gd!d"eZ(Gd#d$eZ)y)%z pygments.lexers.asm ~~~~~~~~~~~~~~~~~~~ Lexers for assembly languages. :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) RegexLexerincludebygroupsusingwordsDelegatingLexerdefault)CppLexerCLexer)DLexer) TextNameNumberStringComment PunctuationOtherKeywordOperator Whitespace)GasLexer ObjdumpLexer DObjdumpLexerCppObjdumpLexer CObjdumpLexer HsailLexer LlvmLexerLlvmMirBodyLexer LlvmMirLexer NasmLexerNasmObjdumpLexer TasmLexer Ca65Lexer Dasm16LexerceZdZdZdZddgZddgZdgZdZd Z d Z d Z d e zd ze zdzZ dZ de zdzZede dzej"fde zej$dfdej$fe ej&dfdefge ej*fe efde zej$fe ej0feej2fdedfdej8dfdej:fdej:dfededg de zd zeej>ee ej*e fde zd!ze zd zeej>ee ej*e ej0e fe ej*fe ej0feej2fd"e zej0fd#ejBfdedfdej8dfdej:fdej:dfededg d$efd%efdej8fd&ej:fgd'e fgd(Z"d)Z#y*)+rz' For Gas (AT&T) assembly code. GASgasasm*.sz*.Sz text/x-gas%https://www.gnu.org/software/binutils "(\\"|[^"])*"z[\w$.@-] (?:[a-zA-Z$_]*|\.+)z(?:0[xX][a-fA-F0-9]+|#?-?\d+)%\b whitespace:\.directive-argszlock|rep(n?z)?|data\d+instruction-args[\r\n]+@#popz([;#]|//).*?\nz /[*].*?[*]/z/[*].*?\n[\w\W]*?[*]/ punctuationz([a-z0-9]+)( )(<)(z)(>)z)([-+])($z $'(.|\\')'\n\s+z/[*][\w\W]*?[*]/z[-*,.()\[\]!:{}]+)rootr5r6r2r:ctjd|tjrytjd|tjryy)Nz^\.(text|data|section)Tz^\.\w+g?)researchMtexts \/mnt/ssd/data/python-lab/ChefSystem/venv/lib/python3.12/site-packages/pygments/lexers/asm.py analyse_textzGasLexer.analyse_texths6 99.bdd ; YYy$ -.N)$__name__ __module__ __qualname____doc__namealiases filenames mimetypesurl version_addedstringchar identifiernumberregisterrrLabel AttributeFunctionr ConstantrrIntegerVariablerrSingle MultilinerHexrChartokensrFrGrErrs DenGII 1CMF D!D(72T9D@J -FZ%'H L ! # tzz * Z 1A B & 7 (: ;     ' V  : t~~ . V^^ $ t}} % V ,  7 W.. / %w'8'8& A M " L !  ""* ,V 3T; $& '"* ,Z 7 >v ET; $fnnkC D  ' V^^ $ t}} % Z ( FKK ( V ,  7 W.. / %w'8'8& A M " L !1 6J  Z  / '"3"3 4  "; / o:FxrGrcrd}ddttjttt fdtttjtfd|zdztt jtttjtt jtfd|zdztt jtttjtfd|zd z|z|zd ztttjtt jtt|fd|zd ztttjtt|fd|zd z|z|zd ztttjtt jtt fd|zd z|z|zd ztttjtt jfdtfd|zdz|zdztttjttjttjtt jfd|zdztttjttjttjfdtfg iS)z; Common objdump lexer tokens to wrap an ASM lexer. z [0-9A-Za-z]r>z(.*?)(:)( +file format )(.*?)$z"(Disassembly of section )(.*?)(:)$(z++)( )(<)(.*?)([-+])(0[xX][A-Za-z0-9]+)(>:)$z+)( )(<)(.*?)(>:)$z( *)(z +:)(\t)((?:z )+)( * )([a-zA-Z].*?)$z+:)( *\t)([a-zA-Z].*?)$z )+)( *)(.*?)$z )+)$z \t\.\.\.$z (\t\t\t)(z +:)( )([^\t]+)(\t)(.*?)([-+])(0xz+)$z+:)( )([^\t]+)(\t)(.*?)$z[^\n]+\n)rrrWrr rrr_rrYrPropertyrZr) asm_lexerhex_res rE_objdump_lexer_tokensrhos7F -[$? A2tzz;7 9ZE EZdmm$fjj+? @Z, ,Zdmm$& 'V^N *6 1& 89S STZZVZZy)+ ,V^6 6TZZy)+ ,V^N *6 1& 89I ITZZVZZU[\ ^V^N *6 1& 8 @TZZVZZH J4 & !D DV KE QTZZT]]J VZZA B& !< <TZZT]]J( )% U+ - -rGc>eZdZdZdZdgZdgZdgZdZdZ e e Z y)rz, For the output of ``objdump -dr``. objdumpz *.objdumpztext/x-objdumpr*r+N) rHrIrJrKrLrMrNrOrPrQrhrrarbrGrErrs8 DkG I!"I 1CM "8 ,FrGrc@eZdZdZdZdgZdgZdgZdZdZ fdZ xZ S)rz@ For the output of ``objdump -Sr`` on compiled D files. z d-objdumpz *.d-objdumpztext/x-d-objdumpr*r+c 8t|ttfi|yN)super__init__r rselfoptions __class__s rErozDObjdumpLexer.__init__ 99rG rHrIrJrKrLrMrNrOrPrQro __classcell__rss@rErrs9 DmGI#$I 1CM::rGrcDeZdZdZdZgdZgdZdgZdZdZ fdZ xZ S) rzB For the output of ``objdump -Sr`` on compiled C++ files. cpp-objdump)ryz c++-objdumbz cxx-objdump)z *.cpp-objdumpz *.c++-objdumpz *.cxx-objdumpztext/x-cpp-objdumpr*r+c 8t|ttfi|yrm)rnror rrps rErozCppObjdumpLexer.__init__s <;7;rGrurws@rErrs5 D;GCI%&I 1CM<feej>fdej@fde!fgd e"fgd!e#jHfd"e#jJfgd#eze&jNfd$e&fe(d%d&'e&fee&fee&fd(ezd)zezd*ze&fd+e&fd,e&fe(d-e&fd.e&fg d/Z)y0)1rz" For HSAIL assembly code. HSAILhsailhsaz*.hsailz text/x-hsailzVhttps://en.wikipedia.org/wiki/Heterogeneous_System_Architecture#HSA_Intermediate_Layerz2.2"[^"]*?"z[a-zA-Z_][\w.]*[0-9]+z (\$(c|s|d|q)z)\bz(align\(\d+\))z(width\((\d+|all)\))z(alloc\(agent\))z ((_ftz)?(_up|_down|_zero|_near))z_(u8x4|s8x4|u16x2|s16x2|u8x8|s8x8|u16x4|s16x4|u32x2|s32x2|u8x16|s8x16|u16x8|s16x8|u32x4|s32x4|u64x2|s64x2|f16x2|f16x4|f16x8|f32x2|f32x4|f64x2|u8|s8|u16|s16|u32|s32|u64|s64|b128|b8|b16|b32|b64|b1|f16|f32|f64|roimg|woimg|rwimg|samp|sig32|sig64)z ((\d+\.)|(\d*\.\d+))[eE][+-]?\d+zL0[xX](([0-9a-fA-F]+\.[0-9a-fA-F]*)|([0-9a-fA-F]*\.[0-9a-fA-F]+))[pP][+-]?\d+z?0((h|H)[0-9a-fA-F]{4}|(f|F)[0-9a-fA-F]{8}|(d|D)[0-9a-fA-F]{16})r2commentsr8z:?keyword&r0z0[xX][a-fA-F0-9]+\d+z[=<>{}\[\]()*.,:;!]|x\bz(\n|\s)+z /\*.*?\*/z//.*?\nkernargz+\$(full|base|small|large|default|zero|near))module extensionpragmaprogindirect signaturedeclkernelfunctionenablebreakexceptionsenabledetectexceptionsmaxdynamicgroupsizemaxflatgridsizemaxflatworkgroupsize requireddimrequiredgridsizerequiredworkgroupsizerequirenopartialworkgroupsr1suffixz_(|)_kernargz(nop|imagefence)\b)cleardetectexceptclockcuid debugtrapdimgetdetectexcept groupbaseptrkernargbaseptrlaneidmaxcuid maxwaveidpacketidsetdetectexceptwaveidworkitemflatabsidworkitemflatidnullptrabsbitrevcurrentworkgroupsizecurrentworkitemflatidfractncosnegnexp2nlog2nrcpnrsqrtnsinnsqrt gridgroupsgridsizenotsqrt workgroupid workgroupsize workitemabsid workitemidceilfloorrinttruncaddbitmaskborrowcarrycopysigndivremsubshlshrandorxorunpackhiunpacklomaxminfmamad bitextract bitselectshufflecmovbitalign bytealignlerpnfmamulmulhimul24himul24mad24mad24hi bitinsertcombineexpandldamovpackunpackpackcvt unpackcvtsadsementpftosstofcmpldst_eq_ne_lt_le_gt_ge_equ_neu_ltu_leu_gtu_geu_num_nan_seq_sne_slt_sle_sgt_sge_snum_snan_sequ_sneu_sltu_sleu_sgtu_sgeuatomic_ld_st_cas_add_and_exch_max_min_or_sub_wrapdec_wrapinc_xorretcvt _readonlyr_globalbrcbrsbr_scacq_screl_scar_rlx_wave_wg_agent_systemldimagestimage_v2_v3_v4_1d_2d_3d_1da_2da_1db_2ddepth _2dadepth_width_height_depth_array _channelorder _channeltype querysampler_coord_filter _addressingbarrier wavebarrierinitfbarjoinfbarwaitfbar arrivefbar leavefbar releasefbarldf activelaneidactivelanecountactivelanemaskactivelanepermutecallscallicallallocapacketcompletionsigaddqueuewriteindexcasqueuewriteindexldqueuereadindexstqueuereadindexreadonlyglobalprivategroupspillarg_upi_downi_zeroi_neari_upi_sat _downi_sat _zeroi_sat _neari_sat_supi_sdowni_szeroi_sneari _supi_sat _sdowni_sat _szeroi_sat _sneari_sat_pp_ps_sp_ss_s_p_pp_sat_ps_sat_sp_sat_ss_sat_s_sat_p_sat i[1-9]\d*)r>r2rrN)*rHrIrJrKrLrMrNrOrPrQrRrTregister_numberrV alignQual widthQual allocQual roundingMod datatypeModfloathexfloat ieeefloatrrrrWr\ AnonymousGlobalrr_Floatr[rrrr^r]rTyperrarbrGrErrs DG I I bCM F#JO069H!I'I#I6K :K 0E^HRI L ! J  V  J  %tzz 2 t}}.. / I  J  4 4 5 J  . vzz " !6:: .  % FLL ! V^^ $ ' 5+ 0* % 7,, -  ( + %w|| 4{}\[\]()*.,!]|x\bz (\n|\s+)+;.*?\n(aarch64_sve_vector_pcsaarch64_vector_pcsacq_relacquirer addrspace addrspacecastafnaliasaliaseealign alignLog2 alignstackrZ allocsizeallOnes alwaysinline alwaysInline amdgpu_cs amdgpu_es amdgpu_gfx amdgpu_gs amdgpu_hs amdgpu_kernel amdgpu_ls amdgpu_ps amdgpu_vsranyanyregcc appendingarcp argmemonlyargsarm_aapcs_vfpcc arm_aapcscc arm_apcsccashrr(r atomicrmw attributesavailable_externally avr_intrcc avr_signalccbitbitcastbitMask blockaddress blockcountr( branchFunnelbuiltinbyArgbyrefbyte byteArraybyvalcrWcallbrcalleecallercalls canAutoHidecatchcatchpadcatchret catchswitchccccccfguard_checkcccleanup cleanuppad cleanupretcmpxchgcoldcoldcccomdatcommonconstantcontract convergentcriticalcxx_fast_tlscc datalayoutdeclarer definedeplibsdereferenceabledereferenceable_or_nulldistinct dllexport dllimport dso_localdso_local_equivalentdso_preemptabledsoLocaleqexact exactmatch extern_weakexternalexternally_initializedextractelement extractvaluefaddfalsefastfastccfcmpfdivfencefilterflagsfmulfnegfpextfptosifptouifptruncfreezefremfromfsub funcFlagsrgc getelementptrghcccraguidgvhashhhvm_ccchhvmcchiddenhothotnessicmpifuncinaccessiblemem_or_argmemonlyinaccessiblememonlyinallocainboundsindir indirectbrinfo initialexecinline inlineBits inlinehintinrangeinreg insertelement insertvalueinstsintel_ocl_bicc inteldialectinternalinttoptrinvoke jumptablekind landingpadlargestlinkagelinkonce linkonce_odrliveloadlocal_unnamed_addr localdynamic localexeclshrrmetadatarminsizer monotonic msp430_intrccr mustprogressmusttailnakedrLnandnenestninfnnannoalias nobuiltin nocallback nocapture nocf_check noduplicate noduplicatesnofreenoimplicitfloatnoinlinenoInlinenomergenone nonlazybindnonnull noprofile norecurse noRecurse noredzonenoreturnnosyncnotailnotEligibleToImportnoundefnounwindnswnsznullnull_pointer_is_validnuwoeqoffsetogeogtoleoltoneopaque optforfuzzingoptnoneoptsizerordparamparams partitionpath personalityphipoison preallocatedprefixpreserve_allccpreserve_mostccrbprologue protectedptrtoint ptx_device ptx_kernelreadnonereadNoner`readOnlyreassocrefsrelbfreleaseresByArgresumer$returnDoesNotAliasreturned returns_twice safestacksamesizesanitize_addresssanitize_hwaddresssanitize_memorysanitize_memtagsanitize_threadsdivsectionselectseq_cstsextsgesgtshadowcallstackr shufflevector sideeffectsignextsingle singleImplsingleImplNamesitofpsizeM1sizeM1BitWidthslesltsource_filename speculatablespeculative_load_hardening spir_func spir_kernelsplatsremsretsspsspreq sspstrongstorestrictfpr summariessummaryswiftcc swifterror swiftselfswitch syncscopetailtailcctarget thread_localtotokentripletruertypetypeCheckedLoadConstVCallstypeCheckedLoadVCallstypeidtypeidCompatibleVTable typeIdInfotypeTestAssumeConstVCallstypeTestAssumeVCalls typeTestRes typeTestsudivuequgeugtuitofpuleultumaxuminundefune uniformRetVal uniqueRetValunknown unnamed_addruno unordered unreachableunsatunwindurem uselistorderuselistorder_bbuwtableva_argvarFlagsvariablevcall_visibilityvFuncIdvirtFuncvirtualConstPropvoidvolatilevscale vTableFuncsweakweak_odr webkit_jsccwin64ccwithinwpdReswpdResolutions writeonlyx x86_64_sysvccx86_fastcallcc x86_intrccx86_mmx x86_regcallcc x86_stdcallccx86_thiscallccx86_vectorcallccxchgrzeroextzeroinitializerzextimmarg willreturnr1r)rhalfbfloatrdoublefp128x86_fp80 ppc_fp128labelr;rx86_amxrptrr)r>r2rN)rHrIrJrKrLrPrMrNrOrQrRrT block_labelrrrWr\rrrrrrrrrrrarbrGrErrgs D .ChGIIMF+f4s:J#j0K L !7 "DJJ / I  J  . J  4 4 5 dmm-- . dmm** + dmm** + J  . dmm-- . V^V $ )6 2 )?rz9 For LLVM MIR examples without the YAML wrapper. z LLVM-MIR Body%https://llvm.org/docs/MIRLangRef.htmlz llvm-mir-body2.6)liveins successorsr3rz4bb\.[0-9]+(\.[a-zA-Z0-9_.-]+)?( \(address-taken\))?:z5bb\.[0-9]+ \(%[a-zA-Z0-9_.-]+\)( \(address-taken\))?:z%bb\.[0-9]+(\.\w+)?z%stack\.[0-9]+(\.\w+\.addr)?z %subreg\.\w+z%[a-zA-Z0-9_]+ *vregrazintrinsic\(\@[a-zA-Z0-9_.]+\)) rrCrrrrrrrrz intpred\(z\))ryr) rerkrhrgrjrirrrrz floatpred\(z\$\w+=a(G_ANYEXT|G_[SZ]EXT|G_SEXT_INREG|G_TRUNC|G_IMPLICIT_DEF|G_PHI|G_FRAME_INDEX|G_GLOBAL_VALUE|G_INTTOPTR|G_PTRTOINT|G_BITCAST|G_CONSTANT|G_FCONSTANT|G_VASTART|G_VAARG|G_CTLZ|G_CTLZ_ZERO_UNDEF|G_CTTZ|G_CTTZ_ZERO_UNDEF|G_CTPOP|G_BSWAP|G_BITREVERSE|G_ADDRSPACE_CAST|G_BLOCK_ADDR|G_JUMP_TABLE|G_DYN_STACKALLOC|G_ADD|G_SUB|G_MUL|G_[SU]DIV|G_[SU]REM|G_AND|G_OR|G_XOR|G_SHL|G_[LA]SHR|G_[IF]CMP|G_SELECT|G_GEP|G_PTR_MASK|G_SMIN|G_SMAX|G_UMIN|G_UMAX|G_[US]ADDO|G_[US]ADDE|G_[US]SUBO|G_[US]SUBE|G_[US]MULO|G_[US]MULH|G_FNEG|G_FPEXT|G_FPTRUNC|G_FPTO[US]I|G_[US]ITOFP|G_FABS|G_FCOPYSIGN|G_FCANONICALIZE|G_FMINNUM|G_FMAXNUM|G_FMINNUM_IEEE|G_FMAXNUM_IEEE|G_FMINIMUM|G_FMAXIMUM|G_FADD|G_FSUB|G_FMUL|G_FMA|G_FMAD|G_FDIV|G_FREM|G_FPOW|G_FEXP|G_FEXP2|G_FLOG|G_FLOG2|G_FLOG10|G_FCEIL|G_FCOS|G_FSIN|G_FSQRT|G_FFLOOR|G_FRINT|G_FNEARBYINT|G_INTRINSIC_TRUNC|G_INTRINSIC_ROUND|G_LOAD|G_[ZS]EXTLOAD|G_INDEXED_LOAD|G_INDEXED_[ZS]EXTLOAD|G_STORE|G_INDEXED_STORE|G_ATOMIC_CMPXCHG_WITH_SUCCESS|G_ATOMIC_CMPXCHG|G_ATOMICRMW_(XCHG|ADD|SUB|AND|NAND|OR|XOR|MAX|MIN|UMAX|UMIN|FADD|FSUB)|G_FENCE|G_EXTRACT|G_UNMERGE_VALUES|G_INSERT|G_MERGE_VALUES|G_BUILD_VECTOR|G_BUILD_VECTOR_TRUNC|G_CONCAT_VECTORS|G_INTRINSIC|G_INTRINSIC_W_SIDE_EFFECTS|G_BR|G_BRCOND|G_BRINDIRECT|G_BRJT|G_INSERT_VECTOR_ELT|G_EXTRACT_VECTOR_ELT|G_SHUFFLE_VECTOR)\bz6(COPY|PHI|INSERT_SUBREG|EXTRACT_SUBREG|REG_SEQUENCE)\b)killedimplicitz (i[0-9]+)( +) constantintz(half|float|double) + constantfloatintegerz(::)( *)mmo;.*z [a-zA-Z0-9_]+z [(), \n]+z(?=.)r9rz ( *)(:(?!:)))r9vreg_bank_or_classz( *)(\() vreg_typez( *)(_)z( *)([a-zA-Z0-9_]+)z( *)([sp][0-9]+)z( *)(<[0-9]+ *x *[sp][0-9]+>)z\(z +) r6ronintor rr=rrrrz%ir\.[a-zA-Z0-9_.-]+z%ir-block\.[a-zA-Z0-9_.-]+z[-+],z\), \(z-?[0-9]+z-?[0-9]+\.[0-9]+(e[+-][0-9]+)?z\@[a-zA-Z0-9_.]+) r>rrrrr rrrraN) rHrIrJrKrLrPrMrNrOrQrrrrWr\rrBuiltinrr]rrrrrr Magicrrr[rrarbrGrErrs! D 1CGIIM ,S 97 C Ddjj Q Etzz R #TZZ 0 ,d 3 d # $-- 8 H  -t}}/C/C D #/?@D  N "*8H \\ v}} % 8 $0\\1 4G \\ ) *G 4 x jA= Q %w||_ E I  (8Z8% @ W  t $ 4 OH V I  tV $ G  tV $ hz7;=[ \ (:t4k B tV $  *dmm.A.AB C #Xj$--%H I (:t4k B tV $  !(:w||"D E -x GLL/Q R D& ! tV $  DM J  @A  %d + *D 1 h  I  H  ;    D& ! !&..134fllCD')=)=>?y}FrGrceZdZdZdZdZdgZdgZdZde fde d fd e d fd e fgd e dfde e efgde fd e dfde dfedde dfedde dfedde fde dfde fdefg defedgdej&fedgdefedgd e d fd!e e efd"e e efgd#Zy$)%raS Lexer for the overall LLVM MIR document format. MIR is a human readable serialization format that's used to represent LLVM's machine specific intermediate representation. It allows LLVM's developers to see the state of the compilation process at various points, as well as test individual pieces of the compiler. zLLVM-MIRrzllvm-mirz*.mirr#.*z--- \|$llvm_irz---llvm_mirz[^-#]+|.z(\.\.\.|(?=---))r9z((?:.|\n)+?)(?=(\.\.\.|---))zname:rL) alignmentr3rrU) legalizedregBankSelectedtracksRegLivenessselectedexposesReturnsTwiceboolean) registersstack fixedStackr frameInfomachineFunctionInfoz body: *\| llvm_mir_bodyz.+r<z[^\n]+z *(true|false)z *[0-9]+z#pop:2z((?:.|\n)+?)(?=\.\.\.|---)z(?!\.\.\.|---)((?:.|\n)+))r>r(r)rLr0rUr6N)rHrIrJrKrLrPrMrNrQrrr rrrrrrr r$rrrarbrGrErrs D 1ClG IM W  ) , Wj ) $   !'6 2 ,huY7G.H I  W  '6 2 w ' ? ' 3 7 ' 4+ ' )7O 4 DM J ) .  FO  - FO & ! FO !'8 4 *HU;K5L,M N*8E:J4K+L M  g=FrGrc\eZdZdZdZdgZgdZdgZdZdZ dZ d Z d Z d Z d Zd ZedzezZdZdZdZdZdZdZej0ej2zZdej8dfede dzej>fde de ejBe"e#jHdfee#dfee#jHdfe ejJdfde"fgee&fe e'jPfe e'jRfee'jTfee'jVfee'jXfedeejZfe ej\fde"dfedg dej8fd ej^dfd!ej8dfgd!e"fd"e"fd#ej^fd$ej^fgd%e0fd&e1fd'e#jBfee1jdfee#jffgd(Z4d)Z5y*)+r z) For Nasm (Intel) assembly code. NASMnasm)*.asm*.ASMz*.nasmz text/x-nasmzhttps://nasm.usr+g?z[a-z$._?][\w$.?#@~]*,(?:0x[0-9a-f]+|$0[0-9a-f]*|[0-9]+[0-9a-f]*h)[0-7]+q[01]+br\.e?/"(\\"|[^"\n])*"|'(\\'|[^'\n])*'|`(\\`|[^`\n])*`(?:res|d)[bwdqt]|timesz(r[0-9][0-5]?[bwd]?|[a-d][lh]|[er]?[a-d]x|[er]?[sb]p|[er]?[sd]i|[c-gs]s|st[0-7]|mm[0-7]|cr[0-4]|dr[0-367]|tr[3-7]|k[0-7]|[xyz]mm(?:[12][0-9]?|3[01]?|[04-9]))\bzseg|wrt|strict|rel|absbyte|[dq]?wordz(?:BITS|USE16|USE32|SECTION|SEGMENT|ABSOLUTE|EXTERN|GLOBAL|ORG|ALIGN|STRUC|ENDSTRUC|COMMON|CPU|GROUP|UPPERCASE|IMPORT|EXPORT|LIBRARY|MODULE)(?=\s)^\s*%preprocr2r3rdz )(\s+)(equ)r6r7r:r9[^;\n]+rr<[ \t]+rr'z [,{}():\[\]]+z[&|^<>+*/%~-]+[$]+r>r6rDr2r:cPtjd|tjryy)NPROCF)r@match IGNORECASErCs rErFzNasmLexer.analyse_text#s 88GT2== 1 2rGN)6rHrIrJrKrLrMrNrOrPrQpriorityrThexnoctnbinndecnfloatnrRdeclkwrVwordopr directivesr@rL MULTILINErrPreprocrrrWrrZrr DeclarationrYrrr_OctBinrr[r$r\r]rrWordrrarFrbrGrEr r sD DhG,II CMH(J :D D D D G^d "F KF &F:H'F D2J MMBLL (Ew 2 L ! # tzz **[ ) G4G4GH" $"4 5 W((*< = (: ;  $  V  6::  6::  6::  V\\ " 6>> " M " t|| $  ' V , L !   )  / GOOV , J   # W^^ $ W^^ $  { +  ) g&& ' X]] # 7<<  K,F\rGr c>eZdZdZdZdgZdgZdgZdZdZ e e Z y)r!z4 For the output of ``objdump -d -M intel``. z objdump-nasmz*.objdump-intelztext/x-nasm-objdumpr*z2.0N) rHrIrJrKrLrMrNrOrPrQrhr rarbrGrEr!r!)s: DG"#I&'I 1CM "9 -FrGr!ceZdZdZdZdgZgdZdgZdZdZ dZ d Z d Z d Z d Zed zezZdZdZdZdZdZdZdZej0ej2zZdej8dfede dzej>fee dfde dede!ejDe#e jHdfee jHdfe ejJdfde#fgee&fe e'jPfe e'jRfe e'jTfee'jVfee'jXfedeejZfe ej\fde!e/e#ej`e#fde#d fedg d!ej8fd"ej`d fd#ej8d fgd$e#fd%e!e/e#fd&e#fd'ej`fgd(e1fd)e2fd*e jDfee2jffee jhfgd+Z5d,Z6y-).r"z3 For Tasm (Turbo Assembler) assembly code. TASMtasm)r:r;z*.tasmz text/x-tasmz-https://en.wikipedia.org/wiki/Turbo_Assemblerr+z[@a-z$._?][\w$.?#@~]*r<r=r>rr?r@rAzs(r[0-9][0-5]?[bwd]|[a-d][lh]|[er]?[a-d]x|[er]?[sb]p|[er]?[sd]i|[c-gs]s|st[0-7]|mm[0-7]|cr[0-4]|dr[0-367]|tr[3-7])\bzseg|wrt|strictrBzBITS|USE16|USE32|SECTION|SEGMENT|ABSOLUTE|EXTERN|GLOBAL|ORG|ALIGN|STRUC|ENDSTRUC|ENDS|COMMON|CPU|GROUP|UPPERCASE|INCLUDE|EXPORT|LIBRARY|MODULE|PROC|ENDP|USES|ARG|DATASEG|UDATASEG|END|IDEAL|P386|MODEL|ASSUME|CODESEG|SIZEzdb|dd|dw|T[A-Z][a-z]+rCrDr2r3r6rdz)(\s+)(rr7r:z(\\)(\s*)(;.*)([\r\n])r9rErr<z[\n\r]z (\\)([\n\r])rFrz [,():\[\]]+z[&|^<>+*=/%~-]+rGrHcPtjd|tjryy)NrJT)r@rKIrCs rErFzTasmLexer.analyse_texts 88GT244 ( )rGN)7rHrIrJrKrLrMrNrOrPrQrTrNrOrPrQrRrRrSrVrTrrUdatatyper@rLrVrrrWrrrWrrrZrrXrYrrr_rYrZrr[r$r\r r]rrr[rrarFrbrGrEr"r"7sf DhG,II 9CM)J :D D D D G^d "F KF &F8HF D4J )H MMBLL (Ew 2 L ! # tzz * "4 5*WXJa 0 G4G4GH" $W((*< = (: ;  $  V  6::  6::  6::  V\\ " 6>> " M " t|| $  ' & dJ C E V , L ! " )  / GOOV ,  # htZ8 9  # W^^ $  [ )  * g&& ' X]] # 7<<  Q/FbrGr"c(eZdZdZdZdgZdgZdZdZe jZ dde jfd efd ej fd efd ej$fd efdefdej*fdej.fdej0fdej2fdefdefg iZdZy)r#z% For ca65 assembler sources. zca65 assemblerca65r)zhttps://cc65.github.ioz1.6r>rr=z[a-z_.@$][\w.@$]*:z((ld|st)[axy]|(in|de)[cxy]|asl|lsr|ro[lr]|adc|sbc|cmp|cp[xy]|cl[cvdi]|se[cdi]|jmp|jsr|bne|beq|bpl|bmi|bvc|bvs|bcc|bcs|p[lh][ap]|rt[is]|brk|nop|ta[xy]|t[xy]a|txs|tsx|and|ora|eor|bit)\bz\.\w+z[-+~*/^&|!<>=]z "[^"\n]*.z '[^'\n]*.z\$[0-9a-f]+|[0-9a-f]+h\brz%[01]+z [#,.:()=\[\]]z[a-z_.@$][\w.@$]*cPtjd|tjryy)Nz^\s*;g?)r@rArV)rqrDs rErFzCa65Lexer.analyse_texts 99XtR\\ 2 3rGN)rHrIrJrKrLrMrNrPrQr@rLrrr]rrrWrPseudorrr`rr_r[rZrrarFrbrGrEr#r#s DhGI "CM MME  W^^ $ Z "DJJ /! "w~~ &  ) 6 " 6;; ' (&** 5 V^^ $  # { + !4 (! F*rGr#c ReZdZdZdZdZdgZddgZdgZdZ gd Z gd Z d Z d e zd ze zdzZ dZdZddj!e zdzZde zdzZdZdZedde zej.fe dzej.feej0dfde zej0dfdefgeej6feej6feefge efedgdefd ed!fed"edgded!fd#ed!fedgd$efd%ed&fed"ed'gd$efedeefed'gd(efd)efd*efgd+Zy,)-r$z For DCPU-16 Assembly. DASM16z http://0x10c.com/doc/dcpu-16.txtdasm16z*.dasm16z*.dasmz text/x-dasm16z2.4)$SETADDSUBMULMLIDIVDVIMODMDIANDBORXORSHRASRSHLIFBIFCIFEIFNIFGIFAIFLIFUADXSBXSTISTDJSRINTIAGIASRFIIAQHWNHWQHWI)ABCXYZraJSPPCEXPOPPEEKPUSHz[a-zA-Z0-9_$@.]r-r.r/z[+-]?(?:0[xX][a-zA-Z0-9]+|\d+)z0b[01_]+z(?i)(rrz'\\?'r,c#K|jd}|j|jvrtjntj }|j ||fyw)Nr)rcupper REGISTERSrr\rWstart)lexerrKidentklasss rEguess_identifierzDasm16Lexer.guess_identifiersF A!&%//!A tzzkkmUE))sA$A&r2r3r6r4 data-argsr7numericz\+z\]r9rez;.*?$r#z\[derefinstruction-liner<r=r)r>rrerrr6rr2N) rHrIrJrKrLrPrMrNrOrQ INSTRUCTIONSrrSrTrU binary_numberjoin instruction single_charrRrrrrWrYrrr[rrrrarbrGrEr$r$s D ,CjGX&I !IM LI D!D(72T9D@J .FMSXXl33c9KD.3&K F* L ! : tzz * # tzz * $--); < Z  <  $  FNN + V^^ $ & ! ) * I  K K ( EN L !  V , w ' L ! ;  K ) EN & '  ;  I  V  & '  J  Z   a5FrGr$)*rKr@pygments.lexerrrrrrrr pygments.lexers.c_cppr r pygments.lexers.dr pygments.tokenr rrrrrrrrr__all__rrhrrrrrrrrr r!r"r#r$rbrGrErs 2$))) ' RzRj2j -: - :O :