diff options
Diffstat (limited to 'demos/lua.js')
-rw-r--r-- | demos/lua.js | 58961 |
1 files changed, 0 insertions, 58961 deletions
diff --git a/demos/lua.js b/demos/lua.js deleted file mode 100644 index 85e6e97e..00000000 --- a/demos/lua.js +++ /dev/null @@ -1,58961 +0,0 @@ -// LLVM_STYLE: new - -// Capture the output of this into a variable, if you want -//(function(Module, args) { -// Module = Module || {}; -// args = args || []; - -// Runs much faster, for some reason -var Module = {}; -// XXX manually added for demo // var args = arguments; - // === Auto-generated preamble library stuff === - - Runtime = { - stackAlloc: function stackAlloc(size) { var ret = STACKTOP; for (var i = 0; i < size; i++) IHEAP[STACKTOP+i] = FHEAP[STACKTOP+i] = 0; STACKTOP += size;STACKTOP = Math.ceil(STACKTOP/4)*4;; return ret; }, - staticAlloc: function staticAlloc(size) { var ret = STATICTOP; for (var i = 0; i < size; i++) IHEAP[STATICTOP+i] = FHEAP[STATICTOP+i] = 0; STATICTOP += size;STATICTOP = Math.ceil(STATICTOP/4)*4;; return ret; }, - alignMemory: function alignMemory(size,quantum) { var ret = size = Math.ceil(size/(quantum ? quantum : 4))*(quantum ? quantum : 4);; return ret; }, - getFunctionIndex: function getFunctionIndex(func, ident) { - var key = FUNCTION_TABLE.length; - FUNCTION_TABLE[key] = func; - FUNCTION_TABLE[key+1] = null; // Need to have keys be even numbers, see |polymorph| test - Module[ident] = func; // Export using full name, for Closure Compiler - return key; - }, - isNumberType: function (type) { - return type in Runtime.INT_TYPES || type in Runtime.FLOAT_TYPES; - }, - isPointerType: function isPointerType(type) { - return pointingLevels(type) > 0; - }, - isStructType: function isStructType(type) { - if (isPointerType(type)) return false; - if (new RegExp(/^\[\d+\ x\ (.*)\]/g).test(type)) return true; // [15 x ?] blocks. Like structs - // See comment in isStructPointerType() - return !Runtime.isNumberType(type) && type[0] == '%'; - }, - INT_TYPES: {"i1":0,"i8":0,"i16":0,"i32":0,"i64":0}, - FLOAT_TYPES: {"float":0,"double":0}, - getNativeFieldSize: function getNativeFieldSize(field, alone) { - var size; - if (4 > 1) { - size = { - 'i1': alone ? 1 : 4, // inside a struct, aligned to 4, - 'i8': alone ? 1 : 4, // most likely...? XXX - 'i16': alone ? 2 : 4, // ditto - 'i32': 4, - 'i64': 8, - 'float': 4, - 'double':8 - }[field]; // XXX 32/64 bit stuff - if (!size) { - size = 4; // Must be a pointer XXX 32/64 - } - } else { - size = 1; - } - return size; - }, - dedup: function dedup(items, ident) { - var seen = {}; - if (ident) { - return items.filter(function(item) { - if (seen[item[ident]]) return false; - seen[item[ident]] = true; - return true; - }); - } else { - return items.filter(function(item) { - if (seen[item]) return false; - seen[item] = true; - return true; - }); - } - }, - calculateStructAlignment: function calculateStructAlignment(type, otherTypes) { - type.flatSize = 0; - var diffs = []; - var prev = -1, maxSize = -1; - type.flatIndexes = type.fields.map(function(field) { - var size; - if (Runtime.isNumberType(field) || Runtime.isPointerType(field)) { - size = Runtime.getNativeFieldSize(field, true); // pack char; char; in structs, also char[X]s. - maxSize = Math.max(maxSize, size); - } else if (Runtime.isStructType(field)) { - size = otherTypes[field].flatSize; - maxSize = Math.max(maxSize, 4); - } else { - dprint('Unclear type in struct: ' + field + ', in ' + type.name_); - assert(0); - } - var curr = Runtime.alignMemory(type.flatSize, Math.min(4, size)); // if necessary, place this on aligned memory - type.flatSize = curr + size; - if (prev >= 0) { - diffs.push(curr-prev); - } - prev = curr; - return curr; - }); - type.flatSize = Runtime.alignMemory(type.flatSize, maxSize); - if (diffs.length == 0) { - type.flatFactor = type.flatSize; - } else if (Runtime.dedup(diffs).length == 1) { - type.flatFactor = diffs[0]; - } - type.needsFlattening = (type.flatFactor != 1); - return type.flatIndexes; - }, - __dummy__: 0 - } - - - function __globalConstructor__() { - } - - // Maps ints ==> functions. This lets us pass around ints, which are - // actually pointers to functions, and we convert at call()time - var FUNCTION_TABLE = []; - - var __THREW__ = false; // Used in checking for thrown exceptions. - - var __ATEXIT__ = []; - - - - - var ABORT = false; - - var undef = 0; - - function assert(condition, text) { - if (!condition) { - var text = "Assertion failed: " + text; - print(text + ':\n' + (new Error).stack); - ABORT = true; - throw "Assertion: " + text; - } - } - - function Pointer_niceify(ptr) { - return { slab: IHEAP, pos: ptr }; - } - - // Creates a pointer for a certain slab and a certain address in that slab. - // If just a slab is given, will allocate room for it and copy it there. In - // other words, do whatever is necessary in order to return a pointer, that - // points to the slab (and possibly position) we are given. - - var ALLOC_NORMAL = 0; // Tries to use _malloc() - var ALLOC_STACK = 1; // Lives for the duration of the current function call - var ALLOC_STATIC = 2; // Cannot be freed - - function Pointer_make(slab, pos, allocator) { - pos = pos ? pos : 0; - assert(pos === 0); // TODO: remove 'pos' - if (slab === HEAP) return pos; - var size = slab.length; - - var i; - for (i = 0; i < size; i++) { - if (slab[i] === undefined) { - throw 'Invalid element in slab at ' + new Error().stack; // This can be caught, and you can try again to allocate later, see globalFuncs in run() - } - } - - // Finalize - var ret = [_malloc, Runtime.stackAlloc, Runtime.staticAlloc][allocator ? allocator : ALLOC_STATIC](Math.max(size, 1)); - - for (i = 0; i < size; i++) { - var curr = slab[i]; - - if (typeof curr === 'function') { - curr = Runtime.getFunctionIndex(curr); - } - // TODO: Check - also in non-typedarray case - for functions, and if so add |.__index__| - if (typeof curr === 'number' || typeof curr === 'boolean') { - IHEAP[ret + i] = curr; // TODO: optimize. Can easily detect floats, but 1.0 might look like an int... - FHEAP[ret + i] = curr; - } else { - HEAP[ret + i] = curr; - } - } - - return ret; - } - - function Pointer_stringify(ptr) { - ptr = Pointer_niceify(ptr); - - var ret = ""; - var i = 0; - var t; - while (1) { - // if ((ptr.pos + i) >= ptr.slab.length) { return "<< Invalid read: " + (ptr.pos+i) + " : " + ptr.slab.length + " >>"; } else {} - if ((ptr.pos+i) >= ptr.slab.length) { break; } else {} - t = String.fromCharCode(ptr.slab[ptr.pos + i]); - if (t == "\0") { break; } else {} - ret += t; - i += 1; - } - return ret; - } - - // Memory management - - var PAGE_SIZE = 4096; - function alignMemoryPage(x) { - return Math.ceil(x/PAGE_SIZE)*PAGE_SIZE; - } - - var HEAP, IHEAP, FHEAP; - var STACK_ROOT, STACKTOP, STACK_MAX; - var STATICTOP; - - // Mangled |new| and |free| (various manglings, for int, long params; new and new[], etc. - var _malloc, _free, __Znwj, __Znaj, __Znam, __Znwm, __ZdlPv, __ZdaPv; - - var HAS_TYPED_ARRAYS = false; - var TOTAL_MEMORY = 50*1024*1024; - - function __initializeRuntime__() { - // If we don't have malloc/free implemented, use a simple implementation. - Module['_malloc'] = _malloc = __Znwj = __Znaj = __Znam = __Znwm = Module['_malloc'] ? Module['_malloc'] : Runtime.staticAlloc; - Module['_free'] = _free = __ZdlPv = __ZdaPv = Module['_free'] ? Module['_free'] : function() { }; - - // TODO: Remove one of the 3 heaps! - HEAP = intArrayFromString('(null)'); // So printing %s of NULL gives '(null)' - // Also this ensures we leave 0 as an invalid address, 'NULL' - HAS_TYPED_ARRAYS = this['Int32Array'] && this['Float64Array']; // check for engine support - if (HAS_TYPED_ARRAYS) { - IHEAP = new Int32Array(TOTAL_MEMORY); - for (var i = 0; i < HEAP.length; i++) { - IHEAP[i] = HEAP[i]; - } - HEAP = IHEAP; - FHEAP = new Float64Array(TOTAL_MEMORY); - } else { - IHEAP = HEAP; // fallback - FHEAP = HEAP; // fallback - } - - Module['HEAP'] = HEAP; - Module['IHEAP'] = IHEAP; - Module['FHEAP'] = FHEAP; - - STACK_ROOT = STACKTOP = alignMemoryPage(10); - if (!this['TOTAL_STACK']) TOTAL_STACK = 1024*1024; // Reserved room for stack - STACK_MAX = STACK_ROOT + TOTAL_STACK; - - STATICTOP = alignMemoryPage(STACK_MAX); - } - - function __shutdownRuntime__() { - while( __ATEXIT__.length > 0) { - var func = __ATEXIT__.pop(); - if (typeof func === 'number') { - func = FUNCTION_TABLE[func]; - } - func(); - } - } - - // stdio.h - - // C-style: we work on ints on the HEAP. - function __formatString() { - var cStyle = false; - var textIndex = arguments[0]; - var argIndex = 1; - if (textIndex < 0) { - cStyle = true; - textIndex = -textIndex; - slab = null; - argIndex = arguments[1]; - } else { - var _arguments = arguments; - } - function getNextArg(type) { - var ret; - if (!cStyle) { - ret = _arguments[argIndex]; - argIndex++; - } else { - ret = (type === 'f' ? FHEAP : IHEAP)[argIndex]; - argIndex += type === 'l'.charCodeAt(0) ? 8 : 4; // XXX hardcoded native sizes - } - return ret; - } - - var ret = []; - var curr = -1, next, currArg; - while (curr) { // Note: should be curr != 0, technically. But this helps catch bugs with undefineds - curr = IHEAP[textIndex]; - next = IHEAP[textIndex+1]; - if (curr == '%'.charCodeAt(0) && ['d', 'u', 'f', '.'].indexOf(String.fromCharCode(next)) != -1) { - var currArg; - var argText; - // Handle very very simply formatting, namely only %.Xf - if (next == '.'.charCodeAt(0)) { - var limit = 0; - while(1) { - var limitChr = IHEAP[textIndex+2]; - if (!(limitChr >= '0'.charCodeAt(0) && limitChr <= '9'.charCodeAt(0))) break; - limit *= 10; - limit += limitChr - '0'.charCodeAt(0); - textIndex++; - } - textIndex--; - next = IHEAP[textIndex+1]; - currArg = getNextArg(next); - argText = String(+currArg); // +: boolean=>int - var dotIndex = argText.indexOf('.'); - if (dotIndex == -1) { - dotIndex = argText.length; - argText += '.'; - } - argText += '00000000000'; // padding - argText = argText.substr(0, dotIndex+1+limit); - textIndex += 2; - } else if (next == 'u'.charCodeAt(0)) { - currArg = getNextArg(next); - argText = String(unSign(currArg, 32)); - } else { - currArg = getNextArg(next); - argText = String(+currArg); // +: boolean=>int - } - argText.split('').forEach(function(chr) { - ret.push(chr.charCodeAt(0)); - }); - textIndex += 2; - } else if (curr == '%'.charCodeAt(0) && next == 's'.charCodeAt(0)) { - ret = ret.concat(String_copy(getNextArg(next))); - textIndex += 2; - } else if (curr == '%'.charCodeAt(0) && next == 'c'.charCodeAt(0)) { - ret = ret.concat(getNextArg(next)); - textIndex += 2; - } else { - ret.push(curr); - textIndex += 1; - } - } - return Pointer_make(ret, 0, ALLOC_STACK); // NB: Stored on the stack - } - - // Copies a list of num items on the HEAP into a - // a normal JavaScript array of numbers - function Array_copy(ptr, num) { - return Array.prototype.slice.call(IHEAP.slice(ptr, ptr+num)); // Make a normal array out of the typed one - } - - // Copies a C-style string, terminated by a zero, from the HEAP into - // a normal JavaScript array of numbers - function String_copy(ptr, addZero) { - return Array_copy(ptr, _strlen(ptr)).concat(addZero ? [0] : []); - } - - // stdlib.h - - // Get a pointer, return int value of the string it points to - function _atoi(s) { - return Math.floor(Number(Pointer_stringify(s))); - } - - function _llvm_memcpy_i32(dest, src, num, idunno) { - var curr; - for (var i = 0; i < num; i++) { - curr = HEAP[src + i] || 0; // memcpy sometimes copies uninitialized areas XXX: Investigate why initializing alloc'ed memory does not fix that too - HEAP[dest + i] = curr; - // TODO: optimize somehow - this is slower than without typed arrays - IHEAP[dest + i] = IHEAP[src + i]; - FHEAP[dest + i] = FHEAP[src + i]; - } - } - _memcpy = _llvm_memcpy_i64 = _llvm_memcpy_p0i8_p0i8_i32 = _llvm_memcpy_p0i8_p0i8_i64 = _llvm_memcpy_i32; - - function llvm_memset_i32(ptr, value, num) { - for (var i = 0; i < num; i++) { - HEAP[ptr+i] = IHEAP[ptr+i] = FHEAP[ptr+i] = value; - } - } - _llvm_memset_p0i8_i64 = _llvm_memset_p0i8_i32 = llvm_memset_i32; - - function _strlen(ptr) { - var i = 0; - while (IHEAP[ptr+i]) i++; // Note: should be IHEAP[ptr+i] != 0, technically. But this helps catch bugs with undefineds - return i; - } - - // Tools - - PRINTBUFFER = ''; - function __print__(text) { - if (text === null) { - // Flush - print(PRINTBUFFER); - PRINTBUFFER = ''; - return; - } - // We print only when we see a '\n', as console JS engines always add - // one anyhow. - PRINTBUFFER = PRINTBUFFER + text; - var endIndex; - while ((endIndex = PRINTBUFFER.indexOf('\n')) != -1) { - print(PRINTBUFFER.substr(0, endIndex)); - PRINTBUFFER = PRINTBUFFER.substr(endIndex + 1); - } - } - - function jrint(label, obj) { // XXX manual debugging - if (!obj) { - obj = label; - label = ''; - } else - label = label + ' : '; - print(label + JSON.stringify(obj)); - } - - // This processes a 'normal' string into a C-line array of numbers. - // For LLVM-originating strings, see parser.js:parseLLVMString function - function intArrayFromString(stringy) { - var ret = []; - var t; - var i = 0; - while (i < stringy.length) { - ret.push(stringy.charCodeAt(i)); - i = i + 1; - } - ret.push(0); - return ret; - } - - // Converts a value we have as signed, into an unsigned value. For - // example, -1 in int32 would be a very large number as unsigned. - function unSign(value, bits) { - if (value >= 0) return value; - return 2*Math.abs(1 << (bits-1)) + value; - } - - // === Body === - - var $0___SIZE = 12; // %0 - - var $1___SIZE = 16; // %1 - var $1___FLATTENER = [0,8,12]; - var $2___SIZE = 8; // %2 - - var $3___SIZE = 8; // %3 - - var $4___SIZE = 20; // %4 - var $4___FLATTENER = [0,4,5,8,12,16]; - var $5___SIZE = 8; // %5 - - var $6___SIZE = 16; // %6 - - var $7___SIZE = 12; // %7 - - var $8___SIZE = 8; // %8 - - var $9___SIZE = 28; // %9 - - var $10___SIZE = 16; // %10 - - var $11___SIZE = 16; // %11 - var $11___FLATTENER = [0,8,12]; - var $12___SIZE = 20; // %12 - - var $13___SIZE = 8; // %13 - - var $14___SIZE = 16; // %14 - - var $enum_BinOpr___SIZE = 4; // %enum.BinOpr - - var $enum_OpArgMask___SIZE = 4; // %enum.OpArgMask - - var $enum_OpMode___SIZE = 4; // %enum.OpMode - - var $enum_UnOpr___SIZE = 4; // %enum.UnOpr - - var $enum_anon___SIZE = 4; // %enum.anon - - var $struct_BlockCnt___SIZE = 12; // %struct.BlockCnt - var $struct_BlockCnt___FLATTENER = [0,4,8,9,10]; - var $struct_CCallS___SIZE = 8; // %struct.CCallS - - var $struct_CClosure___SIZE = 32; // %struct.CClosure - var $struct_CClosure___FLATTENER = [0,4,5,6,7,8,12,16,20]; - var $struct_CallInfo___SIZE = 24; // %struct.CallInfo - - var $struct_CallS___SIZE = 8; // %struct.CallS - - var $struct_ConsControl___SIZE = 36; // %struct.ConsControl - var $struct_ConsControl___FLATTENER = [0,20,24,28,32]; - var $struct_FuncState___SIZE = 572; // %struct.FuncState - var $struct_FuncState___FLATTENER = [0,4,8,12,16,20,24,28,32,36,40,44,48,50,52,172]; - var $struct_GCheader___SIZE = 8; // %struct.GCheader - var $struct_GCheader___FLATTENER = [0,4,5]; - var $struct_LClosure___SIZE = 24; // %struct.LClosure - var $struct_LClosure___FLATTENER = [0,4,5,6,7,8,12,16,20]; - var $struct_LG___SIZE = 348; // %struct.LG - - var $struct_LHS_assign___SIZE = 24; // %struct.LHS_assign - - var $struct_LexState___SIZE = 60; // %struct.LexState - var $struct_LexState___FLATTENER = [0,4,8,12,24,36,40,44,48,52,56]; - var $struct_LoadF___SIZE = 8200; // %struct.LoadF - - var $struct_LoadS___SIZE = 8; // %struct.LoadS - - var $struct_LocVar___SIZE = 12; // %struct.LocVar - - var $struct_MatchState___SIZE = 272; // %struct.MatchState - - var $struct_Mbuffer___SIZE = 12; // %struct.Mbuffer - - var $struct_Node___SIZE = 28; // %struct.Node - - var $struct_Proto___SIZE = 76; // %struct.Proto - var $struct_Proto___FLATTENER = [0,4,5,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,73,74,75]; - var $struct_SParser___SIZE = 20; // %struct.SParser - var $struct_SParser___FLATTENER = [0,4,16]; - var $struct_Smain___SIZE = 12; // %struct.Smain - - var $struct_Table___SIZE = 32; // %struct.Table - var $struct_Table___FLATTENER = [0,4,5,6,7,8,12,16,20,24,28]; - var $struct_Token___SIZE = 12; // %struct.Token - - var $struct_UpVal___SIZE = 24; // %struct.UpVal - var $struct_UpVal___FLATTENER = [0,4,5,8,12]; - var $struct_Zio___SIZE = 20; // %struct.Zio - - var $struct__IO_FILE___SIZE = 152; // %struct._IO_FILE - var $struct__IO_FILE___FLATTENER = [0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,70,71,72,76,84,88,92,96,100,104,108]; - var $struct__IO_marker___SIZE = 12; // %struct._IO_marker - - var $struct_anon___SIZE = 16; // %struct.anon - var $struct_anon___FLATTENER = [0,4,5,6,8,12]; - var $struct_expdesc___SIZE = 20; // %struct.expdesc - var $struct_expdesc___FLATTENER = [0,4,12,16]; - var $struct_global_State___SIZE = 236; // %struct.global_State - var $struct_global_State___FLATTENER = [0,12,16,20,21,24,28,32,36,40,44,48,52,64,68,72,76,80,84,88,92,104,108,132,168]; - var $struct_lconv___SIZE = 56; // %struct.lconv - var $struct_lconv___FLATTENER = [0,4,8,12,16,20,24,28,32,36,40,41,42,43,44,45,46,47,48,49,50,51,52,53]; - var $struct_luaL_Buffer___SIZE = 8204; // %struct.luaL_Buffer - - var $struct_luaL_Reg___SIZE = 8; // %struct.luaL_Reg - - var $struct_lua_Debug___SIZE = 100; // %struct.lua_Debug - var $struct_lua_Debug___FLATTENER = [0,4,8,12,16,20,24,28,32,36,96]; - var $struct_lua_State___SIZE = 112; // %struct.lua_State - var $struct_lua_State___FLATTENER = [0,4,5,6,8,12,16,20,24,28,32,36,40,44,48,52,54,56,57,60,64,68,72,84,96,100,104,108]; - var $struct_lua_TValue___SIZE = 12; // %struct.lua_TValue - - var $struct_lua_longjmp___SIZE = 12; // %struct.lua_longjmp - - var $struct_stringtable___SIZE = 12; // %struct.stringtable - - var $struct_tm___SIZE = 44; // %struct.tm - - var $struct_upvaldesc___SIZE = 2; // %struct.upvaldesc - - var $union_Closure___SIZE = 32; // %union.Closure - - var $union_GCObject___SIZE = 112; // %union.GCObject - - var $union_TKey___SIZE = 16; // %union.TKey - - var $union_TString___SIZE = 16; // %union.TString - - var $union_Udata___SIZE = 20; // %union.Udata - - var $union_anon___SIZE = 8; // %union.anon - - var __ZL7globalL; - var __str; - var __str1; - var __ZL8progname; - var __str2; - var __str3; - var __str4; - var __str5; - var _stdout; - var __str6; - var __str7; - var __str8; - var __str9; - var __str10; - var _stdin; - var __str11; - var __str12; - var __str13; - var __str14; - var __str15; - var __str16; - var __str17; - var __str18; - var __str19; - var __str20; - var __str21; - var __str22; - var _stderr; - var __str23; - var __str24; - var __str25; - var __str26; - var __str27; - var __str28; - var __str129; - var __str230; - var __str331; - var __str432; - var __str1533; - var __str2634; - var __str37; - var __str835; - var __str1936; - var __str210; - var __str311; - var __str412; - var __str537; - var __str638; - var __str739; - var __str813; - var __str940; - var __str1041; - var __str1142; - var __str1243; - var __str1344; - var __str1445; - var __str1514; - var __str1646; - var __str1747; - var __str1848; - var __str1915; - var __str2049; - var __str2150; - var __str122; - var __ZTVN10__cxxabiv119__pointer_type_infoE; - var __ZTSP11lua_longjmp; - var __ZTVN10__cxxabiv117__class_type_infoE; - var __ZTS11lua_longjmp; - var __ZTI11lua_longjmp; - var __ZTIP11lua_longjmp; - var __str223; - var __str324; - var __str425; - var __str526; - var __str627; - var __str728; - var __str829; - var __str47; - var __str148; - var __str249; - var __str350; - var __str451; - var __str552; - var __str653; - var __str754; - var __str855; - var __str956; - var __str1057; - var __str1158; - var __str1259; - var __str1360; - var __str1461; - var __str1562; - var __str1663; - var __str1764; - var __str1865; - var __str1966; - var __str2067; - var __str2168; - var __str2251; - var __str2352; - var __str2453; - var __str2554; - var __str2669; - var __str2755; - var __str2856; - var __str29; - var __str30; - var _luaX_tokens; - var __str31; - var __str32; - var __str33; - var __str34; - var __str35; - var __str36; - var __str3770; - var __str38; - var __str39; - var __str40; - var __str41; - var __str42; - var __str43; - var __str44; - var __str45; - var __str46; - var __str72; - var _luaO_nilobject_; - var __ZZ9luaO_log2jE5log_2; - var __str77; - var __str178; - var __str279; - var __str380; - var __str481; - var __str582; - var __str683; - var __str784; - var __str90; - var __str191; - var __str292; - var __str393; - var __str494; - var __str595; - var __str696; - var __str797; - var __str898; - var __str999; - var __str10100; - var __str11101; - var __str12102; - var __str13103; - var __str14104; - var __str15105; - var __str16106; - var __str17107; - var __str18108; - var __str19109; - var __str20110; - var __str21111; - var __str22112; - var __str23113; - var __str24114; - var __str25115; - var __str26116; - var __str27117; - var __str28118; - var __str29119; - var __str30120; - var __str31121; - var __str32122; - var __str33123; - var __str34124; - var __str35125; - var __str36126; - var __str37127; - var _luaP_opnames; - var _luaP_opmodes; - var __str12957; - var __str1130; - var __ZL8priority; - var __str2131; - var __str3132; - var __str4133; - var __str5134; - var __str6135; - var __str7136; - var __str8137; - var __str9138; - var __str10139; - var __str11140; - var __str12141; - var __str13142; - var __str14143; - var __str15144; - var __str16145; - var __str17146; - var __str18147; - var __str19148; - var __str20149; - var __str21150; - var __str22151; - var __str23152; - var __str24153; - var __str25154; - var __str26155; - var __str27156; - var __str158; - var __ZL10dummynode_; - var __str164; - var __str1165; - var __str2166; - var __str3167; - var __str177; - var __str1178; - var __str2179; - var __str3180; - var __str4181; - var __str5182; - var __str6183; - var __str7184; - var __str8185; - var __str9186; - var _luaT_typenames; - var __ZZ9luaT_initP9lua_StateE14luaT_eventname; - var __str10188; - var __str11189; - var __str12190; - var __str13191; - var __str14192; - var __str15193; - var __str16194; - var __str17195; - var __str18196; - var __str19197; - var __str20198; - var __str21199; - var __str22200; - var __str23201; - var __str24202; - var __str25203; - var __str26204; - var __str208; - var __str1209; - var __str2210; - var __str3211; - var __str4212; - var __str5213; - var __str6214; - var __str7215; - var __str8216; - var __str9217; - var __str220; - var __str1221; - var __str2222; - var __str3223; - var __str4224; - var __str5225; - var __str6226; - var __str7227; - var __str8228; - var __str242; - var __str124358; - var __str2244; - var __str3245; - var __str4246; - var __str5247; - var __str6248; - var __str7249; - var __str8250; - var __str9251; - var __str10252; - var __str11253; - var __str12254; - var __str13255; - var __str14256; - var __str15257; - var __str16258; - var __str17259; - var __str18260; - var __str19261; - var __str20262; - var __str21263; - var __str22264; - var __str23265; - var __str24266; - var __str25267; - var __str268; - var __str1269; - var __str2270; - var __str3271; - var __str4272; - var __str5273; - var __str6274; - var __str7275; - var __str8276; - var __str9277; - var __str10278; - var __str11279; - var __str12280; - var __str13281; - var __str14282; - var __str15283; - var __str16284; - var __str17285; - var __str18286; - var __str19287; - var __str20288; - var __str21289; - var __str22290; - var __str23291; - var __ZL10base_funcs; - var __str24292; - var __str25293; - var __str26294; - var __str27295; - var __str28296; - var __str29297; - var __ZL8co_funcs; - var __str30298; - var __str31299; - var __str32300; - var __str33301; - var __str34302; - var __str35303; - var __str36304; - var __str37305; - var __str38306; - var __str39307; - var __str40308; - var __str41309; - var __ZL9statnames; - var __str42310; - var __str43311; - var __str44312; - var __str45313; - var __str46314; - var __str47315; - var __str48; - var __str49; - var __str50; - var __str51; - var __str52; - var __str53; - var __str54; - var __str55; - var __str56; - var __str57; - var __str58; - var __str59; - var __str60; - var __str61; - var __str62; - var __str63; - var __str64; - var __str65; - var __str66; - var __str67; - var __str68; - var __str69; - var __ZZ19luaB_collectgarbageP9lua_StateE4opts; - var __str70; - var __str71; - var __str72316; - var __str73; - var __str74; - var __str75; - var __str76; - var __ZZ19luaB_collectgarbageP9lua_StateE7optsnum; - var __str77317; - var __str78; - var __str318; - var __str1319; - var __str2320; - var __str3321; - var __str4322; - var __str5323; - var __str6324; - var __str7325; - var __str8326; - var __str9327; - var __str10328; - var __str11329; - var __str12330; - var __str13331; - var __ZL5dblib; - var __str14332; - var __str15333; - var __str16334; - var __str17335; - var __str18336; - var __str19337; - var __str20338; - var __str21339; - var __str22340; - var __str23341; - var __str24342; - var __str25343; - var __str26344; - var __str27345; - var __ZL8KEY_HOOK; - var __ZZ5hookfP9lua_StateP9lua_DebugE9hooknames; - var __str28346; - var __str29347; - var __str30348; - var __str31349; - var __str32350; - var __str33351; - var __str34352; - var __str35353; - var __str36354; - var __str37355; - var __str38356; - var __str39357; - var __str40358; - var __str41359; - var __str42360; - var __str43361; - var __str44362; - var __str45363; - var __str46364; - var __str47365; - var __str48366; - var __str49367; - var __str50368; - var __str51369; - var __str52370; - var __str371; - var __str1372; - var __str2373; - var __str3374; - var __str4375; - var __str5376; - var __str6377; - var __str7378; - var __str8379; - var __str9380; - var __str10381; - var __ZL5iolib; - var __str11382; - var __str12383; - var __str13384; - var __str14385; - var __ZL4flib; - var __str15386; - var __str16387; - var __str17388; - var __str18389; - var __str19390; - var __str20391; - var __str21392; - var __str22393; - var __str23394; - var __str24395; - var __str25396; - var __str26397; - var __str27398; - var __str28399; - var __ZZ9f_setvbufP9lua_StateE4mode; - var __ZZ9f_setvbufP9lua_StateE9modenames; - var __str29400; - var __str30401; - var __str31402; - var __ZZ6f_seekP9lua_StateE4mode; - var __ZZ6f_seekP9lua_StateE9modenames; - var __str32403; - var __str33404; - var __str34405; - var __str35406; - var __str36407; - var __str37408; - var __str38409; - var __str39410; - var __str40411; - var __ZL6fnames; - var __str41412; - var __str42413; - var __str43414; - var __str44415; - var __str45416; - var __str417; - var __str1418; - var __str2419; - var __str3420; - var __str4421; - var __str5422; - var __str6423; - var __str7424; - var __str8425; - var __str9426; - var __str10427; - var __str11428; - var __str12429; - var __str13430; - var __str14431; - var __str15432; - var __str16433; - var __str17434; - var __str18435; - var __str19436; - var __str20437; - var __str21438; - var __str22439; - var __str23440; - var __str24441; - var __str25442; - var __str26443; - var __str27444; - var __ZL7mathlib; - var __str28445; - var __str29446; - var __str30447; - var __str31448; - var __str32449; - var __str33450; - var __str452; - var __str1453; - var __str2454; - var __str3455; - var __str4456; - var __str5457; - var __str6458; - var __str7459; - var __str8460; - var __str9461; - var __str10462; - var __ZL6syslib; - var __str11463; - var __str12464; - var __str13465; - var __str14466; - var __str15467; - var __str16468; - var __str17469; - var __str18470; - var __str19471; - var __str20472; - var __ZZ12os_setlocaleP9lua_StateE3cat; - var __ZZ12os_setlocaleP9lua_StateE8catnames; - var __str21473; - var __str22474; - var __str23475; - var __str24476; - var __str25477; - var __str26478; - var __str27479; - var __str28480; - var __str29481; - var __str30482; - var __str483; - var __str1484; - var __str2485; - var __str3486; - var __str4487; - var __str5488; - var __str6489; - var __str7490; - var __str8491; - var __ZL9tab_funcs; - var __str9492; - var __str10493; - var __str11494; - var __str12495; - var __str13496; - var __str14497; - var __str498; - var __str1499; - var __str2500; - var __str3501; - var __str4502; - var __str5503; - var __str6504; - var __str7505; - var __str8506; - var __str9507; - var __str10508; - var __str11509; - var __str12510; - var __str13511; - var __str14512; - var __ZL6strlib; - var __str15513; - var __str16514; - var __str17515; - var __str18516; - var __str19517; - var __str20518; - var __str21519; - var __str22520; - var __str23521; - var __str24522; - var __str25523; - var __str26524; - var __str27525; - var __str28526; - var __str29527; - var __str30528; - var __str31529; - var __str32530; - var __str33531; - var __str34532; - var __str35533; - var __str36534; - var __str37535; - var __str38536; - var __str39537; - var __str538; - var __str1539; - var __ZL8pk_funcs; - var __str2540; - var __str3541; - var __ZL8ll_funcs; - var __ZL7loaders; - var __str4542; - var __str5543; - var __str6544; - var __str7545; - var __str8546; - var __str9547; - var __str10548; - var __str11549; - var __str12550; - var __str13551; - var __str14552; - var __str15553; - var __str16554; - var __str17555; - var __str18556; - var __str19557; - var __str20558; - var __str21559; - var __str22560; - var __str23561; - var __str24562; - var __str25563; - var __str26564; - var __str27565; - var __str28566; - var __str29567; - var __str30568; - var __str31569; - var __str32570; - var __str33571; - var __str34572; - var __str35573; - var __str36574; - var __str37575; - var __str38576; - var __str39577; - var __ZL9sentinel_; - var __str40578; - var __str41579; - var __str42580; - var __str43581; - var __str44582; - var __str45583; - var __str46584; - var __str47585; - var __str48586; - var __str49587; - var __str50588; - var __str51589; - var __str590; - var __str1591; - var __str2592; - var __str3593; - var __str4594; - var __str5595; - var __str6596; - var __str7597; - var __ZL7lualibs; - - _fputs = function (p, stream) { - var str = Pointer_stringify(p); if (str == '\n') return; // XXX manually added for demo, suppress unneeded newlines - __print__(Pointer_stringify(p) + '\n'); - } - _fflush = function (file) { - __print__(null); - } - _signal = function (sig, func) { - // TODO - return 0; - } - // stub for _strstr - // stub for _fgets |