aboutsummaryrefslogtreecommitdiff
path: root/demos/lua.js
diff options
context:
space:
mode:
Diffstat (limited to 'demos/lua.js')
-rw-r--r--demos/lua.js58961
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</