MCPcopy Create free account
hub / github.com/emscripten-core/emscripten / Q

Function Q

test/js_optimizer/wasm2js-output.js:152–219  ·  view source on GitHub ↗
(a, b, c)

Source from the content-addressed store, hash-verified

150}
151
152function Q(a, b, c) {
153 a = a | 0;
154 b = b | 0;
155 c = c | 0;
156 var d = 0, e = 0, f = 0, h = 0, i = 0, j = 0;
157 d = A - 32 | 0;
158 A = d;
159 e = g[a + 28 >> 2];
160 g[d + 16 >> 2] = e;
161 f = g[a + 20 >> 2];
162 g[d + 28 >> 2] = c;
163 g[d + 24 >> 2] = b;
164 b = f - e | 0;
165 g[d + 20 >> 2] = b;
166 e = b + c | 0;
167 i = 2;
168 b = d + 16 | 0;
169 a: {
170 b: {
171 c: {
172 if (!M(y(g[a + 60 >> 2], d + 16 | 0, 2, d + 12 | 0) | 0)) {
173 while (1) {
174 f = g[d + 12 >> 2];
175 if ((f | 0) == (e | 0)) {
176 break c;
177 }
178 if ((f | 0) <= -1) {
179 break b;
180 }
181 h = g[b + 4 >> 2];
182 j = f >>> 0 > h >>> 0;
183 b = j ? b + 8 | 0 : b;
184 h = f - (j ? h : 0) | 0;
185 g[b >> 2] = h + g[b >> 2];
186 g[b + 4 >> 2] = g[b + 4 >> 2] - h;
187 e = e - f | 0;
188 i = i - j | 0;
189 if (!M(y(g[a + 60 >> 2], b | 0, i | 0, d + 12 | 0) | 0)) {
190 continue;
191 }
192 break;
193 }
194 }
195 g[d + 12 >> 2] = -1;
196 if ((e | 0) != -1) {
197 break b;
198 }
199 }
200 b = g[a + 44 >> 2];
201 g[a + 28 >> 2] = b;
202 g[a + 20 >> 2] = b;
203 g[a + 16 >> 2] = b + g[a + 48 >> 2];
204 a = c;
205 break a;
206 }
207 g[a + 28 >> 2] = 0;
208 g[a + 16 >> 2] = 0;
209 g[a + 20 >> 2] = 0;

Callers

nothing calls this directly

Calls 2

MFunction · 0.70
yFunction · 0.50

Tested by

no test coverage detected