{"version":3,"sources":["jsdelivr-header.js","/npm/codemirror@5.65.6/mode/gas/gas.js"],"names":[],"mappings":"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","file":"/npm/codemirror@5.65.6/mode/gas/gas.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/codemirror@5.65.6/mode/gas/gas.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/5/LICENSE\n\n(function(mod) {\n  if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n    mod(require(\"../../lib/codemirror\"));\n  else if (typeof define == \"function\" && define.amd) // AMD\n    define([\"../../lib/codemirror\"], mod);\n  else // Plain browser env\n    mod(CodeMirror);\n})(function(CodeMirror) {\n\"use strict\";\n\nCodeMirror.defineMode(\"gas\", function(_config, parserConfig) {\n  'use strict';\n\n  // If an architecture is specified, its initialization function may\n  // populate this array with custom parsing functions which will be\n  // tried in the event that the standard functions do not find a match.\n  var custom = [];\n\n  // The symbol used to start a line comment changes based on the target\n  // architecture.\n  // If no architecture is pased in \"parserConfig\" then only multiline\n  // comments will have syntax support.\n  var lineCommentStartSymbol = \"\";\n\n  // These directives are architecture independent.\n  // Machine specific directives should go in their respective\n  // architecture initialization function.\n  // Reference:\n  // http://sourceware.org/binutils/docs/as/Pseudo-Ops.html#Pseudo-Ops\n  var directives = {\n    \".abort\" : \"builtin\",\n    \".align\" : \"builtin\",\n    \".altmacro\" : \"builtin\",\n    \".ascii\" : \"builtin\",\n    \".asciz\" : \"builtin\",\n    \".balign\" : \"builtin\",\n    \".balignw\" : \"builtin\",\n    \".balignl\" : \"builtin\",\n    \".bundle_align_mode\" : \"builtin\",\n    \".bundle_lock\" : \"builtin\",\n    \".bundle_unlock\" : \"builtin\",\n    \".byte\" : \"builtin\",\n    \".cfi_startproc\" : \"builtin\",\n    \".comm\" : \"builtin\",\n    \".data\" : \"builtin\",\n    \".def\" : \"builtin\",\n    \".desc\" : \"builtin\",\n    \".dim\" : \"builtin\",\n    \".double\" : \"builtin\",\n    \".eject\" : \"builtin\",\n    \".else\" : \"builtin\",\n    \".elseif\" : \"builtin\",\n    \".end\" : \"builtin\",\n    \".endef\" : \"builtin\",\n    \".endfunc\" : \"builtin\",\n    \".endif\" : \"builtin\",\n    \".equ\" : \"builtin\",\n    \".equiv\" : \"builtin\",\n    \".eqv\" : \"builtin\",\n    \".err\" : \"builtin\",\n    \".error\" : \"builtin\",\n    \".exitm\" : \"builtin\",\n    \".extern\" : \"builtin\",\n    \".fail\" : \"builtin\",\n    \".file\" : \"builtin\",\n    \".fill\" : \"builtin\",\n    \".float\" : \"builtin\",\n    \".func\" : \"builtin\",\n    \".global\" : \"builtin\",\n    \".gnu_attribute\" : \"builtin\",\n    \".hidden\" : \"builtin\",\n    \".hword\" : \"builtin\",\n    \".ident\" : \"builtin\",\n    \".if\" : \"builtin\",\n    \".incbin\" : \"builtin\",\n    \".include\" : \"builtin\",\n    \".int\" : \"builtin\",\n    \".internal\" : \"builtin\",\n    \".irp\" : \"builtin\",\n    \".irpc\" : \"builtin\",\n    \".lcomm\" : \"builtin\",\n    \".lflags\" : \"builtin\",\n    \".line\" : \"builtin\",\n    \".linkonce\" : \"builtin\",\n    \".list\" : \"builtin\",\n    \".ln\" : \"builtin\",\n    \".loc\" : \"builtin\",\n    \".loc_mark_labels\" : \"builtin\",\n    \".local\" : \"builtin\",\n    \".long\" : \"builtin\",\n    \".macro\" : \"builtin\",\n    \".mri\" : \"builtin\",\n    \".noaltmacro\" : \"builtin\",\n    \".nolist\" : \"builtin\",\n    \".octa\" : \"builtin\",\n    \".offset\" : \"builtin\",\n    \".org\" : \"builtin\",\n    \".p2align\" : \"builtin\",\n    \".popsection\" : \"builtin\",\n    \".previous\" : \"builtin\",\n    \".print\" : \"builtin\",\n    \".protected\" : \"builtin\",\n    \".psize\" : \"builtin\",\n    \".purgem\" : \"builtin\",\n    \".pushsection\" : \"builtin\",\n    \".quad\" : \"builtin\",\n    \".reloc\" : \"builtin\",\n    \".rept\" : \"builtin\",\n    \".sbttl\" : \"builtin\",\n    \".scl\" : \"builtin\",\n    \".section\" : \"builtin\",\n    \".set\" : \"builtin\",\n    \".short\" : \"builtin\",\n    \".single\" : \"builtin\",\n    \".size\" : \"builtin\",\n    \".skip\" : \"builtin\",\n    \".sleb128\" : \"builtin\",\n    \".space\" : \"builtin\",\n    \".stab\" : \"builtin\",\n    \".string\" : \"builtin\",\n    \".struct\" : \"builtin\",\n    \".subsection\" : \"builtin\",\n    \".symver\" : \"builtin\",\n    \".tag\" : \"builtin\",\n    \".text\" : \"builtin\",\n    \".title\" : \"builtin\",\n    \".type\" : \"builtin\",\n    \".uleb128\" : \"builtin\",\n    \".val\" : \"builtin\",\n    \".version\" : \"builtin\",\n    \".vtable_entry\" : \"builtin\",\n    \".vtable_inherit\" : \"builtin\",\n    \".warning\" : \"builtin\",\n    \".weak\" : \"builtin\",\n    \".weakref\" : \"builtin\",\n    \".word\" : \"builtin\"\n  };\n\n  var registers = {};\n\n  function x86(_parserConfig) {\n    lineCommentStartSymbol = \"#\";\n\n    registers.al  = \"variable\";\n    registers.ah  = \"variable\";\n    registers.ax  = \"variable\";\n    registers.eax = \"variable-2\";\n    registers.rax = \"variable-3\";\n\n    registers.bl  = \"variable\";\n    registers.bh  = \"variable\";\n    registers.bx  = \"variable\";\n    registers.ebx = \"variable-2\";\n    registers.rbx = \"variable-3\";\n\n    registers.cl  = \"variable\";\n    registers.ch  = \"variable\";\n    registers.cx  = \"variable\";\n    registers.ecx = \"variable-2\";\n    registers.rcx = \"variable-3\";\n\n    registers.dl  = \"variable\";\n    registers.dh  = \"variable\";\n    registers.dx  = \"variable\";\n    registers.edx = \"variable-2\";\n    registers.rdx = \"variable-3\";\n\n    registers.si  = \"variable\";\n    registers.esi = \"variable-2\";\n    registers.rsi = \"variable-3\";\n\n    registers.di  = \"variable\";\n    registers.edi = \"variable-2\";\n    registers.rdi = \"variable-3\";\n\n    registers.sp  = \"variable\";\n    registers.esp = \"variable-2\";\n    registers.rsp = \"variable-3\";\n\n    registers.bp  = \"variable\";\n    registers.ebp = \"variable-2\";\n    registers.rbp = \"variable-3\";\n\n    registers.ip  = \"variable\";\n    registers.eip = \"variable-2\";\n    registers.rip = \"variable-3\";\n\n    registers.cs  = \"keyword\";\n    registers.ds  = \"keyword\";\n    registers.ss  = \"keyword\";\n    registers.es  = \"keyword\";\n    registers.fs  = \"keyword\";\n    registers.gs  = \"keyword\";\n  }\n\n  function armv6(_parserConfig) {\n    // Reference:\n    // http://infocenter.arm.com/help/topic/com.arm.doc.qrc0001l/QRC0001_UAL.pdf\n    // http://infocenter.arm.com/help/topic/com.arm.doc.ddi0301h/DDI0301H_arm1176jzfs_r0p7_trm.pdf\n    lineCommentStartSymbol = \"@\";\n    directives.syntax = \"builtin\";\n\n    registers.r0  = \"variable\";\n    registers.r1  = \"variable\";\n    registers.r2  = \"variable\";\n    registers.r3  = \"variable\";\n    registers.r4  = \"variable\";\n    registers.r5  = \"variable\";\n    registers.r6  = \"variable\";\n    registers.r7  = \"variable\";\n    registers.r8  = \"variable\";\n    registers.r9  = \"variable\";\n    registers.r10 = \"variable\";\n    registers.r11 = \"variable\";\n    registers.r12 = \"variable\";\n\n    registers.sp  = \"variable-2\";\n    registers.lr  = \"variable-2\";\n    registers.pc  = \"variable-2\";\n    registers.r13 = registers.sp;\n    registers.r14 = registers.lr;\n    registers.r15 = registers.pc;\n\n    custom.push(function(ch, stream) {\n      if (ch === '#') {\n        stream.eatWhile(/\\w/);\n        return \"number\";\n      }\n    });\n  }\n\n  var arch = (parserConfig.architecture || \"x86\").toLowerCase();\n  if (arch === \"x86\") {\n    x86(parserConfig);\n  } else if (arch === \"arm\" || arch === \"armv6\") {\n    armv6(parserConfig);\n  }\n\n  function nextUntilUnescaped(stream, end) {\n    var escaped = false, next;\n    while ((next = stream.next()) != null) {\n      if (next === end && !escaped) {\n        return false;\n      }\n      escaped = !escaped && next === \"\\\\\";\n    }\n    return escaped;\n  }\n\n  function clikeComment(stream, state) {\n    var maybeEnd = false, ch;\n    while ((ch = stream.next()) != null) {\n      if (ch === \"/\" && maybeEnd) {\n        state.tokenize = null;\n        break;\n      }\n      maybeEnd = (ch === \"*\");\n    }\n    return \"comment\";\n  }\n\n  return {\n    startState: function() {\n      return {\n        tokenize: null\n      };\n    },\n\n    token: function(stream, state) {\n      if (state.tokenize) {\n        return state.tokenize(stream, state);\n      }\n\n      if (stream.eatSpace()) {\n        return null;\n      }\n\n      var style, cur, ch = stream.next();\n\n      if (ch === \"/\") {\n        if (stream.eat(\"*\")) {\n          state.tokenize = clikeComment;\n          return clikeComment(stream, state);\n        }\n      }\n\n      if (ch === lineCommentStartSymbol) {\n        stream.skipToEnd();\n        return \"comment\";\n      }\n\n      if (ch === '\"') {\n        nextUntilUnescaped(stream, '\"');\n        return \"string\";\n      }\n\n      if (ch === '.') {\n        stream.eatWhile(/\\w/);\n        cur = stream.current().toLowerCase();\n        style = directives[cur];\n        return style || null;\n      }\n\n      if (ch === '=') {\n        stream.eatWhile(/\\w/);\n        return \"tag\";\n      }\n\n      if (ch === '{') {\n        return \"bracket\";\n      }\n\n      if (ch === '}') {\n        return \"bracket\";\n      }\n\n      if (/\\d/.test(ch)) {\n        if (ch === \"0\" && stream.eat(\"x\")) {\n          stream.eatWhile(/[0-9a-fA-F]/);\n          return \"number\";\n        }\n        stream.eatWhile(/\\d/);\n        return \"number\";\n      }\n\n      if (/\\w/.test(ch)) {\n        stream.eatWhile(/\\w/);\n        if (stream.eat(\":\")) {\n          return 'tag';\n        }\n        cur = stream.current().toLowerCase();\n        style = registers[cur];\n        return style || null;\n      }\n\n      for (var i = 0; i < custom.length; i++) {\n        style = custom[i](ch, stream, state);\n        if (style) {\n          return style;\n        }\n      }\n    },\n\n    lineComment: lineCommentStartSymbol,\n    blockCommentStart: \"/*\",\n    blockCommentEnd: \"*/\"\n  };\n});\n\n});\n"]}