/usr/share/highlight/langDefs/assembler.lang is in highlight-common 3.18-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | -- Language definition generated by lang2to3
Description="Assembler"
Digits=[[ (?:0x|0X)[0-9a-fA-F]+|\d*[\.\_]?\d+(?:[eE][\-\+]\d+)?[bBhHlLuU]* ]]
Keywords={
{ Id=1,
List={"aaa", "aad", "aam", "aas", "adc", "add", "and", "arpl", "bound",
"bsf", "bsr", "bswap", "bt", "btc", "btr", "bts", "call", "cbw", "cdq", "clc",
"cld", "cli", "clts", "cmc", "cmp", "cmps", "cmpsb", "cmpsd", "cmpsw",
"cmpxchg", "cwd", "cwde", "daa", "das", "dec", "div", "enter", "esc", "f2xm1",
"fabs", "fadd", "faddp", "fbld", "fbstp", "fchs", "fclex", "fcom", "fcomp",
"fcompp", "fcos", "fdecstp", "fdisi", "fdiv", "fdivp", "fdivr", "fdivrp",
"feni", "ffree", "fiadd", "ficom", "ficomp", "fidiv", "fidivr", "fild", "fimul",
"fincstp", "finit", "fist", "fistp", "fisub", "fisubr", "fld", "fld1", "fldcw",
"fldenv", "fldl2e", "fldl2t", "fldlg2", "fldln2", "fldpi", "fldz", "fmul",
"fmulp", "fnclex", "fndisi", "fneni", "fninit", "fnop", "fnsave", "fnstcw",
"fnstenv", "fnstsw", "fpatan", "fprem", "fprem1", "fptan", "frndint", "frstor",
"fsave", "fscale", "fsetpm", "fsin", "fsincos", "fsqrt", "fst", "fstcw",
"fstenv", "fstp", "fstsw", "fsub", "fsubp", "fsubr", "fsubrp", "ftst", "fucom",
"fucomp", "fucompp", "fwait", "fxam", "fxch", "fxtract", "fyl2x", "fyl2xp1", "hlt", "idiv", "imul",
"in", "inc", "insb", "insd", "insw", "int", "into", "invd", "invlpg", "iret",
"iretd", "ja", "jae", "jb", "jbe", "jc", "jcxz", "je", "jecxz", "jg", "jge",
"jl", "jle", "jmp", "jna", "jnae", "jnb", "jnbe", "", "jnc", "jne", "jng",
"jnge", "jnl", "jnle", "jno", "jnp", "jns", "jnz", "jo", "jp", "jpe", "jpo",
"js", "jz", "lahf", "lar", "lds", "lea", "leave", "les", "lfs", "lgdt", "lgs",
"lidt", "lldt", "lmsw", "lock", "lods", "lodsb", "lodsd", "lodsw", "loop",
"loopd", "loopde", "loopdne", "loopdnz", "loopdz", "loope", "loopne", "loopnz",
"loopz", "lsl", "lss", "ltr", "mov", "movs", "movsb", "movsd", "movsw", "movsx",
"movzx", "mul", "neg", "nop", "not", "or", "out", "outsb", "outsd", "outsw",
"pop", "popa", "popad", "popf", "popfd", "push", "pusha", "pushad", "pushf",
"pushfd", "rcl", "rcr", "rep", "repe", "repne", "repnz", "repz", "ret", "retf",
"retn", "rol", "ror", "sahf", "sal", "sar", "sbb", "scas", "scasb", "scasd",
"scasw", "segcs", "segds", "seges", "segfs", "seggs", "segss", "seta", "setae", "setb",
"setbe", "setc", "sete", "setg", "setge", "setl", "setle", "setna", "setnae",
"setnb", "setnbe", "setnc", "setne", "setng", "setnge", "setnl", "setnle",
"setno", "setnp", "setns", "setnz", "seto", "setp", "setpe", "setpo", "sets",
"setz", "sgdt", "shl", "shld", "shr", "shrd", "sidt", "sldt", "smsw", "stc",
"std", "sti", "stos", "stosb", "stosd", "stosw", "str", "sub", "test", "verr",
"verw", "wait", "wbinvd", "xadd", "xchg", "xlat", "xor", "assume", "omment",
"db", "dd", "dq", "dt", "dw", "end", "endm", "endp", "ends", "eq", "equ",
"exitm", "ex", "trn", "far", "ge", "group", "gt", "include", "label", "large",
"le", "length", "local", "lt", "macro", "mask", "name", "near", "org", "page",
"proc", "public", "purge", "record", "rept", "seg", "segment", "short", "size",
"small", "struc", "subttl", "symtype", "this", "title", "width", "section",
"global", "align", "invoke" , "struct", "import", "entry"},
},
{ Id=2,
List={"ah", "al", "and", "ax", "bh", "bl", "bp", "bx", "byte", "ch", "cl",
"cs", "cx", "dh", "di", "dl", "ds", "dword", "dx", "eax", "ebp", "ebx", "ecx",
"edi", "edx", "eip", "es", "esi", "esp", "fs", "gs", "high", "low", "mod",
"not", "offset", "or", "ptr", "qword", "shl", "shr", "si", "sp", "ss", "st",
"tbyte", "type", "word", "xor"},
},
{ Id=3,
Regex=[[\w+\:]]
},
}
Strings={
Delimiter=[["|']],
}
IgnoreCase=true
Comments={
{ Block=false,
Delimiter= { [[;]] },
},
{ Block=true,
Nested=false,
Delimiter= { [[\{]],[[\}]],}
--FIXME number of delimiters nok
}
}
Operators=[[\(|\)|\[|\]|\,|\:|\&|<|>|\!|\=|\/|\*|\%|\+|\-|\@|\?]]
|