Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
125 lines (113 loc) · 4.44 KB

File metadata and controls

125 lines (113 loc) · 4.44 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
// Copyright 2016 The Emscripten Authors. All rights reserved.
// Emscripten is available under two separate licenses, the MIT license and the
// University of Illinois/NCSA Open Source License. Both these licenses can be
// found in the LICENSE file.
#include "Fetch.js"
if (typeof Atomics === 'undefined') {
// Polyfill singlethreaded atomics ops from http://lars-t-hansen.github.io/ecmascript_sharedmem/shmem.html#Atomics.add
// No thread-safety needed since we don't have multithreading support.
Atomics = {};
Atomics['add'] = function(t, i, v) { var w = t[i]; t[i] += v; return w; }
Atomics['and'] = function(t, i, v) { var w = t[i]; t[i] &= v; return w; }
Atomics['compareExchange'] = function(t, i, e, r) { var w = t[i]; if (w == e) t[i] = r; return w; }
Atomics['exchange'] = function(t, i, v) { var w = t[i]; t[i] = v; return w; }
Atomics['wait'] = function(t, i, v, o) { if (t[i] != v) return 'not-equal'; else return 'timed-out'; }
Atomics['notify'] = function(t, i, c) { return 0; }
Atomics['wakeOrRequeue'] = function(t, i1, c, i2, v) { return 0; }
Atomics['isLockFree'] = function(s) { return true; }
Atomics['load'] = function(t, i) { return t[i]; }
Atomics['or'] = function(t, i, v) { var w = t[i]; t[i] |= v; return w; }
Atomics['store'] = function(t, i, v) { t[i] = v; return v; }
Atomics['sub'] = function(t, i, v) { var w = t[i]; t[i] -= v; return w; }
Atomics['xor'] = function(t, i, v) { var w = t[i]; t[i] ^= v; return w; }
}
var Atomics_add = Atomics.add;
var Atomics_and = Atomics.and;
var Atomics_compareExchange = Atomics.compareExchange;
var Atomics_exchange = Atomics.exchange;
var Atomics_wait = Atomics.wait;
var Atomics_wake = Atomics.wake;
var Atomics_wakeOrRequeue = Atomics.wakeOrRequeue;
var Atomics_isLockFree = Atomics.isLockFree;
var Atomics_load = Atomics.load;
var Atomics_or = Atomics.or;
var Atomics_store = Atomics.store;
var Atomics_sub = Atomics.sub;
var Atomics_xor = Atomics.xor;
function load1(ptr) { return HEAP8[ptr>>2]; }
function store1(ptr, value) { HEAP8[ptr>>2] = value; }
function load2(ptr) { return HEAP16[ptr>>2]; }
function store2(ptr, value) { HEAP16[ptr>>2] = value; }
function load4(ptr) { return HEAP32[ptr>>2]; }
function store4(ptr, value) { HEAP32[ptr>>2] = value; }
var ENVIRONMENT_IS_FETCH_WORKER = true;
var ENVIRONMENT_IS_WORKER = true;
var ENVIRONMENT_IS_PTHREAD = true;
var __pthread_is_main_runtime_thread=0;
var DYNAMICTOP_PTR = 0;
var nan = NaN;
var inf = Infinity;
function _emscripten_asm_const_v() {}
function assert(condition) {
if (!condition) console.error('assert failure!');
}
Fetch.staticInit();
var queuePtr = 0;
var buffer = null;
var STACKTOP = 0;
var STACK_MAX = 0;
var HEAP8 = null;
var HEAPU8 = null;
var HEAP16 = null;
var HEAPU16 = null;
var HEAP32 = null;
var HEAPU32 = null;
function processWorkQueue() {
if (!queuePtr) return;
var numQueuedItems = Atomics_load(HEAPU32, queuePtr + 4 >> 2);
if (numQueuedItems == 0) return;
var queuedOperations = Atomics_load(HEAPU32, queuePtr >> 2);
var queueSize = Atomics_load(HEAPU32, queuePtr + 8 >> 2);
for(var i = 0; i < numQueuedItems; ++i) {
var fetch = Atomics_load(HEAPU32, (queuedOperations >> 2)+i);
function successcb(fetch) {
Atomics.compareExchange(HEAPU32, fetch + {{{ C_STRUCTS.emscripten_fetch_t.__proxyState }}} >> 2, 1, 2);
Atomics.wake(HEAP32, fetch + {{{ C_STRUCTS.emscripten_fetch_t.__proxyState }}} >> 2, 1);
}
function errorcb(fetch) {
Atomics.compareExchange(HEAPU32, fetch + {{{ C_STRUCTS.emscripten_fetch_t.__proxyState }}} >> 2, 1, 2);
Atomics.wake(HEAP32, fetch + {{{ C_STRUCTS.emscripten_fetch_t.__proxyState }}} >> 2, 1);
}
function progresscb(fetch) {
}
try {
emscripten_start_fetch(fetch, successcb, errorcb, progresscb);
} catch(e) {
console.error(e);
}
/*
if (interval != undefined) {
clearInterval(interval);
interval = undefined;
}
*/
}
Atomics_store(HEAPU32, queuePtr + 4 >> 2, 0);
}
interval = 0;
this.onmessage = function(e) {
if (e.data.cmd == 'init') {
queuePtr = e.data.queuePtr;
buffer = e.data.buffer;
STACKTOP = e.data.STACKTOP;
STACK_MAX = e.data.STACK_MAX;
DYNAMICTOP_PTR = e.data.DYNAMICTOP_PTR;
HEAP8 = new Int8Array(buffer);
HEAPU8 = new Uint8Array(buffer);
HEAP16 = new Int16Array(buffer);
HEAPU16 = new Uint16Array(buffer);
HEAP32 = new Int32Array(buffer);
HEAPU32 = new Uint32Array(buffer);
interval = setInterval(processWorkQueue, 100);
}
}
Morty Proxy This is a proxified and sanitized view of the page, visit original site.