!function(i){"object"==typeof exports&&"object"==typeof module?i(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],i):i(CodeMirror)}(function(i){"use strict";i.defineMode("gas",function(i,t){function l(i,t){for(var l,n=!1;null!=(l=i.next());){if(l===t&&!n)return!1;n=!n&&"\\"===l}return n}function n(i,t){for(var l,n=!1;null!=(l=i.next());){if("/"===l&&n){t.tokenize=null;break}n="*"===l}return"comment"}var e=[],r="",b={".abort":"builtin",".align":"builtin",".altmacro":"builtin",".ascii":"builtin",".asciz":"builtin",".balign":"builtin",".balignw":"builtin",".balignl":"builtin",".bundle_align_mode":"builtin",".bundle_lock":"builtin",".bundle_unlock":"builtin",".byte":"builtin",".cfi_startproc":"builtin",".comm":"builtin",".data":"builtin",".def":"builtin",".desc":"builtin",".dim":"builtin",".double":"builtin",".eject":"builtin",".else":"builtin",".elseif":"builtin",".end":"builtin",".endef":"builtin",".endfunc":"builtin",".endif":"builtin",".equ":"builtin",".equiv":"builtin",".eqv":"builtin",".err":"builtin",".error":"builtin",".exitm":"builtin",".extern":"builtin",".fail":"builtin",".file":"builtin",".fill":"builtin",".float":"builtin",".func":"builtin",".global":"builtin",".gnu_attribute":"builtin",".hidden":"builtin",".hword":"builtin",".ident":"builtin",".if":"builtin",".incbin":"builtin",".include":"builtin",".int":"builtin",".internal":"builtin",".irp":"builtin",".irpc":"builtin",".lcomm":"builtin",".lflags":"builtin",".line":"builtin",".linkonce":"builtin",".list":"builtin",".ln":"builtin",".loc":"builtin",".loc_mark_labels":"builtin",".local":"builtin",".long":"builtin",".macro":"builtin",".mri":"builtin",".noaltmacro":"builtin",".nolist":"builtin",".octa":"builtin",".offset":"builtin",".org":"builtin",".p2align":"builtin",".popsection":"builtin",".previous":"builtin",".print":"builtin",".protected":"builtin",".psize":"builtin",".purgem":"builtin",".pushsection":"builtin",".quad":"builtin",".reloc":"builtin",".rept":"builtin",".sbttl":"builtin",".scl":"builtin",".section":"builtin",".set":"builtin",".short":"builtin",".single":"builtin",".size":"builtin",".skip":"builtin",".sleb128":"builtin",".space":"builtin",".stab":"builtin",".string":"builtin",".struct":"builtin",".subsection":"builtin",".symver":"builtin",".tag":"builtin",".text":"builtin",".title":"builtin",".type":"builtin",".uleb128":"builtin",".val":"builtin",".version":"builtin",".vtable_entry":"builtin",".vtable_inherit":"builtin",".warning":"builtin",".weak":"builtin",".weakref":"builtin",".word":"builtin"},u={},a=(t.architecture||"x86").toLowerCase();return"x86"===a?function(i){r="#",u.ax="variable",u.eax="variable-2",u.rax="variable-3",u.bx="variable",u.ebx="variable-2",u.rbx="variable-3",u.cx="variable",u.ecx="variable-2",u.rcx="variable-3",u.dx="variable",u.edx="variable-2",u.rdx="variable-3",u.si="variable",u.esi="variable-2",u.rsi="variable-3",u.di="variable",u.edi="variable-2",u.rdi="variable-3",u.sp="variable",u.esp="variable-2",u.rsp="variable-3",u.bp="variable",u.ebp="variable-2",u.rbp="variable-3",u.ip="variable",u.eip="variable-2",u.rip="variable-3",u.cs="keyword",u.ds="keyword",u.ss="keyword",u.es="keyword",u.fs="keyword",u.gs="keyword"}():"arm"!==a&&"armv6"!==a||function(i){r="@",b.syntax="builtin",u.r0="variable",u.r1="variable",u.r2="variable",u.r3="variable",u.r4="variable",u.r5="variable",u.r6="variable",u.r7="variable",u.r8="variable",u.r9="variable",u.r10="variable",u.r11="variable",u.r12="variable",u.sp="variable-2",u.lr="variable-2",u.pc="variable-2",u.r13=u.sp,u.r14=u.lr,u.r15=u.pc,e.push(function(i,t){if("#"===i)return t.eatWhile(/\w/),"number"})}(),{startState:function(){return{tokenize:null}},token:function(i,t){if(t.tokenize)return t.tokenize(i,t);if(i.eatSpace())return null;var a,o,c=i.next();if("/"===c&&i.eat("*"))return t.tokenize=n,n(i,t);if(c===r)return i.skipToEnd(),"comment";if('"'===c)return l(i,'"'),"string";if("."===c)return i.eatWhile(/\w/),o=i.current().toLowerCase(),(a=b[o])||null;if("="===c)return i.eatWhile(/\w/),"tag";if("{"===c)return"braket";if("}"===c)return"braket";if(/\d/.test(c))return"0"===c&&i.eat("x")?(i.eatWhile(/[0-9a-fA-F]/),"number"):(i.eatWhile(/\d/),"number");if(/\w/.test(c))return i.eatWhile(/\w/),i.eat(":")?"tag":(o=i.current().toLowerCase(),(a=u[o])||null);for(var s=0;s<e.length;s++)if(a=e[s](c,i,t))return a},lineComment:r,blockCommentStart:"/*",blockCommentEnd:"*/"}})});